Heim >Backend-Entwicklung >Python-Tutorial >Wie führe ich NumPys logical_or für mehr als zwei Arrays durch?
Numpy logical_or für mehr als zwei Argumente
Numpys logical_or-Funktion kann nur zwei Arrays gleichzeitig vergleichen. Um die Vereinigung von mehr als zwei Arrays zu finden, haben Sie mehrere Möglichkeiten.
Logical_or-Aufrufe verketten
Sie können mehrere Logical_or-Aufrufe miteinander verketten, dies kann jedoch umständlich werden. Zum Beispiel:
x = np.array([True, True, False, False]) y = np.array([True, False, True, False]) z = np.array([False, False, False, False]) np.logical_or(np.logical_or(x, y), z)
Reduzieren verwenden
NumPy bietet eine Reduzierungsfunktion, die Verkettungsvorgänge verallgemeinern kann. Zum Beispiel:
np.logical_or.reduce((x, y, z))
Dies gibt ein Array zurück, in dem jedes Element die Vereinigung der entsprechenden Elemente in den Eingabearrays ist.
Mit Pythons functools.reduce
Hierfür kann auch die Funktion functools.reduce von Python verwendet werden Zweck:
functools.reduce(np.logical_or, (x, y, z))
Die Reduzierung von NumPy ist jedoch im Allgemeinen effizienter.
Verwendung von np.any
Die np.any-Funktion von NumPy kann ebenfalls verwendet werden verwendet, um die Gewerkschaft zu finden. Es muss jedoch mit einem Achsenargument verwendet werden:
np.any((x, y, z), axis=0)
Dies gibt ein Array zurück, in dem jedes Element die Vereinigung der entsprechenden Elemente in den Eingabearrays entlang der angegebenen Achse ist.
Hinweis: Diese Techniken gelten auch für die Funktion „logical_and“ von Numpy zum Ermitteln der Schnittmenge von mehr als zwei Arrays.
Das obige ist der detaillierte Inhalt vonWie führe ich NumPys logical_or für mehr als zwei Arrays durch?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!