我在MATLAB中解析多个文本文件,每次我将结果存储在主数组中,但数据大小不一样的问题! 例如:
t(i,:) = x;
% x data array from file i
例如:
t(1,:) = [ 5 4 3 2 1];
t(2,:) = [ 10 9 8 7 6 5];
t(3,:) = [ 11 12 13 14];
x的大小不同,我如何在数组中存储这些数据(动态大小)!
谢谢,
答案 0 :(得分:2)
你可以将它存储在像这样的单元格数组中:
t{1} = [ 5 4 3 2 1];
t{2} = [ 10 9 8 7 6 5];
t{3} = [ 11 12 13 14];
并像这样使用它们:
>> t(1)
ans =
[1x5 double]
>> t{2}
ans =
10 9 8 7 6 5
>> t
t =
[1x5 double] [1x6 double] [1x4 double]
>> t{:}
ans =
5 4 3 2 1
ans =
10 9 8 7 6 5
ans =
11 12 13 14
>> t{2}(1,2)
ans =
9
>> t{2}(1,2:end)
ans =
9 8 7 6 5
答案 1 :(得分:1)
您可以使用单元格数组来保存各种大小的数字数组。例如
rows_cell = {};
rows_cell{1} = [ 5 4 3 2 1];
rows_cell{2} = [ 10 9 8 7 6 5];
rows_cell{3} = [ 11 12 13 14];
访问数据:
rows_cell{2}(1,2)
ans =
9
rows_cell{3}(1,4)
ans =
14