Numpy NP.wo mehrere Bedingungen

Numpy NP.wo mehrere Bedingungen
In diesem Tutorial erfahren Sie die verschiedenen Methoden, mit denen Sie mehrere Bedingungen mit dem NP angeben können.wo () Funktion.

Methode 1 - Numpy.wobei () mehrere Bedingungen mit dem und dem Bediener unterbrochen werden

Die Funktion WO () in Numpy ermöglicht es uns, Elemente aus einem bestimmten Array auszuwählen, das mit einer bestimmten Bedingung übereinstimmt. Standardmäßig akzeptiert die Funktion eine einzelne Bedingung, die mit dem angegebenen Elementarray übereinstimmt. Was ist, wenn wir in einem bestimmten Array nach mehreren Bedingungen prüfen müssen? Zu diesem Zweck können wir Pythons logische Operatoren verwenden, um dies zu erreichen. Ein solcher Bediener ist der & (und) Operator. Es ermöglicht es uns, mehrere Bedingungen innerhalb der Where -Funktion anzugeben und mit dem & Operator hinzuzufügen und zusammenzuschließen. Die Funktion nimmt alle angegebenen Bedingungen an und gibt die Elemente zurück, die allen Bedingungen entsprechen.

Wir können dies mit einem Beispiel veranschaulichen, wie unten gezeigt:

Numph als NP importieren
arr = np.Array ([100,120.344.232.343.456.674.637])
new_arr = arr [np.wo ((arr> 300) & (arr<500))]
print (new_arr)

Im obigen Programm erstellen wir zunächst ein Array, das eine Reihe von Ganzzahlen hält. Anschließend erstellen wir ein neues Array und verwenden die Funktion, in der die Funktion für mehrere Bedingungen filtert wird. Wenn ein Element im Array größer als 300 und weniger als 500 ist, fügen Sie es dem Neuarray hinzu. Schließlich drucken wir das resultierende Array:

Die Verwendung des & Operators stellt sicher, dass beide Bedingungen wahr sind.

Methode 2 - Numpy.wobei () mehrere Bedingungen mit dem oder Operator unter Verwendung

In einigen Fällen möchten Sie möglicherweise, dass nur eine der mehreren Bedingungen wahr ist. Dafür können wir den oder den Bediener verwenden. Dies gibt an, wo die Funktion alle bereitgestellten Bedingungen bewertet und ob ein Element in dem angegebenen Array mit einem von ihnen übereinstimmt, fügen Sie sie dem Ergebnis hinzu.

Nehmen Sie das nachstehend gezeigte Beispielergebnis:

Numph als NP importieren
arr = np.Array ([100,120.344.232.343.456.674.637])
new_arr = arr [np.wobei ((arr> 300) | (arr == 500))]
print (new_arr)

Im obigen Beispiel verwenden wir die | Betreiber angeben mehrere Bedingungen und speichern die resultierenden Werte in der Variablen New_arr. Wenn ein Element des Eingangsarrays größer oder gleich 500 ist, fügen Sie es dem Neuarray hinzu.

Die resultierende Ausgabe:

Wir können sehen, dass alle zurückgegebenen Elemente größer als 300 sind.

Methode 3 - Numpy.wo () mehrere Bedingungen mit Numpy.logical_and () Funktion

Wenn Sie die logischen Operatoren von Python nicht verwenden möchten, hat Numpy eine logical_and () -Funktion, die den & Bediener ersetzen kann.

Die Funktion wird verwendet, um die Elementwise-Wahrheit eines Wertes von An und Gate zu bestimmen. Lassen Sie uns sehen, wie wir diese Funktion übernehmen können, um mehrere Bedingungen in einer numpy WO () -Funktion anzugeben.

Numph als NP importieren
arr = np.Array ([100,120.344.232.343.456.674.637])
new_arr = arr [np.wo (np.logical_and (arr> 300, arr<400))]
print (new_arr)

Im obigen Code definieren wir zunächst eine Reihe von ganzen Zahlen, deren Elemente wir filtern möchten.

Wir verwenden dann den NP.WO () Funktion und übergeben die Bedingungen, die wir bewerten möchten. In diesem Fall verabschieden wir sie als Argumente des NP.LOGICAL_AND -Funktion.

Die Funktion bewertet die Bedingungen und filtert die Elemente, die den angegebenen Werten entsprechen.

Ein Beispielausgang ist wie gezeigt:

Aus der Ausgabe stimmen nur zwei Elemente mit den angegebenen Bedingungen überein.

Methode 4 - Numpy.wo () mehrere Bedingungen mit Numpy.logical_or () Funktion

In ähnlicher Weise hat Numpy eine Funktion, die die gleiche Aufgabe wie die logische oder die Python -oder. Der Numpy.Logical_or () Funktion wird verwendet.

Für unseren Fall können wir mehrere Bedingungen angeben und an die NP weitergeben.wo () Funktion.

Ein Beispielcode ist wie unten gezeigt:

Numph als NP importieren
arr = np.Array ([100,120.344.232.343.456.674.637])
new_arr = arr [np.wo (np.logical_or (arr> 300, arr%2 == 0))]
print (new_arr)

Hier sollte die Funktion alle Elemente zurückgeben, die entweder größer als 300 oder sogar zahlen sind.

Die resultierenden Werte sind:

Es klappt.

Schließen

Das war's für diesen einen. In diesem Tutorial haben Sie erfahren.