少废话,直接上代码
>> A = 1:6
>> B = reshape(A,[2,3])
A =
1 2 3 4 5 6
B =
1 3 5
2 4 6
reshape()是按照列方向的
但是我们想要的并不是这种效果
1 3 5
2 4 6
而是下面(反而按照行方向存储)
1 2 3
4 5 6
首先就得把B = reshape(A,[2,3]) 的行列颠倒 如下:
>> B = reshape(A,[3,2])
B =
1 4
2 5
3 6
>> C =B'
C =
1 2 3
4 5 6
由于我的实验数据量比较大,一开始竟然没发现,刚入Matlab的,没想到有这么多坑!!!
二维数组‘按行展开’。
>>a=[1 2 3; 4 5 6; 7 8 9]
a =
1 2 3
4 5 6
7 8 9
转置一下
>> C = a'
C =
1 4 7
2 5 8
3 6 9
>> B = C(:)
B =
1
2
3
4
5
6
7
8
9
>>