Export data into excel
Mostrar comentarios más antiguos
I keep getting this error.....
Index in position 1 exceeds array bounds (must not exceed 1).
Error in IHC_Continous_Quantification (line 28)
xlswrite('Staining.xlsx', percentage, 'B2:B3');
....from this code...
%Initialize
clc
addpath('/Users/benjaminreeves/Desktop/Test');
for i = 1:2
path = dir(strcat('/Users/benjaminreeves/Desktop/Test'));
filename = strcat(['im', num2str(i),'.tiff']);
images = imread(filename);
img = rgb2gray(images);
level = 0.60;
imbw = imbinarize(img, level);
imwrite(imbw, strcat('/Users/benjaminreeves/Desktop/Test/bwim/imbw', num2str(i), '.tiff'));
imtool(imbw);
total_pixels = numel(imbw);
total_white = nnz(imbw);
total_black = (total_pixels - total_white);
percentage = ((total_black/total_pixels)*100);
xlswrite('Staining.xlsx', percentage, 'B2:B3');
sprintf('The pecentage of imaged tissue, im%1.0f, that is stained is %.3f', i, percentage)
end
....I am brand new to coding and just trying to learn! No background at all.
3 comentarios
Bob Thompson
el 5 de Dic. de 2018
I would suggest moving the xlswrite command outside of your loop, and print the entire percentage array at one time. You can capture all of the percentage values into one array by replacing 'percentage' with 'percentage(i)'.
Benjamin Reeves
el 5 de Dic. de 2018
Bob Thompson
el 5 de Dic. de 2018
Editada: Bob Thompson
el 5 de Dic. de 2018
Is 'filename' being opened correctly? Can you use xlsread, or fopen on 'filename' and get something useful out of it?
What exactly do you mean by 'opened a new sheet'? Did you make a new sheet in the excel file? If so, you need to specify that is the sheet you want to use.
Do you have the file open already? I don't think this should cause too much of a problem, but it's possible.
Is 'percentage' actually an array of doubles? I assume it is, but I haven't specifically run your code, so I can't check these things myself.
Respuestas (1)
Steven Remington
el 10 de Dic. de 2018
0 votos
You may have accidentally created a variable called 'xlswrite' and thus it thinks you are trying to reference the variable, not the function. Try running the following command then rerun your code:
>> clear xlswrite
Categorías
Más información sobre Data Type Identification en Centro de ayuda y File Exchange.
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!