Filter löschen
Filter löschen

Finding the elements in two matrices with different sizes?

7 Ansichten (letzte 30 Tage)
Hello eveeryone, i have 2 matrices lets say A=[1,2,3,4,5,6,7,8] B = [1,11,12,3,3,5] what i want is to have such a result C=[1,3,3,5] what i want is compare two matrices ok that we can do that with intersect(), but in intersect function i only have [1,3,5], that is not what i want. what i want is even if it is repeated in matrix B compare with A and then have a matrix of C. The A and B sizes changing for each simulation. Can you help me please?
  1 Kommentar
Cladio Andrea
Cladio Andrea am 24 Feb. 2015
and in matrix A there is no possiblity to have repeating elements, all different.

Melden Sie sich an, um zu kommentieren.

Akzeptierte Antwort

Roger Stafford
Roger Stafford am 24 Feb. 2015
You can also use 'ismember':
C = B(ismember(B,A));

Weitere Antworten (2)

Image Analyst
Image Analyst am 24 Feb. 2015
Try setdiff():
A=[1,2,3,4,5,6,7,8]
B = [1,11,12,3,3,5]
[~, ia]=setdiff(B, A)
C = B; % Initialize to B
C(ia) = [] % Remove different elements.

Cladio Andrea
Cladio Andrea am 24 Feb. 2015
2 amazing answers thank you so much for your help guys!!!!!

Kategorien

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

Community Treasure Hunt

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

Start Hunting!

Translated by