reshape就是把指定的矩阵改变形状,但是元素个数不变,
例如,行向量:
a = [1 2 3 4 5 6]
执行下面语句把它变成3行2列:
b = reshape(a,3,2)
执行结果:
b =
1 4
2 5
3 6
扩展资料:
调用格式说明
B = reshape(A,m,n)
返回一个m*n的矩阵B, B中元素是按列从A中得到的,如果A中元素个数没有m*n个, 则会引发错误。
B = reshape(A,m,n,p,...)和B = reshape(A,[m n p ...])
返回一个和A具有相同元素的N(不是上面的参数n)维数组,但B的尺寸是m*n*p*...,m*n*p*...必须和prod(size(A))相等,即A和B元素个数相等。
参考资料来源:百度百科-reshape
给你个例程吧:
x=[1,2,3;4,5,6];
y=reshape(x,1,[]);
z=reshape(x,3,2);
最后结果:
x=1 2 3
4 5 6
y=1 4 2 5 3 6
z=1 5
4 3
2 6
matlab里面矩阵是按列存储的,即先存第一列,然后第二列....