我有一个数据集,其中包含 1 列中的所有数据。然而,每n行出现一个新的子数据集。使用 MATLAB,我需要获取每个子数据集并放置在单独的顺序列中。例如,这个:
第 1 列
1
3
2
1
3
2
1
3
2
进入这个:
第 1 栏 | 第 2 栏 | 第 3 栏 | ...
1 1 1
3 3 3
2 2 2
我有一个数据集,其中包含 1 列中的所有数据。然而,每n行出现一个新的子数据集。使用 MATLAB,我需要获取每个子数据集并放置在单独的顺序列中。例如,这个:
第 1 列
1
3
2
1
3
2
1
3
2
进入这个:
第 1 栏 | 第 2 栏 | 第 3 栏 | ...
1 1 1
3 3 3
2 2 2
您可以reshape
像这样使用命令:
my_matrix = reshape(my_vector, num_rows, num_cols);
您还可以num_cols
将上面的替换[]
为让 MATLAB 自动计算需要多少列才能将数据放入num_rows
行中。同样,您可以替换num_rows
为[]
并让 MATLAB 计算出将数据放入num_cols
列所需的行数。
my_vector
请注意,如果不包含确切 num_rows * num_cols
的元素,MATLAB 将引发错误。换句话说,如果大小不匹配,它不会用零填充或截断您的数据。