我在一个文件夹中有大量(+100)文件,我想将它们全部放在matlab中的单个数组中,我该怎么做?
提前致谢!
答案 0 :(得分:0)
从OP任务+评论
中可以看出
Loop over all filenames:
import data, as needed, from current file into a MATLAB aCurrentArrayC1; import data, as needed, from current file into a MATLAB aCurrentArrayC2; aCollectionOfC1s = [aCollectionOfC1s ; aCurrentArrayC1]; %% case of VSTACK-ing aCollectionOfC1s = [aCollectionOfC1s , aCurrentArrayC1]; %% case of HSTACK-ing aCollectionOfC2s = [aCollectionOfC2s ; aCurrentArrayC2]; %% case of VSTACK-ing aCollectionOfC2s = [aCollectionOfC2s , aCurrentArrayC2]; %% case of HSTACK-ing
end %% next file
答案 1 :(得分:0)
假设:您的电子表格是一维的,您正在尝试构建一维数组。
这就是我接近它的方式:
首先将文件放入单个文件夹,例如'XLS'。我从i = 3开始,因为dir()的前2个索引是“。”和“......”;你需要一个数组来附加tempData,所以我将第一个文件放入mydata并将tempdir附加到每个其他文件。
Function import_spreadsheets
listXLS = dir(path to xls folder);
for i = 3 : length(listXLS)
filename = strcat([path to xls folder], filesep, listXLS(i).name);
if(i==3)
mydata = xlsread(filename, sheet, xlRange);
else
tempData = xlsread(filename,sheet,xlRange);
mydata = cat(2, mydata, tempData);
end
end
end
cat()中的数字取决于您设置电子表格的方式。有关cat()的更多信息,请查看here。