【发布时间】:2014-01-27 06:05:55
【问题描述】:
我有一个包含许多文件的文件夹,名为:
filename_1.mat
filename_2.mat
.
.
.
filename_n.mat
每个文件都包含一个名为 Var 的数据集,具有相同的列。我想将所有这些数据集加载到工作区并使用vertcat() 垂直连接它们,但是当我在for循环中加载它们时,我只得到最后一个数据集,因为变量Var 被覆盖。这些数据集是在 for 循环中创建的:
% generate filenames
tss = arrayfun(@(x){sprintf('filename_%d',x)},1:(length(1:3)))';
namerr = cell((length(1:3)),1);
namerr(:,1) = {'E:\FILES\'};
file_names = strcat(namerr,tss,'.mat');
% create datasets and save them to E:\FILES
for ii = 1:3
a = rand(1,5)';
b = rand(1,5)';
Var = dataset({[a,b],'a_name','b_name'});
save(file_names{(ii)},'Var','-v6')
end
% Now read these datasets into workspace and concatenate vertically??
% Is there a way for me to name the datasets `Var_1...Var_n`
% so they are not overwritten?
【问题讨论】: