how remove duplicate rows ?

2 views (last 30 days)
Firas
Firas on 21 May 2014
Edited: the cyclist on 21 May 2014
I dont knew if we can have a script for that if we have
A=[ 1,2,3;
42,0,1;
14,2,4;
2,3,5;
1,0,0]
B=[42,0,1;
1,0,0]
i want C
C=[ 1,2,3;
14,2,4;
2,3,5]
thanks
  1 Comment
the cyclist
the cyclist on 21 May 2014
Edited: the cyclist on 21 May 2014
Note that the difference between my answer and Andrei's is how to handle the case where there are rows in B that are not in A. My solution will include those rows in C, and Andrei's will not.
Azzi's is different still, in that it handles replicated rows from A differently. My and Andrei's solution will keep only the unique rows, while Azzi's will keep duplicate rows from A.

Sign in to comment.

Answers (3)

the cyclist
the cyclist on 21 May 2014
Edited: the cyclist on 21 May 2014
C = setxor(A,B,'rows','stable')

Andrei Bobrov
Andrei Bobrov on 21 May 2014
C = setdiff(A,B,'rows','stable')

Azzi Abdelmalek
Azzi Abdelmalek on 21 May 2014
C=A(~ismember(A,B,'rows'),:);

Categories

Find more on Variables 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!