Find common rows between two matrices with different number of columns
조회 수: 1 (최근 30일)
이전 댓글 표시
I have two matrices A and B.
A = [1 2 3; 4 5 6; 7 8 9]
B = [1 3 20 2; 1 2 3 55; 7 8 9 10; 88 2 1 5]
and I need to extract the rows in B matrix with common elements in A matrix, row by row.
The result shall be like that:
common_rows = [1 3 20 2; 1 2 3 55; 7 8 9 10]
Thanks.
댓글 수: 0
채택된 답변
Dyuman Joshi
2024년 1월 30일
A = [1 2 3; 4 5 6; 7 8 9];
B = [1 3 20 2; 1 2 3 55; 7 8 9 10; 88 2 1 5];
%Indices of rows in B
idx = 1:size(B,1);
for k=idx
%If elements in a row of B are not common with all elements of any row
%in A, remove that row index
if ~any(all(ismember(A, B(k,:)),2))
idx = setdiff(idx, k);
end
end
idx
C = B(idx, :)
추가 답변 (0개)
참고 항목
카테고리
Help Center 및 File Exchange에서 Computational Geometry에 대해 자세히 알아보기
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!