How to check and update one matrix by comparing the element of another matrix?

1 回表示 (過去 30 日間)
suchismita
suchismita 2015 年 4 月 17 日
コメント済み: suchismita 2015 年 4 月 17 日
I have a matrix 10*3
1 2 3
1 2 4
1 2 5
1 3 4
1 3 5
1 4 5
2 3 4
2 3 5
2 4 5
3 4 5
now i want to check whether second and third column pairs are existing in another 10 by 2 matrix or not
example:
1 2
1 3
1 4
1 5
2 3
2 4
2 5
3 4
3 5
4 5
and if any pair from 10 by 3 matrix is not able to satisfy the condition will be removed.
for example:
in first row 1 2 3 -- 2 3 is available in 10*2 matrix so will keep that row as it is but if this condition is not satisfied, the entire row will be removed from 10*3 matrix
please please help me.

採用された回答

Guillaume
Guillaume 2015 年 4 月 17 日
編集済み: Guillaume 2015 年 4 月 17 日
Use ismember with the 'rows' option:
A = [1 2 3; 1 2 4; 1 2 5; 1 3 4; 1 3 5; 1 4 5; 2 3 4; 2 3 5; 2 4 5; 3 4 5];
B = [1 2; 2 3; 4 5]; %reduced second matrix so some rows of A are missing
isrowpresent = ismember(A(:, [2 3]), B, 'rows');
A(~isrowpresent, :) = [] %delete rows not present

その他の回答 (0 件)

カテゴリ

Help Center および File ExchangeResizing and Reshaping Matrices についてさらに検索

Community Treasure Hunt

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

Start Hunting!

Translated by