Entfernen Sie Zeilen mit NaN aus einem Pandas DataFrame
Inhaltsverzeichnis
- Einführung in die Pandas-Bibliothek
- Erstellen eines Beispiel-Datenrahmens
- Entfernen von Zeilen mit NaN-Werten aus einem Datenrahmen
- Verwendung der
dropna
-Funktion zum Entfernen aller Zeilen mit NaN-Werten
- Entfernen von Zeilen mit NaN-Werten in einer bestimmten Spalte
- Verwendung der
notna
-Funktion zum Entfernen von Zeilen mit NaN-Werten
- Verwendung der
notnull
-Funktion zum Entfernen von Zeilen mit NaN-Werten
- Entfernen von Zeilen, in denen alle Werte NaN sind
- Verwendung der
notna
- und any
-Funktionen zum Entfernen von Zeilen mit NaN-Werten
- Verwendung der
notnull
- und any
-Funktionen zum Entfernen von Zeilen mit NaN-Werten
- Festlegen einer Mindestanzahl von nicht NaN-Werten pro Zeile
📝 Artikel: Wie man Zeilen mit NaN-Werten in einem Pandas Datenrahmen entfernt
In diesem Artikel erfahren Sie, wie Sie Zeilen mit NaN-Werten aus einem Datenrahmen entfernen können. Wir werden die Pandas-Bibliothek verwenden, um dies im Python-Programmiersprache zu demonstrieren.
1. Einführung in die Pandas-Bibliothek
Die Pandas-Bibliothek ist eine beliebte Open-Source-Bibliothek, die zum Datenmanipulation und zur Datenanalyse in Python verwendet wird. Sie stellt Datenstrukturen und Funktionen bereit, die es uns ermöglichen, effizient mit tabellarischen Daten umzugehen.
2. Erstellen eines Beispiel-Datenrahmens
Bevor wir Zeilen mit NaN-Werten entfernen können, müssen wir zunächst einen Beispiel-Datenrahmen erstellen. Hier ist der Python-Code, um dies zu tun:
import pandas as pd
# Erstellen eines Beispiel-Datenrahmens
data = pd.DataFrame({'X1': [1, 2, 3, pd.NaT, 5], 'X2': [6, pd.NaT, 8, 9, 10], 'X3': [11, 12, pd.NaT, 14, 15]})
print(data)
Dieser Code erstellt einen Datenrahmen mit dem Namen "data", der sechs Zeilen und drei Spalten enthält. Einige Zellen in diesem Datenrahmen enthalten NaN-Werte.
3. Entfernen von Zeilen mit NaN-Werten aus einem Datenrahmen
Verwendung der dropna
-Funktion zum Entfernen aller Zeilen mit NaN-Werten
Der einfachste Weg, Zeilen mit NaN-Werten aus einem Datenrahmen zu entfernen, besteht darin, die dropna
-Funktion zu verwenden. Hier ist der Python-Code, um dies zu tun:
data_cleaned = data.dropna()
print(data_cleaned)
Durch Ausführen dieses Codes wird ein neuer Datenrahmen mit dem Namen "data_cleaned" erstellt, der alle Zeilen enthält, die keine NaN-Werte enthalten.
Entfernen von Zeilen mit NaN-Werten in einer bestimmten Spalte
Es ist auch möglich, nur die Zeilen mit NaN-Werten in einer bestimmten Spalte zu entfernen. Hier ist der Python-Code, um dies zu tun:
data_cleaned = data.dropna(subset=['X2'])
print(data_cleaned)
Durch Ausführen dieses Codes wird ein neuer Datenrahmen mit dem Namen "data_cleaned" erstellt, der alle Zeilen enthält, die NaN-Werte in der Spalte 'X2' enthalten.
Verwendung der notna
-Funktion zum Entfernen von Zeilen mit NaN-Werten
Anstelle der dropna
-Funktion können wir auch die notna
-Funktion verwenden, um Zeilen mit NaN-Werten zu entfernen. Hier ist der Python-Code, um dies zu tun:
data_cleaned = data[data['X2'].notna()]
print(data_cleaned)
Durch Ausführen dieses Codes wird ein neuer Datenrahmen mit dem Namen "data_cleaned" erstellt, der alle Zeilen enthält, die nicht NaN in der Spalte 'X2' sind.
Verwendung der notnull
-Funktion zum Entfernen von Zeilen mit NaN-Werten
Ähnlich wie bei der notna
-Funktion können wir auch die notnull
-Funktion verwenden, um Zeilen mit NaN-Werten zu entfernen. Hier ist der Python-Code, um dies zu tun:
data_cleaned = data[data['X2'].notnull()]
print(data_cleaned)
Durch Ausführen dieses Codes wird ein neuer Datenrahmen mit dem Namen "data_cleaned" erstellt, der alle Zeilen enthält, die nicht NaN in der Spalte 'X2' sind.
Entfernen von Zeilen, in denen alle Werte NaN sind
Manchmal möchten wir nur die Zeilen entfernen, in denen alle Werte NaN sind. Hier ist der Python-Code, um dies zu tun:
data_cleaned = data.dropna(how='all')
print(data_cleaned)
Durch Ausführen dieses Codes wird ein neuer Datenrahmen mit dem Namen "data_cleaned" erstellt, der alle Zeilen enthält, die nicht alle Werte NaN enthalten.
Verwendung der notna
- und any
-Funktionen zum Entfernen von Zeilen mit NaN-Werten
Wir können auch die Kombination der notna
- und any
-Funktionen verwenden, um Zeilen mit NaN-Werten zu entfernen. Hier ist der Python-Code, um dies zu tun:
data_cleaned = data[data.notna().any(axis=1)]
print(data_cleaned)
Durch Ausführen dieses Codes wird ein neuer Datenrahmen mit dem Namen "data_cleaned" erstellt, der alle Zeilen enthält, die mindestens einen gültigen Wert enthalten.
Verwendung der notnull
- und any
-Funktionen zum Entfernen von Zeilen mit NaN-Werten
Alternativ können wir auch die Kombination der notnull
- und any
-Funktionen verwenden, um Zeilen mit NaN-Werten zu entfernen. Hier ist der Python-Code, um dies zu tun:
data_cleaned = data[data.notnull().any(axis=1)]
print(data_cleaned)
Durch Ausführen dieses Codes wird ein neuer Datenrahmen mit dem Namen "data_cleaned" erstellt, der alle Zeilen enthält, die mindestens einen gültigen Wert enthalten.
Festlegen einer Mindestanzahl von nicht NaN-Werten pro Zeile
Schließlich können wir spezifizieren, dass wir nur Zeilen mit einer bestimmten Anzahl von nicht NaN-Werten behalten möchten. Wir können dies tun, indem wir die dropna
-Funktion mit dem thresh
-Argument verwenden. Hier ist der Python-Code, um dies zu tun:
data_cleaned = data.dropna(thresh=2)
print(data_cleaned)
Durch Ausführen dieses Codes wird ein neuer Datenrahmen mit dem Namen "data_cleaned" erstellt, der nur die Zeilen enthält, die mindestens zwei gültige Werte enthalten.
Das war alles, was ich in diesem Artikel erklären wollte. Wenn Sie mehr über dieses Thema erfahren möchten, können Sie meine Homepage, statisticsglobe.com, besuchen, da ich kürzlich ein Tutorial veröffentlicht habe, in dem ich den Inhalt dieses Artikels detaillierter erkläre. Den Link zu diesem Tutorial werde ich in die Beschreibung des Videos stellen, damit Sie es dort finden können. Wenn Ihnen dieser Artikel gefallen hat oder wenn Sie Fragen haben, lassen Sie es mich im Kommentarbereich unten wissen. Ich werde versuchen, auf alle Kommentare so schnell wie möglich zu antworten. Stellen Sie außerdem sicher, dass Sie meinen YouTube-Kanal abonnieren, um über zukünftige Videoveröffentlichungen informiert zu werden. Ich habe bereits etwa 500 Videos auf diesem Kanal veröffentlicht und veröffentliche täglich neue Videos. Vielen Dank fürs Zuschauen. Wir sehen uns im nächsten Video.