How to eliminate duplicate rows without sorting column in Matlab

Hi,
Here is one problem that maybe some people will find useful to them.
I got matrix, lets say 500x9. In this matrix some rows are identical so they have to be eliminated. But the 3rd column musn't be sorted. This must be unchanged. All other columns can be changed (sorted).
I tryed this with function unique, but it sort me 3rd column.
Thank you in advance.
Have a nice day,
Nejc

回答 (1 件)

Azzi Abdelmalek
Azzi Abdelmalek 2013 年 4 月 4 日

2 投票

unique(A,'stable')

4 件のコメント

Nejc
Nejc 2013 年 4 月 4 日
Its says unrecognized option, but thank you anyway.
Azzi Abdelmalek
Azzi Abdelmalek 2013 年 4 月 4 日
編集済み: Azzi Abdelmalek 2013 年 4 月 4 日
A=[1 2;3 5;1 2;0 2;0 2]
[~,idx]=unique(A,'rows')
out=A(sort(idx),:)
Sean de Wolski
Sean de Wolski 2013 年 4 月 4 日
@Nejc, the 'stable' option became available in R2012a.
Azzi Abdelmalek
Azzi Abdelmalek 2013 年 4 月 4 日
Edit
A=[1 2;3 5;1 2;0 2;0 2]
[~,idx]=unique(A,'rows','first')
out=A(sort(idx),:)

サインインしてコメントする。

カテゴリ

ヘルプ センター および File ExchangeShifting and Sorting Matrices についてさらに検索

製品

質問済み:

2013 年 4 月 4 日

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by