NumPy 陣列相等
-
在 Python 中使用
==
運算子檢查 NumPy 陣列的相等性 -
使用
numpy.array_equal()
函式檢查 NumPy 陣列的相等性 -
使用 Python 中的
numpy.array_equiv()
函式檢查 NumPy 陣列的相等性 -
NumPy 等於 Python 中的
numpy.allcloses()
函式
本文將介紹在 Python 中對 NumPy 陣列進行逐元素相等比較的方法。
在 Python 中使用 ==
運算子檢查 NumPy 陣列的相等性
==
相等比較運算子用於檢查兩個數量是否相等。如果數量相等,==
運算子返回 True
,如果數量不相等,則返回 False
。我們可以使用 ==
運算子和 all()
函式來檢查兩個陣列的所有元素是否相等。下面的程式碼示例向我們展示瞭如何使用 Python 中的 ==
運算子按元素比較兩個陣列的相等性。
import numpy as np
array1 = np.array([1, 2, 3, 4, 5])
array2 = np.array([1, 2, 3, 4, 5])
print((array1 == array2).all())
輸出:
True
在上面的程式碼中,我們逐元素比較了陣列 array1
和 array2
與 ==
運算子和 all()
函式的相等性。我們首先使用 np.array()
函式建立了陣列 array1
和 array2
。然後我們使用 ==
運算子和 all()
函式來檢查 array1
中的所有值是否等於 array2
中的值。這種方法非常有效且易於理解,但使用這種方法有一些缺點。例如,如果其中一個陣列為空,而第二個陣列僅包含一個元素,則此方法將返回 True
值。另一個問題是,如果兩個陣列的形狀不同,這種方法會給我們帶來錯誤。
使用 numpy.array_equal()
函式檢查 NumPy 陣列的相等性
實現與前一種方法相同的目標的更徹底和無錯誤的方法是使用 numpy.array_equal()
函式。numpy.array_equal()
函式比較兩個陣列的相等性。numpy.array_equal()
函式在陣列相等時返回 True
,如果陣列不相等則返回 False
。下面的程式碼示例向我們展示瞭如何使用 numpy.array_equal()
函式按元素比較兩個陣列的相等性。
import numpy as np
array1 = np.array([1, 2, 3, 4, 5])
array2 = np.array([1, 2, 3, 4, 5])
print(np.array_equal(array1, array2))
輸出:
True
在上面的程式碼中,我們使用 np.array_equal()
函式來檢查 array1
中的所有值是否等於 array2
中的值。
使用 Python 中的 numpy.array_equiv()
函式檢查 NumPy 陣列的相等性
numpy.array_equiv()
函式 也可用於在 Python 中檢查兩個陣列是否相等。numpy.array_equiv()
函式返回 True
如果兩個陣列具有相同的形狀並且所有元素都相等,否則返回 False
。
import numpy as np
array1 = np.array([1, 2, 3, 4, 5])
array2 = np.array([0, 2, 3, 4, 5])
print(np.array_equiv(array1, array2))
輸出:
False
在上面的程式碼中,我們使用 np.array_equiv()
函式來檢查 array1
是否等於 array2
。
NumPy 等於 Python 中的 numpy.allcloses()
函式
numpy.allclose()
函式還可用於檢查 Python 中的兩個陣列在元素方面是否相等。如果兩個陣列中的所有元素在指定容差範圍內相等,則 numpy.allclose()
函式 返回 True
。
import numpy as np
array1 = np.array([1, 2, 3, 4, 5])
array2 = np.array([1, 2, 3, 4, 5])
print(np.allclose(array1, array2))
輸出:
False
在上面的程式碼中,我們使用 np.allclose()
函式來檢查 array1
是否等於 array2
。
Maisam is a highly skilled and motivated Data Scientist. He has over 4 years of experience with Python programming language. He loves solving complex problems and sharing his results on the internet.
LinkedIn