Pandas: so löschen sie eine spalte, falls vorhanden


Sie können die folgende grundlegende Syntax verwenden, um eine oder mehrere Spalten in einem Pandas-DataFrame zu löschen, sofern vorhanden:

 df = df. drop ([' column1 ', ' column2 '], axis= 1 , errors=' ignore ')

Hinweis: Wenn Sie das Argument error=’ignore‘ nicht verwenden, erhalten Sie eine Fehlermeldung, wenn Sie versuchen, eine nicht vorhandene Spalte zu löschen.

Das folgende Beispiel zeigt, wie diese Syntax in der Praxis verwendet wird.

Beispiel: Löschen Sie die Spalte, falls sie in Pandas vorhanden ist

Angenommen, wir haben den folgenden Pandas-DataFrame, der Informationen über verschiedene Basketballspieler enthält:

 import pandas as pd

#createDataFrame
df = pd. DataFrame ({' team ': ['A', 'B', 'C', 'D', 'E', 'F'],
                   ' points ': [18, 22, 19, 14, 14, 11],
                   ' assists ': [5, 7, 7, 9, 12, 9],
                   ' minutes ': [10.1, 12.0, 9.0, 8.0, 8.4, 7.5],
                   ' all_star ': [True, False, False, True, True, True]})

#view DataFrame
print (df)

  team points assists minutes all_star
0 A 18 5 10.1 True
1 B 22 7 12.0 False
2 C 19 7 9.0 False
3 D 14 9 8.0 True
4 E 14 12 8.4 True
5 F 11 9 7.5 True

Nehmen wir nun an, wir versuchen, die Spalten „minutes_played“ und „points“ zu löschen:

 #drop minutes_played and points columns
df = df. drop ([' minutes_played ', ' points '], axis= 1 )

KeyError: "['minutes_played', 'points'] not found in axis"

Wir erhalten eine Fehlermeldung, weil die Spalte „minutes_played“ nicht als Spaltenname im DataFrame vorhanden ist.

Stattdessen müssen wir die Funktion drop() mit dem Argument „errors=’ignore’“ verwenden:

 #drop minutes_played and points columns
df = df. drop ([' minutes_played ', ' points '], axis= 1 , errors=' ignore ')

#view updated DataFrame
print (df)

  team assists minutes all_star
0 A 5 10.1 True
1 B 7 12.0 False
2 C 7 9.0 False
3 D 9 8.0 True
4 E 12 8.4 True
5 F 9 7.5 True

Beachten Sie, dass die Punktespalte aus dem DataFrame entfernt wurde.

Beachten Sie außerdem, dass wir keine Fehlermeldungen erhalten, obwohl wir versucht haben, eine Spalte mit dem Namen „minutes_played“ zu löschen, die nicht existiert.

Zusätzliche Ressourcen

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

Pandas: So entfernen Sie unbenannte Spalten
Pandas: So entfernen Sie alle Spalten außer bestimmten
Pandas: So löschen Sie alle Zeilen außer einigen

Einen Kommentar hinzufügen

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