在不使用循环的情况下一次性从名称列表中保存多个变量
Save multiple variables from a list of names in one go without using loop
我正在尝试将工作区中的变量列表保存到 .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);
这可能吗?
因为 save
expects each variable name as a separate input argument, you can use a comma-separated list 从元胞数组生成:
save(filename, vars{:})
我正在尝试将工作区中的变量列表保存到 .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);
这可能吗?
因为 save
expects each variable name as a separate input argument, you can use a comma-separated list 从元胞数组生成:
save(filename, vars{:})