How to delete duplicate row? unique is not working?

14 views (last 30 days)
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 Comment
Stephen23
Stephen23 on 4 Aug 2016
Ever row is different:
>> all(any(diff(sortrows(spMBL),1,1),2))
ans = 1
and so unique gives the correct output.

Sign in to comment.

Accepted Answer

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

More Answers (1)

Walter Roberson
Walter Roberson on 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)

Categories

Find more on Matrices and Arrays in Help Center and File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by