作者purplehui (生命的強度表現在不依賴)
看板MATLAB
標題[討論] 矩陣變向量
時間Tue Oct 8 15:13:17 2013
大家好
我有一個P-Value的矩陣
也就是上三角跟下三角重複,對角線為0
但我想把重複的值跟對角線拿掉
剩下的元素變成向量
拿10*10的矩陣來說,就是變成45*1的向量
我用2個for迴圈來寫:
k=1
n=45
for i=1:n;
for j=i+1:n;
p[k]=C(ij); %C為矩陣名稱
k++;
end
end
但好像完全錯誤= =+
請問該怎麼寫才對
感謝!
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 140.126.132.96
1F:推 profyang:for loop前面先加p=zeros(1,n*(n-1)/2); 10/08 15:21
2F:→ profyang:然後裡面 p(k)=C(i,j); k=k+1; 10/08 15:23
3F:→ purplehui:太感謝了!!!解決我後面160*160的噩夢~~ 10/08 15:43
4F:→ ejialan:p=triu(C); p=p(p~=0); 10/08 15:51
5F:→ purplehui:感謝樓上,原來有這麼簡單的方法!! 10/08 15:59
6F:推 profyang:4F的方法讚!!@@ 10/08 16:36
7F:推 sunev:p=C(triu(true(size(C)))); 10/08 19:29