How to eliminate duplicate rows without sorting column in Matlab
Afficher commentaires plus anciens
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
Réponses (1)
Azzi Abdelmalek
le 4 Avr 2013
unique(A,'stable')
4 commentaires
Nejc
le 4 Avr 2013
Azzi Abdelmalek
le 4 Avr 2013
Modifié(e) : Azzi Abdelmalek
le 4 Avr 2013
A=[1 2;3 5;1 2;0 2;0 2]
[~,idx]=unique(A,'rows')
out=A(sort(idx),:)
Sean de Wolski
le 4 Avr 2013
@Nejc, the 'stable' option became available in R2012a.
Azzi Abdelmalek
le 4 Avr 2013
Edit
A=[1 2;3 5;1 2;0 2;0 2]
[~,idx]=unique(A,'rows','first')
out=A(sort(idx),:)
Catégories
En savoir plus sur Shifting and Sorting Matrices dans Centre d'aide et File Exchange
Produits
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!