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....