如何比較兩個 NumPy 陣列的元素相等性並檢查它們是否完全相等?

DDD
發布: 2024-10-26 15:46:02
原創
200 人瀏覽過

How do you compare two NumPy arrays for element-wise equality and check if they are entirely equal?

比較兩個NumPy 數組的元素相等

比較兩個NumPy 數組的元素相等時,可能很容易使用== 運算符。但是,此方法傳回布林數組,指示每個對應元素對的相等性。要檢查數組是否完全相等,我們需要確定布林數組中的所有元素是否都為 True。

實現此目的的最簡單方法是使用 (A==B).all() 表達式。如果布林數組 (A==B) 的所有元素都為 True,則此表達式傳回單一布林值,該值為 True,表示兩個數組中的每個元素都相等。

範例:

<code class="python">import numpy as np

arr1 = np.array([1, 1, 1])
arr2 = np.array([1, 1, 1])

result = (arr1 == arr2).all()
print(result)  # Output: True</code>
登入後複製

特殊情況與替代方案:

需要注意的是:

  • 使用(A==B)。在極少數情況下,all() 可以傳回 True,其中一個陣列為空,另一個陣列包含單一元素。
  • 如果陣列具有不同的形狀且不可廣播,此方法將引發錯誤。

在這些情況下,或者如果您需要更明確的方法,請考慮使用以下專用函數:

  • np.array_equal(A, B):測試數組是否具有相同的值shape 和所有元素具有相同的值。
  • np.array_equiv(A, B):測試陣列是否可以廣播並且具有相同的值。
  • np.allclose(A, B, ...): 測試陣列是否具有相同的形狀以及它們的元素是否足夠接近(在指定的容差範圍內)。

以上是如何比較兩個 NumPy 陣列的元素相等性並檢查它們是否完全相等?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板
關於我們 免責聲明 Sitemap
PHP中文網:公益線上PHP培訓,幫助PHP學習者快速成長!