我需要将 Excel 电子表格中的某些列导入 Matlab 并将结果保存在数组中。
例如,假设我有一个 3x1 元胞数组,元素是字符串,如'USD'
,'EUR'
和'GBP'
.
如果我想从网络共享上的 3 个单独的电子表格中导入数据,并将每个电子表格中的数据分别存储在名为和'InitialUSD'
的数组中。'InitialEUR'
'InitialGBP'
关于如何将数组名称链接到单元格数组中的值的任何指导?
你可能想要这样的东西:
currencies = {'USD' 'EUR' 'GBP' };
for index=1:length(currencies)
assignin('caller',['Initial' currencies{index}],1:index);
end
在示例中,我为变量分配了一个向量(1:index),但显然在您的情况下,您将分配 excel 数据(大概是您正在使用 xlsread 阅读)。
您要问的是如何在循环中创建变量 A1、A2、...、A10?然后,答案是不要这样做......但是你可以这样做:
for k=1:3
InitialUSD{k} = xlsread (%spreadsheet nb. k%);
end
假设您正在使用xlsread
从 Excel 导入数据。替换%spreadsheet nb. k%
为xlsread
函数的正确参数。
我认为这是一种简单的方法:
这样,您最终可以得到一个名称列表,以及一个具有相同顺序的匹配数据的数组。
我总是建议这样做,而不是自己给变量名称。