So filtern sie ein numpy-array (4 beispiele)


Sie können die folgenden Methoden verwenden, um die Werte eines NumPy-Arrays zu filtern:

Methode 1: Filtern Sie Werte basierend auf einer einzelnen Bedingung

 #filter for values less than 5
my_array[my_array < 5 ]

Methode 2: Werte mithilfe der „OR“-Bedingung filtern

 #filter for values less than 5 or greater than 9
my_array[(my_array < 5 ) | (my_array > 9 )]

Methode 3: Werte mithilfe der „AND“-Bedingung filtern

 #filter for values greater than 5 and less than 9
my_array[(my_array > 5 ) & (my_array < 9 )]

Methode 4: Filtern Sie die in der Liste enthaltenen Werte

 #filter for values that are equal to 2, 3, 5, or 12
my_array[np. in1d (my_array, [2, 3, 5, 12])]

In diesem Tutorial wird erklärt, wie Sie jede Methode in der Praxis mit dem folgenden NumPy-Array verwenden:

 import numpy as np

#create NumPy array
my_array = np. array ([1, 2, 2, 3, 5, 6, 7, 10, 12, 14])

#view NumPy array
my_array

array([ 1, 2, 2, 3, 5, 6, 7, 10, 12, 14])

Beispiel 1: Werte basierend auf einer Bedingung filtern

Der folgende Code zeigt, wie die NumPy-Array-Werte basierend auf einer einzelnen Bedingung gefiltert werden:

 #filter for values less than 5
my_array[(my_array < 5 )]

array([1, 2, 2, 3])

#filter for values greater than 5
my_array[(my_array > 5 )]

array([6,7,10,12,14])

#filter for values equal to 5
my_array[(my_array == 5 )]

array([5])

Beispiel 2: Filtern Sie Werte mithilfe der „OR“-Bedingung

Der folgende Code zeigt, wie die Werte des NumPy-Arrays mithilfe einer „OR“-Bedingung gefiltert werden:

 #filter for values less than 5 or greater than 9
my_array[(my_array < 5 ) | (my_array > 9 )]

array([ 1, 2, 2, 3, 10, 12, 14])

Dieser Filter gibt NumPy-Array-Werte kleiner als 5 oder größer als 9 zurück.

Beispiel 3: Filtern Sie Werte mithilfe der „AND“-Bedingung

Der folgende Code zeigt, wie die Werte des NumPy-Arrays mithilfe einer „AND“-Bedingung gefiltert werden:

 #filter for values greater than 5 and less than 9
my_array[(my_array > 5 ) & (my_array < 9 )]

array([6, 7])

Dieser Filter gibt Werte aus dem NumPy-Array zurück, die größer als 5 und kleiner als 9 sind.

Beispiel 4: Filtern Sie die in der Liste enthaltenen Werte

Der folgende Code zeigt, wie in einer Liste enthaltene NumPy-Array-Werte gefiltert werden:

 #filter for values that are equal to 2, 3, 5, or 12
my_array[np. in1d (my_array, [2, 3, 5, 12])]

array([ 2, 2, 3, 5, 12])

Dieser Filter gibt nur Werte gleich 2, 3, 5 oder 12 zurück.

Hinweis : Die vollständige Dokumentation für die Funktion NumPy in1d() finden Sie hier .

Zusätzliche Ressourcen

In den folgenden Tutorials wird erläutert, wie andere gängige Filtervorgänge in Python ausgeführt werden:

So filtern Sie Pandas DataFrame-Zeilen, die eine bestimmte Zeichenfolge enthalten
So filtern Sie einen Pandas DataFrame nach mehreren Bedingungen
So verwenden Sie den „NOT IN“-Filter in Pandas DataFrame

Einen Kommentar hinzufügen

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert