Deleting duplicate values in matrix

I have a dataset in which i have duplicate vaues(same values),i want to delete it as
S={
'' 'c1' 'c2' 'c3'
'p-a' 'pso' 'mpso' 'pso'
'p-a' 'pso' 'mpso' 'pso'
'p-a' 'pso' 'mpso' 'pso'
'k' 'spsp' 'pso' 'mpso'
'y-b' 'pso' 'pso' 'spso'
'y-b' 'pso' 'pso' 'spso'}
i need output as
out={
'p-a' 'pso' 'mpso' 'pso'
'k' 'spsp' 'pso' 'mpso'
'y-b' 'pso' 'pso' 'spso'}
please help

 Akzeptierte Antwort

Oleg Komarov
Oleg Komarov am 27 Aug. 2012

1 Stimme

[trash,idx] = unique(S(:,1),'stable');
S(idx,:)
Note that only the first column is considered to be the key.

6 Kommentare

kash
kash am 27 Aug. 2012
am getting error
Error using cell/unique (line 28) Unrecognized option.
Honglei Chen
Honglei Chen am 27 Aug. 2012
Bearbeitet: Honglei Chen am 27 Aug. 2012
If it does not solve your issue, please do not accept an answer. The error you see could be due to you are using an older version of MATLAB that does not support 'stable' option.
kash
kash am 27 Aug. 2012
ok can u tell how to solve it please am using 2010a
Jan
Jan am 27 Aug. 2012
Bearbeitet: Jan am 27 Aug. 2012
Omit the "stable", kash. And please be so kind to answer my question: Why does the first row disappear in the output? It is a unique line, so it should be kept according to your explanations.
If using the first row is not enough for your problem, take the time to explain such details. Try unique(S, 'rows') instead.
You've asked 220 questions now and still accept an answer, which does not solve your problem? Surprising. Again I suggest to read, consider and respect the forum rules, which are explained e.g. here: http://www.mathworks.com/matlabcentral/about/answers/
[trash,idx] = unique(S(:,1),'first');
out = S(sort(idx),:);
kash
kash am 29 Aug. 2012
Thanks andrei and Jan by mistake i clicked Accepy the answer button

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (0)

Tags

Community Treasure Hunt

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

Start Hunting!

Translated by