首頁 >後端開發 >Python教學 >如何對兩個以上的陣列執行 Numpy 的邏輯或?

如何對兩個以上的陣列執行 Numpy 的邏輯或?

Barbara Streisand
Barbara Streisand原創
2024-11-27 19:10:11453瀏覽

How to Perform Numpy's Logical OR on More Than Two Arrays?

用於兩個以上參數的 Numpy 邏輯或

Numpy 中的邏輯_or 函數通常只對兩個陣列進行操作。但是,如果您需要計算兩個以上數組的並集,可以考慮多種方法。

連結邏輯運算子

一種方法涉及連結多個邏輯_or 呼叫,如下所示:

x = np.array([True, True, False, False])
y = np.array([True, False, True, False])
z = np.array([False, False, False, False])
result = np.logical_or(np.logical_or(x, y), z)  # Union of arrays
print(result)  # Output: [ True  True  True False]

NumPy的reduce函數

另一個方法是使用reduce function:

import numpy as np

# Union using reduce
result = np.logical_or.reduce((x, y, z))  # Union of arrays
print(result)  # Output: [ True  True  True False]

此方法概括了鍊式方法,也可以與多維數組一起使用。

其他方法

除了上述方法之外,您還可以考慮:

  • Python 的reduce function:
import functools

result = functools.reduce(np.logical_or, (x, y, z))  # Union of arrays
print(result)  # Output: [ True  True  True False]
  • NumPy任何具有軸規範的函數:
result = np.any((x, y, z), axis=0)  # Union of arrays
print(result)  # Output: [ True  True  True False]

Logical_xor 的注意事項

用於邏輯獨佔等操作或(邏輯異或),NumPy 不提供全部/任意型別功能。

以上是如何對兩個以上的陣列執行 Numpy 的邏輯或?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn