matlab中如何把字符串设置为变量名

如题所述

上面的回答很正确了,无非就两个办法:
1)就是把目录底下所有的mat文件都提取出来
file_name
=
dir('*.mat');
除开file_name(1).Name和file_name(2).Name是.和..外,其他都是mat文件名。
2)就是连续load,每次改变file_name
for
i
=
1:13
name
=
['Data1_Al_',num2str(i),'__U'];
load
name;
%
your
code;
end
还有一个很笨的办法,就是load了以后,用eval(s)来执行一次,顺便赋值。。(s是命令行)
温馨提示:答案为网友推荐,仅供参考
第1个回答  2019-08-15
1.
eval:把字符串当命令来执行
例子:
>>
namesource=[10
20
30];
for
i=1:3
name=['varname',num2str(i)];
eval([name,'=namesource(i)'])
end;
varname1
=10
varname2
=20
varname3
=30
2.
加小括号(只适用于结构struct)
结构体的域名field,字符串可以加小括号转换成域名,例:
>>
a=['www',num2str(1)];
>>
b.(a)=10
b
=
www1:
10
变量名转换成字符串
who返回变量名,例:
>>
a1=123;a2=1234;a3=444;>>
b=who('a*')
%返回的b是cell结构的b
=
'a1'
'a2'
'a3'
相似回答