matlab中reshape函数的用法
1.就是变换成特定维数的矩阵
2.是按照列的顺序进行转换的,也就是第一列读完,读第二列,下面请看具体例子:
A =
1 4 7 102 5 8 11
3 6 9 12
B = reshape(A,2,6)
B =
1 3 5 7 9 11
2 4 6 8 10 12
B = reshape(A,2,[])
B =
1 3 5 7 9 11
2 4 6 8 10 12
3.reshape(X,M,N,P,...), 特别的,reshape(X,M,N,P)也就是把X改写成MXN个单独的矩阵,而此时这样的矩阵恰好为P个,对于一般的MXNXPX....=prod(size(X)),一定要保持元素的一致性。。
4.reshape(X,...,[],...)
指定某维数后,剩余的维数长度值用占位符[]来表示,使得维数的乘积等于prod(size(A))。
指定某维数后,剩余的维数长度值用占位符[]来表示,使得维数的乘积等于prod(size(A))。
5.
reshape(X,...,[],...)
指定某维数后,剩余的维数长度值用占位符[]来表示,使得维数的乘积等于prod(size(A))。
6.reshape 主要对于数组就行形式上的改写,这里需要注意的是这里数组之间的元素是没有变化的。matlab 尽量少用for循环,多用矩阵或者向量的方式来处理。