Effacer les filtres
Effacer les filtres

Reading multiple number of an EXCEL file without knowing number of rows and columns

2 vues (au cours des 30 derniers jours)
Hello, in the code below i have to specify the range for columns but i have 100 set of excel files in that with different column length so how to specify in that case
[~, ~, raw]= xlsread(fullFileName,'Results','B3:1000');

Réponse acceptée

Jeff Johnson
Jeff Johnson le 2 Avr 2014
Assuming the data you are interested in is always in column B:
[~,~,raw]=xlsread(fullFileName,'Results','B:B'); % reads all rows in Column B
raw(any(cellfun(@(x) any(isnan(x)),raw),2),:) = []; % removes all NaN entries
This code will leave you with a cell array with the raw data for all non-empty cells in column B. As written it will read all of the rows (65,536 of them!) in each file. If you know the maximum number of non-empty rows in all files (say 1500), you could speed this up by replacing 'B:B' with 'B1:B1500'.
This thread contains more information about deleting rows with NaN entires.
  3 commentaires
Yogesh Babu
Yogesh Babu le 3 Avr 2014
Modifié(e) : Yogesh Babu le 3 Avr 2014
Hello ,
After this I would like to plot them but that is not working in plotting them.Have a look and tel me the solution for this problem
[~,~,raw]=xlsread(fullFileName,'Results','B:B'); % reads all rows in Column B raw(any(cellfun(@(x) any(isnan(x)),raw),2),:) = []; % removes all NaN entries Blob = data(:,1); Area = data(:,2); clearvars data raw; h=bar(Area);figure(gcf);
Jeff Johnson
Jeff Johnson le 4 Avr 2014
Hi Yogesh,
What is the data variable you are referencing? Can you also include the error message returned when you try to plot these data?

Connectez-vous pour commenter.

Plus de réponses (0)

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by