Einführung
In diesem Lab lernst du, wie du die fillna()-Methode in der Pandas-Bibliothek verwendest. Die fillna()-Methode ermöglicht es dir, fehlende oder NaN (Not a Number)-Werte in einem DataFrame mit bestimmten Werten oder unter Verwendung einer bestimmten Methode zu füllen.
Tipps für die VM
Nachdem der VM-Start abgeschlossen ist, klicke in der oberen linken Ecke, um zur Registerkarte Notebook zu wechseln und Jupyter Notebook für die Übung zu nutzen.
Manchmal musst du einige Sekunden warten, bis Jupyter Notebook vollständig geladen ist. Die Validierung von Vorgängen kann aufgrund von Einschränkungen in Jupyter Notebook nicht automatisiert werden.
Wenn du bei der Lernphase Probleme hast, kannst du Labby gerne fragen. Gib nach der Sitzung Feedback, und wir werden das Problem für dich prompt beheben.
Importieren der erforderlichen Bibliotheken
Lassen Sie uns beginnen, indem wir die Pandas-Bibliothek importieren:
import pandas as pd
Erstellen eines DataFrames mit fehlenden Werten
Als nächstes erstellen wir ein DataFrame mit einigen fehlenden Werten:
df = pd.DataFrame([[2, pd.nan, 0], [pd.nan, pd.nan, 5], [pd.nan, 3, pd.nan]], columns=list('ABC'))
print("The DataFrame is:")
print(df)
Fehlende Werte mit einem angegebenen Wert füllen
Wir können die fillna()-Methode verwenden, um alle fehlenden Werte mit einem bestimmten Wert zu ersetzen. Beispielsweise ersetzen wir alle fehlenden Werte im DataFrame mit dem Wert 2:
print("Filling NaN values:")
print(df.fillna(2))
Fehlende Werte mit der Forward-Fill-Methode füllen
Anstatt einen einzelnen Wert zum Auffüllen von fehlenden Werten zu verwenden, können wir nicht-leere Werte mit der forward-fill-Methode (ffill) vorwärts propagieren. Diese Methode füllt fehlende Werte mit dem zuletzt beobachteten nicht-leeren Wert in der gleichen Spalte.
print("Filling NaN values using forward fill method:")
print(df.fillna(method='ffill'))
Fehlende Werte entlang der Spalten mit der Forward-Fill-Methode füllen
Wir können auch die forward-fill-Methode entlang der Spalten verwenden, indem wir den Parameter axis auf 1 setzen.
print("Filling NaN values using forward fill method along the columns:")
print(df.fillna(method='ffill', axis=1))
Fehlende Werte mit der Backward-Fill-Methode füllen
Ähnlich können wir die backward-fill-Methode (bfill) verwenden, um nicht-leere Werte rückwärts zu propagieren. Diese Methode füllt fehlende Werte mit dem nächsten beobachteten nicht-leeren Wert in der gleichen Spalte.
print("Filling NaN values using backward fill method:")
print(df.fillna(method='bfill'))
Ersetze fehlende Werte in bestimmten Spalten mit angegebenen Werten
Wir können fehlende Werte in bestimmten Spalten mit unterschiedlichen bestimmten Werten ersetzen. Beispielsweise ersetzen wir die fehlenden Werte in den Spalten 'A', 'B', 'C' und 'D' mit den Werten 0, 1, 2 und 3 respectivement.
print("Filling NaN values in specific columns:")
new_values = {'A': 0, 'B': 1, 'C': 2, 'D': 3}
print(df.fillna(value=new_values))
Begrenze die Anzahl aufeinanderfolgender NaN-Werte, die gefüllt werden sollen
Wir können auch die Anzahl aufeinanderfolgender NaN-Werte begrenzen, die gefüllt werden sollen, indem wir den Parameter limit verwenden. Beispielsweise begrenzen wir das forward-füllen auf nur einen aufeinanderfolgenden NaN-Wert.
print("Filling NaN values with a limit:")
print(df.fillna(method='ffill', limit=1))
Zusammenfassung
In diesem Lab haben Sie gelernt, wie Sie die fillna()-Methode in der Pandas-Bibliothek verwenden, um fehlende oder NaN-Werte in einem DataFrame zu füllen. Sie haben verschiedene Möglichkeiten zur Befüllung von fehlenden Werten untersucht, darunter das Verwenden eines angegebenen Werts, das forward-füllen, das backward-füllen und das Begrenzen der Anzahl aufeinanderfolgender NaN-Werte, die gefüllt werden sollen. Fillna ist eine nützliche Methode zum Umgang mit fehlenden Daten und zur Gewährleistung der Integrität Ihres DataFrames.