#### Previous topic

numpy.allclose

#### Next topic

numpy.array_equal

# numpy.isclose

`numpy.``isclose`(a, b, rtol=1e-05, atol=1e-08, equal_nan=False)

  Returns a boolean array where two arrays 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.

  Parameters: | a, b : array_like Input arrays to compare. rtol : float The relative tolerance parameter (see Notes). atol : float The absolute tolerance parameter (see Notes). equal_nan : bool Whether to compare NaN’s as equal. If True, NaN’s in a will be considered equal to NaN’s in b in the output array.
  Returns: | y : array_like Returns a boolean array of where a and b are equal within the given tolerance. If both a and b are scalars, returns a single boolean value.

  See also

  `allclose`

  Notes

  New in version 1.7.0.

  For finite values, isclose uses the following equation to test whether two floating point values are equivalent.

  > absolute(a - b) <= (atol + rtol * absolute(b))

  The above equation is not symmetric in a and b, so that isclose(a, b) might be different from isclose(b, a) in some rare cases.

  Examples

      >>> np.isclose([1e10,1e-7], [1.00001e10,1e-8])
      array([True, False])
      >>> np.isclose([1e10,1e-8], [1.00001e10,1e-9])
      array([True, True])
      >>> np.isclose([1e10,1e-8], [1.0001e10,1e-9])
      array([False, True])
      >>> np.isclose([1.0, np.nan], [1.0, np.nan])
      array([True, False])
      >>> np.isclose([1.0, np.nan], [1.0, np.nan], equal_nan=True)
      array([True, True])