When using find function, if function find is a empty matrix how to change that value?
Mostrar comentarios más antiguos
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 comentarios
Jan
el 31 de Oct. de 2012
Please learn how to format code in this forum. It has been explained repeatedly.
Daniyal Awan
el 31 de Oct. de 2012
Hi, Use 'preview' option to see how others see your post.
Respuestas (2)
Andrei Bobrov
el 31 de Oct. de 2012
F = A == B;
Walter Roberson
el 31 de Oct. de 2012
0 votos
Use isempty() to detect empty matrices rather than comparing to an empty matrix.
Categorías
Más información sobre Matrix Indexing en Centro de ayuda y File Exchange.
Productos
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!