MATLAB Answers

compare two matrices

1,458 views (last 30 days)
Ellen
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
  2 Comments
SALAR SHAIKHAH
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

Sign in to comment.

Accepted Answer

Sean de Wolski
Sean de Wolski on 23 May 2011
result = A==B;
  3 Comments
Sean de Wolski
Sean de Wolski on 12 Aug 2014
isequal
Sincloe, please ask this as a new question next time!

Sign in to comment.

More Answers (2)

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

Sign in to comment.


Kiarash Ahi
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?
  3 Comments
Salah Alhaithemy
Salah Alhaithemy on 10 Mar 2016
isempty(find(A==B))

Sign in to comment.

Community Treasure Hunt

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

Start Hunting!