Ich habe dieses Zellenfeld in MATLAB:Wie kann ich Duplikate in einem Array entfernen, aber die Reihenfolge beibehalten?
y = { 'd' 'f' 'a' 'g' 'g' 'a' 'w' 'h'}
ich unique(y)
verwenden loszuwerden, die Duplikaten zu bekommen, aber es ordnet die Saiten in alphabetischer Reihenfolge:
>> unique(y)
ans =
'a' 'd' 'f' 'g' 'h' 'w'
ich die Duplikate entfernen will, aber halten die gleiche Reihenfolge. Ich weiß, dass ich eine Funktion schreiben konnte, tue dies, aber ich fragte mich, ob es einen einfacheren Weg gab, unique
zu verwenden, um Duplikate zu entfernen, während die gleiche Reihenfolge nur bei entfernten Duplikaten beibehalten wurde.
Ich will es diese zurück:
>> unique(y)
ans =
'd' 'f' 'a' 'g' 'w' 'h'
Ich nehme an, die Antwort von Amro ist der beste Weg, dies jetzt zu erreichen. 'unique (y, 'stable')' –