numpy.ma.
allclose
Returns True if two arrays are element-wise equal within a tolerance.
This function is equivalent to allclose except that masked values are treated as equal (default) or unequal, depending on the masked_equal argument.
masked_equal
Input arrays to compare.
Whether masked values in a and b are considered equal (True) or not (False). They are considered equal by default.
Relative tolerance. The relative difference is equal to rtol * b. Default is 1e-5.
rtol * b
Absolute tolerance. The absolute difference is equal to atol. Default is 1e-8.
Returns True if the two arrays are equal within the given tolerance, False otherwise. If either array contains NaN, then False is returned.
See also
all, any
all
any
numpy.allclose
the non-masked allclose.
Notes
If the following equation is element-wise True, then allclose returns True:
absolute(`a` - `b`) <= (`atol` + `rtol` * absolute(`b`))
Return True if all elements of a and b are equal subject to given tolerances.
Examples
>>> a = np.ma.array([1e10, 1e-7, 42.0], mask=[0, 0, 1]) >>> a masked_array(data=[10000000000.0, 1e-07, --], mask=[False, False, True], fill_value=1e+20) >>> b = np.ma.array([1e10, 1e-8, -42.0], mask=[0, 0, 1]) >>> np.ma.allclose(a, b) False
>>> a = np.ma.array([1e10, 1e-8, 42.0], mask=[0, 0, 1]) >>> b = np.ma.array([1.00001e10, 1e-9, -42.0], mask=[0, 0, 1]) >>> np.ma.allclose(a, b) True >>> np.ma.allclose(a, b, masked_equal=False) False
Masked values are not compared directly.
>>> a = np.ma.array([1e10, 1e-8, 42.0], mask=[0, 0, 1]) >>> b = np.ma.array([1.00001e10, 1e-9, 42.0], mask=[0, 0, 1]) >>> np.ma.allclose(a, b) True >>> np.ma.allclose(a, b, masked_equal=False) False