我有一个矩阵如下:
A= 1 2
3 4
5 6
7 8
Run Code Online (Sandbox Code Playgroud)
我想以这样的方式排列这个矩阵的元素,它会给我以下输出:
B= 1
2
3
4
5
6
7
8
Run Code Online (Sandbox Code Playgroud)
任何建议都会有所帮助.谢谢!
进行转置A并将其展开到一个向量中:
B = A.';
B = B(:);
Run Code Online (Sandbox Code Playgroud)
或者,您可以使用reshape:
B = reshape(A.', [], 1);
Run Code Online (Sandbox Code Playgroud)
首先转置矩阵的原因A是因为MATLAB以列主格式展开,这意味着首先遍历列.您正试图按行进行此操作,因此您需要转置输入以实现相同的效果.
这是输出的样子(使用两者):
>> A= [1 2
3 4
5 6
7 8];
>> B = A.';
>> B = B(:);
>> B
B =
1
2
3
4
5
6
7
8
Run Code Online (Sandbox Code Playgroud)
也:
>> A= [1 2
3 4
5 6
7 8];
>> B = reshape(A.', [], 1)
B =
1
2
3
4
5
6
7
8
Run Code Online (Sandbox Code Playgroud)