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

 Réponse acceptée

Oleg Komarov
Oleg Komarov le 27 Août 2012
[trash,idx] = unique(S(:,1),'stable');
S(idx,:)
Note that only the first column is considered to be the key.

6 commentaires

kash
kash le 27 Août 2012
am getting error
Error using cell/unique (line 28) Unrecognized option.
Honglei Chen
Honglei Chen le 27 Août 2012
Modifié(e) : Honglei Chen le 27 Août 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 le 27 Août 2012
ok can u tell how to solve it please am using 2010a
Jan
Jan le 27 Août 2012
Modifié(e) : Jan le 27 Août 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 le 29 Août 2012
Thanks andrei and Jan by mistake i clicked Accepy the answer button

Connectez-vous pour commenter.

Plus de réponses (0)

Tags

Community Treasure Hunt

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

Start Hunting!

Translated by