Importing xlsx files - columns of unknown length
5 visualizzazioni (ultimi 30 giorni)
Mostra commenti meno recenti
I am currently attempting to plot 4 graphs from the results of multiple trials (an example of 4 trial file names shown below). My main issue is (I believe) that columns A and B are not the same size for all of the files. I am commonly faced with 'Subscripted assignment dimension mismatch'. I am very new to Matlab, and have had some help so far getting to the stage I am at, really need some help to quickly process some data
Any help is much appreciated.
filename = {'T1_B1_P4_R1_I2_ER1_EX3_S_3.xlsx';...
'T1_B2_P4_R1_I2_ER1_EX3_S_3.xlsx';...
'T1_B3_P4_R1_I2_ER1_EX3_S_3.xlsx';...
'T1_B4_P4_R1_I2_ER1_EX3_S_3.xlsx'};
col = {'r','g','b','k'};
figure;
hold on;
for i = 1:length(filename)
data(:,2*i-1:2*i) = xlsread(filename{i}, 2, 'A1:B400');
temp = data(:,2*i-1:2*i);
hold on
plot(data(:,2*i),data(:,2*i-1),col{i});
end
0 Commenti
Risposte (2)
Image Analyst
il 6 Ott 2014
Don't use indexes, just suck up the whole thing:
data = xlsread(filename{i}, 2, 'A1:B400');
It will resize data each time to be the size it needs to be.
6 Commenti
Image Analyst
il 7 Ott 2014
No problem. You're welcome. If we're done here, could you go ahead and officially mark it as Accepted? Thanks.
Sean de Wolski
il 6 Ott 2014
The problem is that you're storing this all in one array when different columns might have different sizes.
Instead, create data to be a cell array (a container) and have each excel file stored as one element in it.
data{ii} = xlsread(etc)
temp = data{ii}
plot(temp ... etc )
Now each element of data can be variably sized.
0 Commenti
Vedere anche
Categorie
Scopri di più su Creating, Deleting, and Querying Graphics Objects in Help Center e File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!