matlab中用unique函式去除矩陣重複的行,且不改變矩陣順序
阿新 • • 發佈:2019-01-03
>> A=[4,5,6;1,2,3;1,2,3]
A =
4 5 6
1 2 3
1 2 3
- 1
- 2
- 3
- 4
- 5
- 6
可以使用unique()函式來去掉重複的行
unique(A,'rows',setOrder)
- 1
setOrder有兩個選項可以選擇:
setOrder=’sorted’ 是表示去掉重複值後排序後輸出,預設是這個,因此有了上面的排序後輸出
setOrder=’stable’是表示去掉重複值後按原來的順序輸出
>> C= unique(A,'rows','stable')
C =
4 5 6
1 2 3
- 1
- 2
- 3
- 4
- 5
以上是對於矩陣的操作,對向量的操作只要將 ‘row’去掉即可
>>A=[2 2 2 1 1 1 3 3 3 3 3];
>>unique(A)
ans =
1 2 3
>> unique(A,'stable')
ans =
2 1 3
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
<link href="https://csdnimg.cn/release/phoenix/mdeditor/markdown_views-2011a91181.css" rel="stylesheet">
</div>