compare two matrices

1,458 views (last 30 days)
Ellen on 23 May 2011
Commented: AMAN GAUTAM on 16 Aug 2019
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
SALAR SHAIKHAH on 25 Nov 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

Sean de Wolski on 23 May 2011
result = A==B;
Sean de Wolski on 12 Aug 2014
isequal

Shubham Patel on 6 Mar 2019
Use this
isequal(A,B)
AMAN GAUTAM on 16 Aug 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

Kiarash Ahi on 21 Jul 2014
Edited: Kiarash Ahi on 21 Jul 2014
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?
Salah Alhaithemy on 10 Mar 2016
isempty(find(A==B))