How do I import data files to column vectors in a loop?
12 visualizzazioni (ultimi 30 giorni)
Mostra commenti meno recenti
Hello,
I'm trying to import some data from different .xlsx files into column vectors in Matlab. All files look the same, only the values are different.
Right now Matlab only shows me one vector of each (A,B,C,D,..). I need to have the vectors A,B,C,.. for all files that I read. For example A1,A2,A3,B1,B2,B3,...
Can anyone help me?
Thanks in advance!
---------------------------------
In the code below I make use of a Matlab generated code to import the file into a column vector.
numFiles = 3;
range = 'A1:G100';
sheet = 1;
for fileNum = 1:numFiles
fileName = sprintf('document%1d.xlsx',fileNum);
[A,B,C,D,E,F,G] = importfile(fileName,sheet,range);
end
0 Commenti
Risposta accettata
Michael Haderlein
il 5 Mar 2015
I don't know your importfile function, but in general you can do it the following way:
for fileNum = 1:numFiles
fileName = sprintf('document%1d.xlsx',fileNum);
[A(:,fileNum),B(:,fileNum),C(:,fileNum),D(:,fileNum),E(:,fileNum),F(:,fileNum),G(:,fileNum)] = importfile(fileName,sheet,range);
end
Più risposte (1)
Stephen23
il 5 Mar 2015
Modificato: Stephen23
il 5 Mar 2015
numFiles = 3;
range = 'A1:G100';
sheet = 1;
for k = 1:numFiles
fileName = sprintf('document%1d.xlsx',k);
[A{k},B{k},C{k},D{k},E{k},F{k},G{k}] = importfile(fileName,sheet,range);
end
You can access the data using the same cell array indexing, e.g. to refer to the A data from the fourth file use this:
A{4}
In case you were wondering, it is considered poor practice to dynamically name variables like name1, name2, name3, etc. See this for an explanation of why:
Vedere anche
Categorie
Scopri di più su Standard File Formats 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!