-1

for ループを使用せずに 2 つの行列を比較したい。与えられた

A=[2 1 8;
   2 4 7;
   2 3 7;
   3 5 2;
   5 1 4;
   5 6 2;
   5 3 7];

B=[3 6 5;
   1 4 2];

col(2)ここで、2つのマトリックスを 2 つのマトリックスと比較し、同時に 3 つのマトリックスと 1 つのマトリックスBcol(2)比較Acol(3)たいBcol(1)考えていAます。今、次のようなマトリックスから結果を取得したいA:

c=[2 4 7;
   5 6 2];
4

1 に答える 1

0

@mizanbuet はA、行の 3 番目の要素が の 1 列目にありB、行の 2 番目の要素が の 2 列目にある場所から行を抽出したいと考えていますB

いくつかのismember論理インデックス付けで簡単:

A2inB2 = ismember(A(:,2),B(:,2));
A1inB3 = ismember(A(:,1),B(:,3));
c = A( A2inB2 & A1inB3, :);
于 2012-10-30T17:02:56.307 に答える