【发布时间】:2021-01-08 00:07:24
【问题描述】:
我有一个包含两列的简单 Excel 表格。将表导入 MATLAB 后,我希望将第 1 列中的名称声明为具有第 2 列中相应值的变量。
所以在 MATLAB 中,它看起来像这样:
House = "Villa"
Street = "Grand avenue"
Number = 88
Country = "US"
下面的例子:
如何做到这一点?
【问题讨论】:
我有一个包含两列的简单 Excel 表格。将表导入 MATLAB 后,我希望将第 1 列中的名称声明为具有第 2 列中相应值的变量。
所以在 MATLAB 中,它看起来像这样:
House = "Villa"
Street = "Grand avenue"
Number = 88
Country = "US"
下面的例子:
如何做到这一点?
【问题讨论】:
我会使用assignin 来做这样的事情:
function assignin_me(name, value)
assignin('caller', name, value)
end
然后你可以遍历你的表 t 喜欢:
for i = 1:size(t,1)
assignin_me(t{i,1}, t{i,2});
end
但无论如何,我也会重新考虑将这些值直接存储在变量中。将它们粘贴在结构中的字段中可能会更好:
s = struct;
for i = 1:size(t,1)
s.(t{i,1}) = t{i,2};
end
【讨论】: