Hi,
I want to compare two matrices for equal values, and I want to know if there is a build-in function to do this. Ihaven't been able to find it in the MATLAB help.
example: A=[1 2 3; 4 5 6; 7 8 9] B=[9 8 7; 6 5 4; 3 2 1] this should return something like result=[0 0 0;0 1 0;0 0 0] so I can see there is an equal number on the same position in both matrices and the position that it is in.
Thanks!
Ellen

2 comentarios

João Peixoto
João Peixoto el 13 de Oct. de 2015
have you tried? result = A==B;
SALAR SHAIKHAH
SALAR SHAIKHAH el 25 de Nov. de 2016
You can do as: C=A==B, The matrix C will contain the result of comparison... For more comparison, you can see following link: https://www.mathworks.com/help/matlab/matlab_prog/array-comparison-with-relational-operators.html

Iniciar sesión para comentar.

 Respuesta aceptada

Sean de Wolski
Sean de Wolski el 23 de Mayo de 2011

3 votos

result = A==B;

3 comentarios

Ellen
Ellen el 23 de Mayo de 2011
Thanks so much.
Sometimes the answer is so simple, you don't think about it
Sincloe Brans
Sincloe Brans el 12 de Ag. de 2014
This doesn't work for two matrix with different dimensions, any way to compare two matrix with different rows and same number of column (eg A=50*16 vs B=100*16)?
Sean de Wolski
Sean de Wolski el 12 de Ag. de 2014
isequal
Sincloe, please ask this as a new question next time!

Iniciar sesión para comentar.

Más respuestas (4)

Shubham Patel
Shubham Patel el 6 de Mzo. de 2019

4 votos

Use this
isequal(A,B)

1 comentario

AMAN GAUTAM
AMAN GAUTAM el 16 de Ag. de 2019
Sir,Why its result is "Non orthogonal".While all element of inverse matrix R1 and R_UTOF is same, Please tell mistakes-
angle=input('Enter euler angle in order');
alpha=(pi/180).*angle(1,1);
beta=(pi/180).*angle(1,1);
gama=(pi/180).*angle(1,1);
R_z_alpha=[cos(alpha) -sin(alpha) 0;sin(alpha) cos(alpha) 0;0 0 1];
R_y_beta=[cos(beta) 0 -sin(beta);0 1 0;sin(beta) 0 cos(beta)];
R_x_gama=[1 0 0;0 cos(gama) -sin(gama);0 sin(gama) cos(gama)];
disp('Rotation matrix is ');
R_UTOF=R_z_alpha*R_y_beta*R_x_gama; % rotation converson matrix from Universal to final frame
disp(R_UTOF);
disp('Transpose of rotation matrix is');
disp(R_UTOF');
disp('Inverse of rotation matrix is');
R1=inv(R_UTOF);
disp(R1);
if isequal(R1,R_UTOF')
disp("Rotation matrix is Orthogonal");
else
disp("Rotation matrix is non Orthogonal");
end

Iniciar sesión para comentar.

Kiarash Ahi
Kiarash Ahi el 21 de Jul. de 2014
Editada: Kiarash Ahi el 21 de Jul. de 2014

1 voto

How if I want two compare the two matrices and get only one digit; I mean 1 if both were the same and 0 if at least two element of the matrices differ?

3 comentarios

Kiarash Ahi
Kiarash Ahi el 21 de Jul. de 2014
Editada: Kiarash Ahi el 21 de Jul. de 2014
I have just found the answer to my question:
find(A~=B)
Niko
Niko el 12 de Ag. de 2014
isequal(A,B)
Salah Alhaithemy
Salah Alhaithemy el 10 de Mzo. de 2016
isempty(find(A==B))

Iniciar sesión para comentar.

kevin harianto
kevin harianto el 4 de Abr. de 2022

0 votos

Is there documentation to check whether a matric is greater than in terms of size for each of the dimensions?

Categorías

Más información sobre Mathematics en Centro de ayuda y File Exchange.

Etiquetas

Preguntada:

el 23 de Mayo de 2011

Respondida:

el 12 de Nov. de 2022

Community Treasure Hunt

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

Start Hunting!

Translated by