对于m×m(正方形)数组,如何将所有行连接到大小为m ^ 2的列向量中?
2 回答
偶然的你
TA贡献1841条经验 获得超3个赞
有几种不同的方法可以将矩阵折叠成一个向量,具体取决于您希望矩阵的内容如何填充该向量。这是两个示例,一个示例使用函数reshape
(在首先转置矩阵之后),另一个示例使用冒号语法 (:)
:
>> M = [1 2 3; 4 5 6; 7 8 9]; % Sample matrix>> vector = reshape(M.', [], 1) % Collect the row contents into a column vectorvector = 1 2 3 4 5 6 7 8 9>> vector = M(:) % Collect the column contents into a column vectorvector = 1 4 7 2 5 8 3 6 9
智慧大石
TA贡献1946条经验 获得超3个赞
在将矩阵更改为向量时,一个非常重要的注意事项是,如果您使用MATLAB,则MATLAB会从矩阵的列生成输出向量 A(:)
例如 :
A = [1 2 3 ; 4 5 6]B = A (:)B = [1 4 2 5 3 6]
您可以在下图中看到更改的方向。
添加回答
举报
0/150
提交
取消