2016-04-24 57 views
0

在下面的代码中,我生成一个随机的8×5矩阵,然后创建一个新的矩阵'temp',A被重构为temp = reshape(A',r*c,1);。然后我对temp进行一些操作(但保持尺寸为40 x 1)。你现在如何重组'temp'来取回维数为A的矩阵(即现在恢复到8×5矩阵)?重构矩阵以得到原始矩阵

谢谢。下面是代码,我到目前为止有:

A = randi(10,8,5); 
[r c] = size(A); 
temp = reshape(A',r*c,1); 

回答

3

既然你从reshape操作构建temp矩阵AA')的转置,你可以简单地通过一个额外的重新变换回原来的A形式reshape操作适用于temp,但行和列计数分别为rc,分别应用“反向”(分别为列和行计数),然后最终转置所得到的整形矩阵。

%// ... perform some manipulations (not affecting size) of temp 

%// restructure back to the form of A 
backToAForm = reshape(temp,c,r)'