从n ^ 2 x 1列矩阵堆叠n×n矩阵

时间:2016-04-27 16:33:02

标签: matlab

对于5 x 10矩阵,我想以这样的方式堆叠矩阵:原始矩阵的每一列将被附加到行,最终以50 x 1矩阵结束。基本上将列堆叠成1列。感谢。

这是矩阵的开始:

RR = randi(5,5,10);

1 个答案:

答案 0 :(得分:3)

对于一般整形操作,请使用reshape,例如:

reshape(RR,[],1)

根据需要,将数组RR重新整形为具有不确定行数([])和1列的数组。

您的特定情况可以在评论中使用@beaker提到的快捷方式

RR(:)

此语法等同于上面的reshape命令,只需在一列中列出数组的所有元素。

这两个例子都利用了Matlab使用面向列的存储和索引这一事实。如果由于某种原因,您需要连接行而不是列,则需要首先转置RR数组。例如:

reshape(RR', 1, [])  %This concatenates the rows of RR into a single row. Note the transpose operator.