Re: [問題] 向量連結分類已回收
※ 引述《youbet (1217(五)化學之夜)》之銘言:
: A=[1,2,3;1,2,4;2,2,3;2,3,4;1,1,4];
: nA=size(A,1);
: [m1,m2]=meshgrid(1:nA);
: conn=false(nA,nA);
: conn(find(sum((A(m1,:)-A(m2,:)).^2,2)==1))=true;
: 現在 conn 是一個 nA-by-nA 的邏輯矩陣
: 如果第一個向量有連到第二個向量的話
: 那 conn(1,2) 就是 true , otherwise false
: (把 m1, m2 用 triu 之類的還可以再減少約一半的記憶體使用量)
: 接下來如果你有裝 BioInformatics Toolbox 的話
: 用裡面的 conncomp.m (connected component)
: 就可以把你要的數個小矩陣的向量的 index 找出來
: 剩下的應該很容易了~
你的想法比我自己的還來得簡單,
也讓我瞭解原來有邏輯矩陣這個東西,
試問邏輯矩陣與一般的0-1矩陣的差別為何?
此外對於conn(find(sum((A(m1,:)-A(m2,:)).^2,2)==1))=true
"==1"並不是我要的,
我的定義大概是A(m1,:)-A(m2,:)具有size(A,2)-1個0就算相連
有什麼快速的方法可以處理嗎?
另外,若是沒有BioInformatics toolbox,該怎麼辦呢?
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 118.165.218.101
推
05/10 23:07, , 1F
05/10 23:07, 1F
→
05/10 23:08, , 2F
05/10 23:08, 2F
討論串 (同標題文章)
MATLAB 近期熱門文章
PTT數位生活區 即時熱門文章