MATLAB的reshape函数

用法一

MATLAB的reshape函数

作用是将4*6的A,变成6*4的B,数据排列规则:对A逐列扫描,对B逐列填充,也就是先处理完第一列,在处理第二列,再第三列。。。

MATLAB的reshape函数

用法二

MATLAB的reshape函数

MATLAB的reshape函数
A是4*6的,C是2*3*4的,都有24个元素,变换前后的矩阵元素个数一样

总结

reshape函数总是将原矩阵A,重组为新矩阵B,这里A、B元素个数需相同。重组的规则如下:
总是先处理低维的,再处理高维的,比如要把4*6的A变为6*4的B,就要先扫描A的第一列,扫描过程中行数不断发生变化,列数隔一段时间变化一次,这就是前面说的:先处理低维再处理高维(行是低维,列比行高一维)

因此,把4*6的A变为4*3*2的C,扫描和赋值所遵循的规则就是:低维坐标先改变,高维坐标后改变