Pandas: nach spalte filtern, die nicht bestimmten werten entspricht


Sie können die folgenden Methoden verwenden, um einen Pandas-DataFrame zu filtern, bei dem eine Spalte nicht bestimmten Werten entspricht:

Methode 1: Filtern Sie, wenn die Spalte nicht einem bestimmten Wert entspricht

 #filter rows where team column is not equal to 'Nets'
df_filtered = df[df[' team '] != ' Nets ']

Methode 2: Filtern, wenn die Spalte nicht mehreren spezifischen Werten entspricht

 #filter rows where team column is not equal to 'Nets', 'Mavs' or 'Kings'
df_filtered = df[ ~ df[' team ']. isin ([' Nets ', ' Mavs ', ' Kings '])]

Die folgenden Beispiele zeigen, wie jede Methode in der Praxis mit dem folgenden Pandas DataFrame verwendet wird:

 import pandas as pd

#createDataFrame
df = pd. DataFrame ({' team ': ['Mavs', 'Mavs', 'Nets', 'Nets', 'Heat', 'Heat', 'Kings'],
                   ' points ': [22, 28, 35, 34, 29, 28, 23]})

#view DataFrame
print (df)

    team points
0 Mavs 22
1 Mavs 28
2 Nets 35
3 Nets 34
4 Heat 29
5 Heat 28
6 Kings 23

Beispiel 1: Filtern, bei dem die Spalte nicht einem bestimmten Wert entspricht

Wir können die folgende Syntax verwenden, um den DataFrame so zu filtern, dass er nur Zeilen enthält, in denen die Teamspalte nicht „Nets“ entspricht:

 #filter rows where team column is not equal to 'Nets'
df_filtered = df[df[' team '] != ' Nets ']

#view filtered DataFrame
print (df_filtered)

    team points
0 Mavs 22
1 Mavs 28
4 Heat 29
5 Heat 28
6 Kings 23

Beachten Sie, dass jede Zeile, in der der Teamname „Nets“ lautete, aus dem DataFrame gefiltert wurde.

Hinweis : Das Symbol != steht in Pandas für „ungleich“.

Beispiel 2: Filtern, bei dem die Spalte nicht mehreren spezifischen Werten entspricht

Wir können die folgende Syntax verwenden, um den DataFrame so zu filtern, dass er nur Zeilen enthält, in denen die Teamspalte nicht „Nets“, „Mavs“ oder „Kings“ entspricht:

 #filter rows where team column is not equal to 'Nets', 'Mavs' or 'Kings'
df_filtered = df[ ~ df[' team ']. isin ([' Nets ', ' Mavs ', ' Kings '])]

#view filtered DataFrame
print (df_filtered)

   team points
4 Heat 29
5 Heat 28

Beachten Sie, dass jede Zeile, in der der Teamname „Nets“, „Mavs“ oder „Kings“ war, aus dem DataFrame gefiltert wurde.

Hinweis : Das Symbol ~ steht in Pandas für „Nein“.

Dokumentation : Die vollständige Dokumentation für die Pandas-Funktion isin() finden Sie hier .

Zusätzliche Ressourcen

In den folgenden Tutorials wird erläutert, wie Sie andere häufige Panda-Aufgaben ausführen:

Pandas: So fügen Sie einen Filter zur Pivot-Tabelle hinzu
Pandas: So filtern Sie „Enthält nicht“
Pandas: So filtern Sie Zeilen, die eine bestimmte Zeichenfolge enthalten

Einen Kommentar hinzufügen

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