How can i find indices of constant elements between 2 arrays?

조회 수: 1 (최근 30일)
Jiahong Zou
Jiahong Zou 2023년 5월 31일
댓글: Jiahong Zou 2023년 6월 2일
Hi, i have 2 enormous matrices A and B which are parameter relevant. With find() function i know which elements are non zero and with find(A-B) i know which elements are changed due to parameter. But how can i find out the indices of elements which remain constant?
  댓글 수: 4
Jiahong Zou
Jiahong Zou 2023년 5월 31일
편집: Image Analyst 2023년 5월 31일
Yeah sure. For example,
A = [1 2 0; 0 1 0; 5 0 8]
A = 3×3
1 2 0 0 1 0 5 0 8
B = [ 1 3 0; 0 4 0; 5 0 6]
B = 3×3
1 3 0 0 4 0 5 0 6
How to find the indices of bold 1 and 5 ? Zero elements must be not included, because i tried
[row_zero, column_zero] = find(~(A - B))
row_zero = 6×1
1 2 3 3 1 2
column_zero = 6×1
1 1 1 2 3 3
And it directly went out of memory.
Image Analyst
Image Analyst 2023년 5월 31일
Exactly how big are your arrays? Hundreds of millions of elements or more?

댓글을 달려면 로그인하십시오.

채택된 답변

the cyclist
the cyclist 2023년 5월 31일
Do you mean the non-zero elements that are the same between the two arrays?
A = [1 2 0; 0 1 0; 5 0 8];
B = [1 3 0; 0 4 0; 5 0 6];
[r,c] = find(A==B & A~=0)
r = 2×1
1 3
c = 2×1
1 1

추가 답변 (0개)

카테고리

Help CenterFile Exchange에서 Matrices and Arrays에 대해 자세히 알아보기

태그

제품


릴리스

R2022b

Community Treasure Hunt

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

Start Hunting!

Translated by