Pandas: so filtern sie serien nach wert
Sie können die folgenden Methoden verwenden, um Werte in einer Pandas-Reihe zu filtern:
Methode 1: Filtern Sie Werte basierend auf einer einzelnen Bedingung
#filter for values equal to 7 my_series. loc [ lambda x:x == 7]
Methode 2: Werte mithilfe der „OR“-Bedingung filtern
#filter for values less than 10 or greater than 20 my_series. loc [ lambda x: (x < 10) | (x > 20)]
Methode 3: Werte mithilfe der „AND“-Bedingung filtern
#filter for values greater than 10 and less than 20 my_series. loc [ lambda x: (x > 10) & (x < 20)]
Methode 4: Filtern Sie die in der Liste enthaltenen Werte
#filter for values that are equal to 4, 7, or 23 my_series[my_series. isin ([4, 7, 23])]
In diesem Tutorial wird erklärt, wie Sie die einzelnen Methoden in der Praxis mit der folgenden Pandas-Serie anwenden:
import pandas as pd
#create pandas Series
data = pd. Series ([4, 7, 7, 12, 19, 23, 25, 30])
#view pandas Series
print (data)
0 4
1 7
2 7
3 12
4 19
5 23
6 25
7 30
dtype: int64
Beispiel 1: Werte basierend auf einer Bedingung filtern
Der folgende Code zeigt, wie die Pandas-Reihe nach Werten gleich 7 gefiltert wird:
#filter for values equal to 7 data. loc [ lambda x:x == 7] 1 7 2 7 dtype: int64
Wir können auch Werte ungleich 7 filtern:
#filter for values not equal to 7 data. loc [ lambda x:x != 7] 0 4 3 12 4 19 5 23 6 25 7 30 dtype: int644
Beispiel 2: Filtern Sie Werte mithilfe der „OR“-Bedingung
Der folgende Code zeigt, wie die Pandas-Reihe nach Werten kleiner als 10 oder größer als 20 gefiltert wird:
#filter for values less than 10 or greater than 20 data. loc [ lambda x: (x < 10) | (x > 20)] 0 4 1 7 2 7 5 23 6 25 7 30 dtype: int64
Beispiel 3: Filtern Sie Werte mithilfe der „AND“-Bedingung
Der folgende Code zeigt, wie die Pandas-Reihe nach Werten größer als 10 und kleiner als 20 gefiltert wird:
#filter for values greater than 10 and less than 20 data. loc [ lambda x: (x > 10) & (x < 20)] 3 12 4 19 dtype: int64
Beispiel 4: Filtern Sie die in der Liste enthaltenen Werte
Der folgende Code zeigt, wie die Pandas-Reihe nach in einer Liste enthaltenen Werten gefiltert wird:
#filter for values that are equal to 4, 7, or 23 data[data. isin ([4, 7, 23])] 0 4 1 7 2 7 5 23 dtype: int64
Zusätzliche Ressourcen
In den folgenden Tutorials wird erläutert, wie Sie andere gängige Filtervorgänge in Python durchführen:
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