How to delete duplicate row? unique is not working?

1 Ansicht (letzte 30 Tage)
Ahmed Hamed
Ahmed Hamed am 3 Aug. 2016
Kommentiert: Stephen23 am 4 Aug. 2016
I have a matrix (in the attachment) that contains duplicated rows. I issued this command
spMBL = unique(spMBL, 'rows');
However, this doesn't delete the duplicated row
Any suggestions
  1 Kommentar
Stephen23
Stephen23 am 4 Aug. 2016
Ever row is different:
>> all(any(diff(sortrows(spMBL),1,1),2))
ans = 1
and so unique gives the correct output.

Melden Sie sich an, um zu kommentieren.

Akzeptierte Antwort

Bekay.Kang
Bekay.Kang am 4 Aug. 2016
Bearbeitet: Walter Roberson am 4 Aug. 2016
% here's code!
[~,idx]=unique(spBML,'rows')
spBML_new=spBML(sort(idx),:)
:)

Weitere Antworten (1)

Walter Roberson
Walter Roberson am 4 Aug. 2016
spMBL = unique(spMBL, 'rows');
does work. The result has every row different than every other row. In the rows I examined, in each case row spMBL(J,:) is different than spMBL(J+1,:) in position size(spMBL,2)-J+1 . For example, size(spMBL,2) is 312, and spMBL(88,:) is different from spMBL(89,:) in position #312-88+1 = 225, so spMBL(88,225) is not equal to spMBL(89,225)

Kategorien

Mehr zu Resizing and Reshaping Matrices finden Sie in Help Center und File Exchange

Produkte

Community Treasure Hunt

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

Start Hunting!

Translated by