一次性使用名称列表保存多个变量

时间:2019-05-14 09:55:11

标签: matlab optimization save cell-array mat-file

我正在尝试将工作区中的变量列表保存到.mat文件中。我遇到的问题是我正在尝试为其创建函数,并且该函数应该能够处理要保存的变量列表。我可以循环如下:

vars = {'a','b','c'}; % names of variables
for k = 1:numel(vars)
    save(filename,vars(k),'-append');
end

但这对我来说并不优雅,并且标记-append减慢了该过程。 我正在尝试实现以下目标:

vars = {'a','b','c'}; %names of variables
save(filename,vars);

这可能吗?

1 个答案:

答案 0 :(得分:3)

由于save希望每个变量名都作为单独的输入参数,因此您可以使用从单元格数组生成的comma-separated list

save(filename, vars{:})