所以我在MATLAB工作区中有很多文件都采用相同的格式,
" project1day1"," project1day2"而不是将它们全部放在同一个工作区中,我希望将它们保存为具有相同名称的各自的.mat文件。
所以,我想要" project1day1"工作区中的变量转到" project1day1.mat"文件。
我有7个项目,除了项目1之外的所有项目都有3个"天"。我无法执行确切的语法来执行此操作。我想以一般方式遍历我的工作区数据。我想按照以下方式执行某些操作:
maxdays=3;
maxprojects=7;
for i = 1:maxprojects;
for j = 1:maxdays;
save('project%dday%d','project%dday%d,i,j,i,j)
end
end
两件事:
1)保存选项不起作用
2)我需要包含某种~if(存在' ...')用于没有第3天的情况,但我在做的时候遇到了麻烦所以。
答案 0 :(得分:2)
正如rayryeng所写,我认为在大多数情况下,将变量保存在一个文件中,或者(你写的都是相同的格式)使用结构或单元格数组会更好,这样会更容易稍后访问它们。
如果您确实需要将工作区中的所有变量保存为单独的文件,可以执行以下操作:
vars = who;
for i=1:length(vars)
save([vars{i} '.mat'], vars{i});
end
但是,如果不是(出于某种原因)绝对必要,我也不会这样做!