I have A=[1 2; 3 6; 3 5; 1 4; 4 6; 2 7; 1 6; 6 5; 2 3; 6 7; 3 4]; B=[1 2; 1 6; 2 3; 3 4; 4 6];,/pre? I want to find missing element between A and B result should be res=[3 6; 3 5; 1 4; 2 7; 6 5; 6 7] I used this res = A(~all(ismember(A,B),2),:); But it does not give me [3 6; 1 4]
Prashant Kumar answered .
2025-11-20
>> A = [1,2;3,6;3,5;1,4;4,6;2,7;1,6;6,5;2,3;6,7;3,4]; >> B = [1,2;1,6;2,3;3,4;4,6]; >> R = setdiff(A,B,'rows') R = 1 4 2 7 3 5 3 6 6 5 6 7
To get the same order, use the 'stable' option or this:
>> [~,X] = setdiff(A,B,'rows'); >> X = sort(X); >> R = A(X,:) R = 3 6 3 5 1 4 2 7 6 5 6 7