When using find function, if function find is a empty matrix how to change that value?
Ältere Kommentare anzeigen
I have two matrices (A and B) and I am comparing elements in matrix A to elements in matrix B. If there is a match A(i,j,k)==B matrix f will take value 1. If there is no match f will take value 0:
A = [5 7; 0 1]; A(:,:,2) = [1 0; 3 5]; B = [5 3; 0 7]; B(:,:,2) = [3 0; 3 3]; f=zeros(size(A)); for i = 1:size(A) for j = 1:size(A) for k = 1:size(A) [x,y,z] = ind2sub(sE,find(A(i,j,k)==B)); if x == zeros(0,1) f(i,j,k) = 0; else f(i,j,k) = 1; end end end end
I am having a error in if: ??? Error using ==> eq Matrix dimensions must agree.
How can I solve this?
3 Kommentare
Jan
am 31 Okt. 2012
Please learn how to format code in this forum. It has been explained repeatedly.
Daniyal Awan
am 31 Okt. 2012
Hi, Use 'preview' option to see how others see your post.
Antworten (2)
Andrei Bobrov
am 31 Okt. 2012
F = A == B;
Walter Roberson
am 31 Okt. 2012
0 Stimmen
Use isempty() to detect empty matrices rather than comparing to an empty matrix.
Kategorien
Mehr zu Matrix Indexing finden Sie in Hilfe-Center und File Exchange
Produkte
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!