Compare two matrix and delete the same rows

20 views (last 30 days)
Patrick
Patrick on 27 Oct 2014
Answered: Andrei Bobrov on 27 Oct 2014
Say I have A= [1 2 3, 4 5 6, 6 7 8] and B= [4 5 7, 1 2 3, 7 6 4, 6 7 8]. How can I delete the rows in B that are the same with A? The result desired is B=[4 5 7, 7 6 4]
Thanks!

Answers (3)

Azzi Abdelmalek
Azzi Abdelmalek on 27 Oct 2014
Edited: Azzi Abdelmalek on 27 Oct 2014
A= [1 2 3; 4 5 6; 6 7 8]
B= [4 5 7; 1 2 3; 7 6 4; 6 7 8]
B(ismember(B,A,'rows'),:)=[]

Andrei Bobrov
Andrei Bobrov on 27 Oct 2014
setdiff(B,A,'rows')

David Sanchez
David Sanchez on 27 Oct 2014
A= [1 2 3; 4 5 6; 6 7 8];
B= [4 5 7; 1 2 3; 7 6 4; 6 7 8];
Lia = ismember(B,A,'rows');
B_new = B(~Lia,:)
B_new =
4 5 7
7 6 4

Categories

Find more on MATLAB in Help Center and File Exchange

Tags

Community Treasure Hunt

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

Start Hunting!