Finding the elements in two matrices with different sizes?

18 ビュー (過去 30 日間)
Cladio Andrea
Cladio Andrea 2015 年 2 月 24 日
回答済み: Cladio Andrea 2015 年 2 月 24 日
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 件のコメント
Cladio Andrea
Cladio Andrea 2015 年 2 月 24 日
and in matrix A there is no possiblity to have repeating elements, all different.

サインインしてコメントする。

採用された回答

Roger Stafford
Roger Stafford 2015 年 2 月 24 日
You can also use 'ismember':
C = B(ismember(B,A));

その他の回答 (2 件)

Image Analyst
Image Analyst 2015 年 2 月 24 日
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 2015 年 2 月 24 日
2 amazing answers thank you so much for your help guys!!!!!

カテゴリ

Help Center および File ExchangeLogical についてさらに検索

Community Treasure Hunt

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

Start Hunting!

Translated by