在Matlab中使用函数内部的变量名



我正试图将一个名为"寿命"的列添加到我的工作区中名为"options_200208"的数据集中。

我需要通过一个循环多次这样做(因为有多个表)

我的问题是,我需要插入"名称",并让matlab将其处理为"options_20020208":

Name = options_20020208

Start = cellstr(Name(:,5))
End = cellstr(Name(:,3))
Start = datenum(Start)
End = datenum(End)
Lifespan = wrkdydif(Start,End)
Name.Lifespan = nominal(Lifespan)

我需要让它使得matlab读取上面的代码被读取为:

Start = cellstr(options_20020208(:,5))
End = cellstr(options_20020208(:,3))
Start = datenum(Start)
End = datenum(End)
Lifespan = wrkdydif(Start,End)
options_20020208.Lifespan = nominal(Lifespan)

我知道,这是一个相当基本的问题。。但我是个新手,不知道该怎么做。

任何建议都会有帮助!!

Name_string = 'options_20020208';
eval([Name_string,'.Lifespan = nominal(Lifespan);']);

为了获得更好的答案,请在实际代码中显示定义名称的确切行。

最新更新