我想将q
的{{1}}的结果保存在case_no
的相应字符串中作为.mat文件。使用我的q_cases
语句即使文件的名称作为save(q_cases{case_no},'q')
的相应字符串出现,但是所有这些.mat文件都包含具有相同名称q_cases
的变量。当我打开那些.mat文件时,我得到一个名为q
的变量,用于所有3个文件。但是,我希望这些文件中存储的变量名称与文件名相同,分别为q
,q_a
和q_b
。
答案 0 :(得分:4)
解决此问题的一种方法是使用eval指定变量名称。
修改强>
通常不建议使用Eval,因为它很难调试/维护。因此,您可以先创建一个结构并使用-struct
-option of save,如下所示:
for case_no=1:length(n)
[q,S]=q_from_A(nModel,nModel_want,nCell,T,A{case_no},B{case_no},C{case_no},D{case_no},E{case_no},F{case_no});
%# create structure for saving
saveStruct = struct(q_cases{case_no},q,...
S_cases{case_no},S);
%# ... and save it
save(q_cases{case_no},'-struct','saveStruct',q_cases{case_no});
save(S_cases{case_no},'-struct','saveStruct',S_cases{case_no});
end