Skip to main content
`Ctrl`+`K`

# numpy.array_equal

numpy.array_equal(a1, a2, equal_nan=False)

  True if two arrays have the same shape and elements, False otherwise.

  Parameters:
    a1, a2 array_like

      Input arrays.

    equal_nan bool

      Whether to compare NaN’s as equal. If the dtype of a1 and a2 is complex, values will be considered equal if either the real or the imaginary component of a given value is `nan`.

  Returns:
    b bool

      Returns True if the arrays are equal.

  See also

  `allclose`

    Returns True if two arrays are element-wise equal within a tolerance.

  `array_equiv`

    Returns True if input arrays are shape consistent and all elements equal.

  Examples

      >>> import numpy as np

      >>> np.array_equal([1, 2], [1, 2])
      True

      >>> np.array_equal(np.array([1, 2]), np.array([1, 2]))
      True

      >>> np.array_equal([1, 2], [1, 2, 3])
      False

      >>> np.array_equal([1, 2], [1, 4])
      False

      >>> a = np.array([1, np.nan])
      >>> np.array_equal(a, a)
      False

      >>> np.array_equal(a, a, equal_nan=True)
      True

  When `equal_nan` is True, complex values with nan components are considered equal if either the real or the imaginary components are nan.

      >>> a = np.array([1 + 1j])
      >>> b = a.copy()
      >>> a.real = np.nan
      >>> b.imag = np.nan
      >>> np.array_equal(a, b, equal_nan=True)
      True