我有一个需要读入matlab的文本文件。我想使用结构在 Matlab 中实现类似 java LinkedHashMap 的东西。我的文本文件是这样的
3-1 33.33 37.58
3-1 66.67 20.47
3-2 33.33 41.64
3-2 66.67 24.42
我将整个文件读入数组[a,x,y]
,其中 a 是包含 3-1 ad 3-2 的单元格数组
我需要结构的字段名称为 a(1) 或 a(2) 但不幸的是 matlab 给了我错误。原因是我需要检查例如 a(1) 是否已经是结构字段名称,我将值连接到以前的值;如果没有,请使用尊重的值创建一个新的字段名称。代码是:
[a,x,y]=textread('mytxt.txt', '%q%f%f','commentstyle','matlab');
s.a(1)=[x(1),y(1)];
for j=2:length(a)
if isfield(s,a(1))==0
s.a(j)=[x(j),y(j)];
else
temp = s.a(j);
C = concat(1,temp,[x(j),y(j)];
s.a(j) = C
end
end