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

7 Ansichten (letzte 30 Tage)
Shohei Taniguchi
Shohei Taniguchi am 23 Jan. 2022
Kommentiert: Shohei Taniguchi am 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
と出てくることを期待しております.
ご教授いただければ幸いです.ご回答よろしくお願いいたします.

Akzeptierte Antwort

Atsushi Ueno
Atsushi Ueno am 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 Kommentar
Shohei Taniguchi
Shohei Taniguchi am 23 Jan. 2022
解決いたしました!
ご回答いただきありがとうございました.

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (0)

Kategorien

Mehr zu Logical finden Sie in Help Center und File Exchange

Tags

Produkte


Version

R2020b

Community Treasure Hunt

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

Start Hunting!