Panda's: filter op kolom die niet gelijk is aan specifieke waarden


U kunt de volgende methoden gebruiken om een Panda DataFrame te filteren waarbij een kolom niet gelijk is aan specifieke waarden:

Methode 1: Filter waarbij de kolom niet gelijk is aan een specifieke waarde

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

Methode 2: Filter wanneer de kolom niet gelijk is aan meerdere specifieke waarden

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

De volgende voorbeelden laten zien hoe u elke methode in de praktijk kunt gebruiken met de volgende panda’s DataFrame:

 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

Voorbeeld 1: Filter waarbij de kolom niet gelijk is aan een specifieke waarde

We kunnen de volgende syntaxis gebruiken om het DataFrame te filteren, zodat het alleen rijen bevat waarvan de teamkolom niet gelijk is aan ‚Nets‘:

 #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

Houd er rekening mee dat elke rij waarin de teamnaam ‚Nets‘ was, uit het DataFrame werd gefilterd.

Opmerking : het symbool != staat voor “niet gelijk” bij panda’s.

Voorbeeld 2: Filter waarbij de kolom niet gelijk is aan meerdere specifieke waarden

We kunnen de volgende syntaxis gebruiken om het DataFrame te filteren zodat het alleen rijen bevat waarvan de teamkolom niet gelijk is aan „Nets“, „Mavs“ of „Kings“:

 #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

Houd er rekening mee dat elke rij waarin de teamnaam „Nets“, „Mavs“ of „Kings“ was, uit het DataFrame werd gefilterd.

Opmerking : het symbool ~ staat voor “nee” in panda’s.

Documentatie : U kunt hier de volledige documentatie voor de pandas isin()- functie vinden.

Aanvullende bronnen

In de volgende tutorials wordt uitgelegd hoe u andere veelvoorkomende panda-taken kunt uitvoeren:

Panda’s: filter toevoegen aan draaitabel
Panda’s: Filteren op ‚Bevat niet‘
Panda’s: rijen filteren die een specifieke string bevatten

Einen Kommentar hinzufügen

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