看板 MATLAB 關於我們 聯絡資訊
unique 會回傳 unique 的 index (ia) 所以只要把不在 ia 中的 index 對應的值取出來 就都是重複的元素了 不過這時候還要再用一次 unique 才可以得到不重複的結果 程式碼: A = [ 2 2 2 1 8 8 7 4 9 8 ]; [C, ia, ~] = unique(A); B = unique(A(setdiff(1:length(A),ia))); A = setdiff(C,B); ※ 引述《andgitisaac (AndGiTiSaaC)》之銘言: : 想請問各位前輩 : 假設有一個向量A = [ 2 2 2 1 8 8 7 4 9 8 ] : 現在想要把有重複的元素從裡面剔除, : 另外不重複地分派到向量B : 使得結果為A = [ 1 7 4 9 ]; B = [ 2 8 ]; : (結果不一定要經過排序或按照原順序) : 翻了很多文都只能找到"刪除重複"的元素(使用unique) : 但不是我想要的結果Orz.... -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 140.112.243.1 ※ 文章網址: https://www.ptt.cc/bbs/MATLAB/M.1471701172.A.32C.html
andgitisaac: 原來是這樣,看help沒有想到index用法,感謝大大 08/21 10:01
at01076172: 這方法簡單許多 08/21 12:48