Heim >Backend-Entwicklung >Python-Tutorial >Wie kann ich Ausreißer effizient aus einer Pandas DataFrame-Spalte entfernen?
Ausschluss von Ausreißern in Pandas DataFrames: Erkennen und Entfernen von Datenanomalien
Bei der Datenanalyse können Ausreißer Ergebnisse verzerren und Interpretationen verzerren. Um dieses Problem zu entschärfen, ist es wichtig, Ausreißer aus Datensätzen zu erkennen und auszuschließen. Dieser Artikel demonstriert eine elegante Methode zum Ausschluss von Ausreißern in Pandas-DataFrames mithilfe der Funktion scipy.stats.zscore.
Angenommen, Sie haben einen DataFrame mit mehreren Spalten, von denen eine (mit dem Namen „Vol“) Werte mit einem Clear enthält Ausreißer (z. B. 4000, während die meisten Werte um 1200 liegen). Um Zeilen mit solchen Ausreißern in einer bestimmten Spalte zu entfernen, führen Sie die folgenden Schritte aus:
Verwenden von scipy.stats.zscore zur Ausreißererkennung
Importieren Notwendige Bibliotheken:
import pandas as pd import numpy as np from scipy import stats
Berechnen Sie den Z-Score für die ausreißeranfällige Spalte:
df["Vol_zscore"] = stats.zscore(df["Vol"])
Erstellen Sie eine Bedingung, um Zeilen innerhalb von drei Standardabweichungen vom Mittelwert zu identifizieren:
mask = np.abs(df["Vol_zscore"]) < 3
Verwenden Sie die Bedingung, um den DataFrame zu filtern und Ausreißer zu entfernen Zeilen:
filtered_df = df[mask]
Durch die Anwendung dieser Schritte können Sie Zeilen mit Ausreißern in einer bestimmten Spalte Ihres Pandas DataFrame effizient erkennen und ausschließen. Mit dieser Methode können Sie Anomalien entfernen, die Ihre Datenanalyse möglicherweise verzerren könnten, und genauere und zuverlässigere Ergebnisse gewährleisten.
Das obige ist der detaillierte Inhalt vonWie kann ich Ausreißer effizient aus einer Pandas DataFrame-Spalte entfernen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!