作者diva (Tremendo!)
看板MATLAB
标题Re: [讨论]矩阵分解 用for loop
时间Mon May 21 22:15:58 2012
% 建立你原文说的矩阵
M=1:16 ;
M=reshape(M,4,4) ;
% 把每个2*2矩阵的第1项提出
A=M(1:2:end,1:2:end) ;
A=reshape(A,1,numel(A)) ;
% 把每个2*2矩阵的第2项提出
B=M(2:2:end,1:2:end) ;
B=reshape(B,1,numel(B)) ;
% 把每个2*2矩阵的第3项提出
C=M(1:2:end,2:2:end) ;
C=reshape(C,1,numel(C)) ;
% 把每个2*2矩阵的第4项提出
D=M(2:2:end,2:2:end) ;
D=reshape(D,1,numel(D)) ;
% 重新整理为一个比较好求平均值的矩阵
MM=[A;B;C;D] ;
% 求平均
mean(MM)
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 59.115.98.36
1F:→ diva:8*8的矩阵应该也可以用 05/21 22:20
2F:→ diva:如果你一定要用loop请再回报 05/21 22:21
3F:推 simon0216117:感谢diva的解惑,不过是一个100*100以上的矩阵,我想要 05/22 00:29
4F:→ simon0216117:需用loop吧!我已经改成此形式,A=magic(4), 05/22 00:31
5F:→ simon0216117:B=reshape(A,2,[]),可分成奇数列行和偶数行,在整理合 05/22 00:32
6F:→ simon0216117:并,不过还没写出来,还是要写出loop才行,谢谢你的帮! 05/22 00:33