Re: [討論] 請問矩陣搜尋問題

看板MATLAB作者 (煩..)時間12年前 (2013/11/17 19:10), 編輯推噓2(203)
留言5則, 2人參與, 最新討論串4/4 (看更多)
※ 引述《garnett0512 (賈奶)》之銘言: : 我有一個矩陣 : 9 6 5 6 : 3 2 1 5 : 0 6 0 0 : 5 3 0 8 : 4 5 8 1 : 我想要找尋右下角1的對角線非0的值,也就是6和3, : 但我只需要最接近的,所以答案是6 : 想請問各位高手要怎麼解決 謝謝 你的矩陣是固定長怎樣嗎? 若以你的舉例來說 可以在最左邊補上一排0 假設你矩陣為a b=zeros(5); b(:,2:end)=a; c=b(logical(eye(5))); [x,y,z]=find(c); % x,y是非0座標 z是非0的值 剩下的自己應該就可以了吧 至於要反過來的 就改在右邊補0 然後把對角線的矩陣翻轉一下 flipdim(eye(5),1) -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 220.129.112.16

11/17 20:36, , 1F
很酷的方法@@ 學到一課了還可以用logical 不過你這樣後面
11/17 20:36, 1F

11/17 20:36, , 2F
C還是5*5 而我的方法是只剩下對角線
11/17 20:36, 2F

11/17 20:56, , 3F
用logical 的用意就是為了只取出對角線
11/17 20:56, 3F

11/17 20:58, , 4F
而且其實diag 就好了 剛剛腦殘用這麼麻煩的方式.....
11/17 20:58, 4F

11/17 21:01, , 5F
原來有這function!!
11/17 21:01, 5F
文章代碼(AID): #1IYAH0y6 (MATLAB)
文章代碼(AID): #1IYAH0y6 (MATLAB)