次元の異なる二つの列​ベクトルで一番最初に​一致する値を検索する​方法

5 vues (au cours des 30 derniers jours)
Shohei Taniguchi
Shohei Taniguchi le 23 Jan 2022
初歩的な質問で申し訳ありません.
サイズの異なる列ベクトルA,Bで一番最初に一致した値を抽出したいと思っております.
列ベクトルA,Bはそれぞれfind関数で抽出した,ある条件を満たした行数を表しているため,列数が増加するにつれて値も大きくなります.
以下試しましたが,当然ですが次元が一致していないというエラーメッセージが出ます.
A = [1;2;3;6;7;8;9;10;11;12];
B = [4;5;10;12;14];
C = A(A == B,1);
Arrays have incompatible sizes for this operation.
エラー:行列の次元は一致しなければなりません。
上記の例ですと,
C = 10
と出てくることを期待しております.
ご教授いただければ幸いです.ご回答よろしくお願いいたします.

Réponse acceptée

Atsushi Ueno
Atsushi Ueno le 23 Jan 2022
A = [1;2;3;6;7;8;9;10;11;12];
B = [4;5;10;12;14];
common = A(ismember(A,B)) % B(ismember(B,A))
common = 2×1
10 12
common(1)
ans = 10
  1 commentaire
Shohei Taniguchi
Shohei Taniguchi le 23 Jan 2022
解決いたしました!
ご回答いただきありがとうございました.

Connectez-vous pour commenter.

Plus de réponses (0)

Catégories

En savoir plus sur Logical dans Help Center et File Exchange

Tags

Produits


Version

R2020b

Community Treasure Hunt

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

Start Hunting!