我有一个数据集,其中包含 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
,MATLAB 将引发错误不包含完全 num_rows * num_cols
元素。换句话说,如果大小不匹配,它不会用零填充或截断数据。
关于matlab - 从单列数据集中提取行 block 以分隔连续列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24235487/