是否可以在函数内部使用 Matlab save 命令来存储工作区变量?
考虑以下场景:我在 Matlab 工作区中有一堆变量,并且想要在 .mat 文件中以“a”和“b”开头的所有变量。这当然有效:
save('test.mat','a*','b*')
但我想要一个可变的文件名。我写的函数:
function save_with_name(name)
save(name,'a*','b*')
不起作用,因为 save_with_name 看不到工作区变量。有我可以使用的解决方案吗?
最佳答案
您需要在基础工作区中评估保存
。
function save_with_name(name)
expression = ['save(''', name, ''',''a*'',''b*'')'];
evalin('base',expression);
表达式中的双引号 ('') 是允许引用字符本身 (') 所必需的。 因此,您正在寻找的命令是:evalin
关于matlab - 使用 matlabs 保存函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8152740/