numpy.array_equal#
- numpy.array_equal(a1, a2, equal_nan=False)[source]#
如果兩個陣列具有相同的形狀和元素,則為 True,否則為 False。
- 參數:
- a1, a2array_like
輸入陣列。
- equal_nanbool
是否將 NaN 視為相等進行比較。如果 a1 和 a2 的 dtype 是複數,則當給定值的實部或虛部為
nan
時,值將被視為相等。
- 回傳:
- bbool
如果陣列相等,則回傳 True。
另請參閱
allclose
如果兩個陣列在容差範圍內逐元素相等,則回傳 True。
array_equiv
如果輸入陣列形狀一致且所有元素相等,則回傳 True。
範例
>>> 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
當
equal_nan
為 True 時,若複數值的實部或虛部為 nan,則帶有 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