mindspore.numpy.isclose
- mindspore.numpy.isclose(a, b, rtol=1e-05, atol=1e-08, equal_nan=False)[source]
Returns a boolean tensor where two tensors are element-wise equal within a tolerance.
The tolerance values are positive, typically very small numbers. The relative difference (\(rtol * abs(b)\)) and the absolute difference atol are added together to compare against the absolute difference between a and b.
Note
For finite values, isclose uses the following equation to test whether two floating point values are equivalent. \(absolute(a - b) <= (atol + rtol * absolute(b))\) On Ascend, input arrays containing inf or NaN are not supported.
- Parameters
a (Union[Tensor, list, tuple]) – Input first tensor to compare.
b (Union[Tensor, list, tuple]) – Input second tensor to compare.
rtol (numbers.Number, optional) – The relative tolerance parameter (see Note). Default:
1e-05
.atol (numbers.Number, optional) – The absolute tolerance parameter (see Note). Default:
1e-08
.equal_nan (bool, optional) – Whether to compare
NaN
as equal. If True,NaN
in a will be considered equal toNaN
in b in the output tensor. Default:False
.
- Returns
A
bool
tensor of where a and b are equal within the given tolerance.- Raises
TypeError – If inputs have types not specified above.
- Supported Platforms:
Ascend
GPU
CPU
Examples
>>> import mindspore.numpy as np >>> a = np.array([0,1,2,float('inf'),float('inf'),float('nan')]) >>> b = np.array([0,1,-2,float('-inf'),float('inf'),float('nan')]) >>> print(np.isclose(a, b)) [ True True False False True False] >>> print(np.isclose(a, b, equal_nan=True)) [ True True False False True True]