如何用循环的名字创buildvariables
我需要从Excel电子表格导入某些列到Matlab中,并将结果保存在一个数组中。
例如,假设我有一个3×1单元arrays,元素是'USD'
, 'EUR'
和'GBP'
等string。
如果我想从networking共享上的3个独立的电子表格中导入数据,并将数据分别存储在名为'InitialUSD'
, 'InitialEUR'
和'InitialGBP'
。
任何关于如何获得数组名称链接到单元格数组中的值的指导?
你可能想要这样的东西:
currencies = {'USD' 'EUR' 'GBP' }; for index=1:length(currencies) assignin('caller',['Initial' currencies{index}],1:index); end
在这个例子中,我给variables赋了一个向量(1:index),但显然在你的情况下,你会分配excel数据(大概是你用xlsread读的)。
你在问什么如何在循环中创buildvariablesA1,A2,…,A10? 那么,答案是不要这样做…然而,你可以做这样的事情:
for k=1:3 InitialUSD{k} = xlsread (%spreadsheet nb. k%); end
假设您使用xlsread
从Excel中导入数据。 replace%spreadsheet nb. k%
%spreadsheet nb. k%
通过xlsread
函数的正确参数。
我认为这是一个简单的方法来做到这一点:
- 从excel文件中读取所有内容
- 比较标题行中的信息和你感兴趣的信息
- 基于此,select您想要的数据。
用这种方法,你可以得到一个名字列表,以及一个具有匹配数据的数组。
我总是build议这个给variables名称本身。