isequalwithequalnans
Test arrays for equality, treating NaNs as equal
Compatibility
Note
isequalwithequalnans
is not recommended. Use isequaln
instead.
Syntax
tf = isequalwithequalnans(A, B, ...)
Description
tf = isequalwithequalnans(A, B, ...)
returns logical 1
(true
) if the input arrays
are the same type and size and hold the same contents, and logical
0
(false
) otherwise.
NaN
(Not a Number) values are considered to be equal to each
other. Numeric data types and structure field order do not have to match.
Examples
Arrays containing NaN
s are handled differently by isequal
and isequalwithequalnans
.
isequal
does not consider NaN
s to be
equal, while isequalwithequalnans
does.
A = [32 8 -29 NaN 0 5.7]; B = A; isequal(A, B) ans = 0 isequalwithequalnans(A, B) ans = 1
The position of NaN
elements in the array does matter. If they
are not in the same position in the arrays being compared, then
isequalwithequalnans
returns zero.
A = [2 4 6 NaN 8]; B = [2 4 NaN 6 8]; isequalwithequalnans(A, B) ans = 0
Tips
isequalwithequalnans
is the same as isequal
, except isequalwithequalnans
considers
NaN
(Not a Number) values to be equal, and
isequal
does not.
isequalwithequalnans
recursively compares the contents of cell
arrays and structures. If all the elements of a cell array or structure are
numerically equal, isequalwithequalnans
returns logical
1
.
Version History
Introduced before R2006a