numpy.ma.allclose — NumPy v1.15 Manual (original) (raw)
numpy.ma. allclose(a, b, masked_equal=True, rtol=1e-05, atol=1e-08)[source]¶
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_equalargument.
| Parameters: | a, b : array_like Input arrays to compare. masked_equal : bool, optional Whether masked values in a and b are considered equal (True) or not (False). They are considered equal by default. rtol : float, optional Relative tolerance. The relative difference is equal to rtol * b. Default is 1e-5. atol : float, optional Absolute tolerance. The absolute difference is equal to atol. Default is 1e-8. |
|---|---|
| Returns: | y : bool Returns True if the two arrays are equal within the given tolerance, False otherwise. If either array contains NaN, then False is returned. |
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 = 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 = ma.array([1e10, 1e-8, -42.0], mask=[0, 0, 1]) ma.allclose(a, b) False
a = ma.array([1e10, 1e-8, 42.0], mask=[0, 0, 1]) b = ma.array([1.00001e10, 1e-9, -42.0], mask=[0, 0, 1]) ma.allclose(a, b) True ma.allclose(a, b, masked_equal=False) False
Masked values are not compared directly.
a = ma.array([1e10, 1e-8, 42.0], mask=[0, 0, 1]) b = ma.array([1.00001e10, 1e-9, 42.0], mask=[0, 0, 1]) ma.allclose(a, b) True ma.allclose(a, b, masked_equal=False) False