Pandas: so löschen sie zeilen, die einen bestimmten wert enthalten


Mit der folgenden Syntax können Sie Zeilen in einem Pandas-DataFrame löschen, die einen bestimmten Wert in einer bestimmten Spalte enthalten:

 #drop rows that contain specific 'value' in 'column_name'
df = df[df. column_name != value ]

Mit der folgenden Syntax können Sie Zeilen in einem Pandas-DataFrame löschen, die einen beliebigen Wert in einer bestimmten Liste enthalten:

 #define values
values = [value1, value2, value3, ...]

#drop rows that contain any value in the list
df = df[df. column_name . isin (values) == False ]

Die folgenden Beispiele zeigen, wie Sie diese Syntax in der Praxis anwenden können.

Beispiel 1: Zeilen löschen, die einen bestimmten Wert enthalten

Der folgende Code zeigt, wie alle Zeilen gelöscht werden, die einen bestimmten Wert in einer Spalte enthalten:

 import pandas as pd

#createDataFrame
df = pd. DataFrame ({' team ': ['Mavs', 'Lakers', 'Spurs', 'Cavs'],
                   ' name ': ['Dirk', 'Kobe', 'Tim', 'Lebron'],
                   ' rebounds ': [11, 7, 14, 7],
                   ' points ': [26, 31, 22, 29]})

#view DataFrame
df

        team name rebound points
0 Mavs Dirk 11 26
1 Lakers Kobe 7 31
2 Spurs Tim 14 22
3 Cavs LeBron 7 29

#drop any rows that have 7 in the rebounds column
df = df[df. rebounds != 7 ]

#view resulting DataFrame
df

        team name rebound points
0 Mavs Dirk 11 26
2 Spurs Tim 14 22

Beispiel 2: Zeilen mit Werten aus einer Liste entfernen

Der folgende Code zeigt, wie alle Zeilen aus dem DataFrame entfernt werden, die einen Wert in einer Liste enthalten:

 import pandas as pd

#createDataFrame
df = pd. DataFrame ({' team ': ['Mavs', 'Lakers', 'Spurs', 'Cavs'],
                   ' name ': ['Dirk', 'Kobe', 'Tim', 'Lebron'],
                   ' rebounds ': [11, 7, 14, 7],
                   ' points ': [26, 31, 22, 29]})

#view DataFrame
df

        team name rebound points
0 Mavs Dirk 11 26
1 Lakers Kobe 7 31
2 Spurs Tim 14 22
3 Cavs LeBron 7 29

#define list of values
values = [7, 11]

#drop any rows that have 7 or 11 in the rebounds column
df = df[df. rebounds . isin (values) == False ]

#view resulting DataFrame
df

        team name rebound points
2 Spurs Tim 14 22

Beispiel 3: Zeilen entfernen, die bestimmte Werte in mehreren Spalten enthalten

Der folgende Code zeigt, wie man Zeilen aus dem DataFrame entfernt, die einen bestimmten Wert in einer von mehreren Spalten enthalten:

 import pandas as pd

#createDataFrame
df = pd. DataFrame ({' team ': ['Mavs', 'Lakers', 'Spurs', 'Cavs'],
                   ' name ': ['Dirk', 'Kobe', 'Tim', 'Lebron'],
                   ' rebounds ': [11, 7, 14, 7],
                   ' points ': [26, 31, 22, 29]})

#view DataFrame
df

        team name rebound points
0 Mavs Dirk 11 26
1 Lakers Kobe 7 31
2 Spurs Tim 14 22
3 Cavs LeBron 7 29

#drop any rows that have 11 in the rebounds column or 31 in the points column
df = df[(df. rebounds != 11 ) & (df. points != 31 )]

#view resulting DataFrame
df

team name rebound points
2 Spurs Tim 14 22
3 Cavs LeBron 7 29

Zusätzliche Ressourcen

So löschen Sie Zeilen nach Index in Pandas
So löschen Sie Spalten nach Index in Pandas
So löschen Sie Zeilen, die eine bestimmte Zeichenfolge in Pandas enthalten

Einen Kommentar hinzufügen

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