matlab如何将一个字符串转化为一个变量名?

如题
a='aea'
b=1
如何得到结果aea=1
有没有matlab高手帮帮忙,很急,在线等结果,解决了会再给奖励的....

楼上的回答欠妥。

用eval函数没错,但按照楼上的用法,适应性很差,比如b是其它数据类型的,例如struct或cell之类的呢?而且使用num2str这类函数本身还存在有效数字导致的精度损失问题。

其实正确的用法非常简单:
eval([a '=b;'])
可以原汁原味的把b赋值给a所保存的变量名中,没有任何精度损失,且适用于任意数据类型。
温馨提示:内容为网友见解,仅供参考
第1个回答  2018-03-31

    eval([a '=b;'])

    可以原汁原味b赋值给a所保存变量名,没有任何精度损失,且适用于任意数据类型

    连续load,每改变file_name
    for i = 1:13
    name = ['Data1_Al_',num2str(i),'__U'];
    load name;
    % your code;

    load用eval(s)执行顺便赋值(s命令行)

    比C/C++简单很多,直接一个命令行搞定,如下: >> str = 'abc' str = abc

本回答被网友采纳
第2个回答  2012-11-27
a='aea';
b=1;
eval([a,'=',num2str(b)])追问

您好
如果b是一个数组呢,很多的元素,这里假设5个.
b=[1 2 3 4 5];
如何将他附给aea呢?

追答

>> a='aea';
b=[1 2 3 4 5];

eval([a,'=',mat2str(b)])

aea =

1 2 3 4 5

第3个回答  2012-11-27

在matlab中如何将一个字符串转化为一个变量名?
可以原汁原味b赋值给a所保存变量名,没有任何精度损失,且适用于任意数据类型。连续load,每改变file_namefor i = 1:13name = ['Data1_Al_',num2str(i),'__U'];load name;% your code;load用eval(s)执行顺便赋值(s命令行)比C\/C++简单很多,直接一个命令行搞定,如下: >> str = 'abc' ...

matlab如何将一个字符串转化为一个变量名?
可以原汁原味的把b赋值给a所保存的变量名中,没有任何精度损失,且适用于任意数据类型。

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 还有一个很...

Matlab中如果我定义了一个字符型的,怎么让他去做矩阵变量
temp1=strcat('Sm',num2str(char_j));这样有了一个字符串 "Sm1", 现在要把它变成一个变量,并且给他赋值 X =[1 2 3 ; 4 5 6] %先把要赋给Sm1的值放在X中 eval([temp1 '=X']);这样就有了一个叫做Sm1的变量,并且值为[1 2 3;4 5 6]

matlab 中如何将一个字符串赋值给一个变量
单个表示直接输入:y=syms x x不管是什么型的都会变成字符串赋值给y。整体一个符号变量:y=sym('表达式')如果觉得好,别忘记采用哦。。。

MATLAB中,怎么用一个字符串去命名一个新的变量,比如struct?
eval(['f',num2str(t.frequency),'.','data','=','1'])不客气,给悬赏吧~

matlab如何把一个字符串作为变量名引用已存在变量
A = 'VarA';mean(eval(A))

matlab 中 如何实现将字符串变量的值作为新的变量名
a=magic(3);for n = 1:2 eval(['set' num2str(n) ' = a'])end

matlab 从文件 读字符串给一个向量
第二种比较方便 fid=fopen('1.txt','r');c=textscan(fid,'%s');c=char(c{1})fclose(fid);

用MATLAB编程 输入一字符串,编写程序实现如下功能: 1)将字符串的内容颠...
用MATLAB编程输入一字符串,编写程序实现如下功能: 1)将字符串的内容颠倒过来并进行输出。如:“abc”改为“cba”。 2)统计输入文本中单词的个数,单词之间用空格符、换... 用MATLAB编程输入一字符串,编写程序实现如下功能: 1)将字符串的内容颠倒过来并进行输出。如:“abc”改为“cba”。 2)统计输入文本中单词...

相似回答