Pandas: so verwenden sie dropna() mit thresh
Sie können die Funktion dropna() verwenden, um Zeilen aus einem Pandas-DataFrame zu entfernen, die fehlende Werte enthalten.
Sie können das Argument thresh auch verwenden, um die Mindestanzahl an Nicht-NaN-Werten anzugeben, die eine Zeile oder Spalte haben muss, um im DataFrame beibehalten zu werden.
Hier sind die gebräuchlichsten Möglichkeiten, das Schwellenwertargument in der Praxis zu verwenden:
Methode 1: Behalten Sie nur Zeilen mit einer Mindestanzahl an Nicht-NaN-Werten bei
#only keep rows with at least 2 non-NaN values df. dropna (thresh= 2 )
Methode 2: Behalten Sie nur Zeilen mit einem Mindestprozentsatz an Nicht-NaN-Werten bei
#only keep rows with at least 70% non-NaN values df. dropna (thresh= 0.7 * len (df. columns ))
Methode 3: Behalten Sie nur Spalten mit einer Mindestanzahl an Nicht-NaN-Werten bei
#only keep columns with at least 6 non-NaN values df. dropna (thresh= 6 ,axis= 1 )
Methode 4: Behalten Sie nur Spalten mit einem Mindestprozentsatz an Nicht-NaN-Werten bei
#only keep columns with at least 70% non-NaN values df. dropna (thresh= 0.7 * len (df), axis= 1 )
Die folgenden Beispiele zeigen, wie jede Methode in der Praxis mit dem folgenden Pandas DataFrame verwendet wird:
import pandas as pd import numpy as np #createDataFrame df = pd. DataFrame ({' team ': ['A', 'B', 'C', 'D', 'E', 'F', 'G', 'H'], ' points ': [18, np.nan, 19, 14, 14, 11, 20, np.nan], ' assists ': [5, np.nan, np.nan, 9, np.nan, 9, 9, 4], ' rebounds ': [11, np.nan, 10, 6, 6, 5, 9, np.nan]}) #view DataFrame print (df) team points assists rebounds 0 A 18.0 5.0 11.0 1 B NaN NaN NaN 2 C 19.0 NaN 10.0 3D 14.0 9.0 6.0 4 E 14.0 NaN 6.0 5 F 11.0 9.0 5.0 6G 20.0 9.0 9.0 7H NaN 4.0 NaN
Beispiel 1: Behalten Sie nur Zeilen mit einer Mindestanzahl an Nicht-NaN-Werten bei
Wir können die folgende Syntax verwenden, um nur Zeilen im DataFrame zu behalten, die mindestens zwei Nicht-NaN-Werte haben:
#only keep rows with at least 2 non-NaN values df. dropna (thresh= 2 ) team points assists rebounds 0 A 18.0 5.0 11.0 2 C 19.0 NaN 10.0 3D 14.0 9.0 6.0 4 E 14.0 NaN 6.0 5 F 11.0 9.0 5.0 6G 20.0 9.0 9.0 7H NaN 4.0 NaN
Beachten Sie, dass die Zeile an Indexposition 1 entfernt wurde, da sie in der gesamten Zeile nur einen Nicht-NaN-Wert hatte.
Beispiel 2: Behalten Sie nur Zeilen mit einem Mindestprozentsatz an Nicht-NaN-Werten bei
Wir können die folgende Syntax verwenden, um nur die Zeilen im DataFrame zu behalten, die mindestens 70 % Nicht-NaN-Werte haben:
#only keep rows with at least 70% non-NaN values df. dropna (thresh= 0.7 * len (df. columns )) team points assists rebounds 0 A 18.0 5.0 11.0 2 C 19.0 NaN 10.0 3D 14.0 9.0 6.0 4 E 14.0 NaN 6.0 5 F 11.0 9.0 5.0 6G 20.0 9.0 9.0
Beachten Sie, dass die Zeilen an den Indexpositionen 1 und 7 entfernt wurden, da diese Zeilen nicht mindestens 70 % der Werte als Nicht-NaN-Werte enthielten.
Beispiel 3: Behalten Sie nur Spalten mit einer Mindestanzahl an Nicht-NaN-Werten bei
Wir können die folgende Syntax verwenden, um nur die Spalten im DataFrame zu behalten, die mindestens 6 Nicht-NaN-Werte haben:
#only keep columns with at least 6 non-NaN values df. dropna (thresh= 6 ,axis= 1 ) team points rebounds 0 A 18.0 11.0 1 B NaN NaN 2 C 19.0 10.0 3D 14.0 6.0 4E 14.0 6.0 5 F 11.0 5.0 6G 20.0 9.0 7 H NaN NaN
Beachten Sie, dass die Spalte „Assists“ entfernt wurde, da diese Spalte nicht mindestens 6 Nicht-NaN-Werte in der Spalte enthielt.
Beispiel 4: Behalten Sie nur Spalten mit einem Mindestprozentsatz an Nicht-NaN-Werten bei
Wir können die folgende Syntax verwenden, um nur die Spalten im DataFrame zu behalten, die mindestens 70 % Nicht-NaN-Werte haben:
#only keep columns with at least 70% non-NaN values df. dropna (thresh= 0.7 * len (df), axis= 1 ) team points rebounds 0 A 18.0 11.0 1 B NaN NaN 2 C 19.0 10.0 3D 14.0 6.0 4E 14.0 6.0 5 F 11.0 5.0 6G 20.0 9.0 7 H NaN NaN
Beachten Sie, dass die Spalte „Unterstützung“ entfernt wurde, da diese Spalte nicht mindestens 70 % Nicht-NaN-Werte enthielt.
Hinweis : Die vollständige Dokumentation der Funktion pandas dropna() finden Sie hier .
Zusätzliche Ressourcen
In den folgenden Tutorials wird erläutert, wie andere häufige Aufgaben in Pandas ausgeführt werden:
Pandas: So setzen Sie den Index nach der Verwendung von dropna() zurück
Pandas: So verwenden Sie dropna() mit bestimmten Spalten
Pandas: So löschen Sie Zeilen basierend auf mehreren Bedingungen