Numpy のlogical_or 関数は、通常、2 つの配列のみで動作します。ただし、3 つ以上の配列の和集合を計算する必要がある場合は、いくつかのアプローチを検討できます。
1 つの方法では、次のように複数のlogical_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]
別のアプローチは、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]
このメソッドは連鎖アプローチを一般化し、多次元配列でも使用できます。
前述のメソッド以外にも、次のことができます。
import functools result = functools.reduce(np.logical_or, (x, y, z)) # Union of arrays print(result) # Output: [ True True True False]
result = np.any((x, y, z), axis=0) # Union of arrays print(result) # Output: [ True True True False]
論理排他などの演算用または (logical_xor)、NumPy は all/any 型を提供しません関数。
以上が3 つ以上の配列に対して Numpy の論理和を実行するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。