Heim > Backend-Entwicklung > Python-Tutorial > Wie können Z-Scores dabei helfen, Ausreißer aus Pandas-DataFrames zu identifizieren und zu entfernen?

Wie können Z-Scores dabei helfen, Ausreißer aus Pandas-DataFrames zu identifizieren und zu entfernen?

DDD
Freigeben: 2024-12-02 18:19:15
Original
179 Leute haben es durchsucht

How Can Z-Scores Help Identify and Remove Outliers from Pandas DataFrames?

Erkennen und Ausschließen von Ausreißern in Pandas-DataFrames mithilfe von Z-Scores

Das Identifizieren und Entfernen von Ausreißern aus einem Pandas-DataFrame ist entscheidend für die Gewährleistung der Genauigkeit und Zuverlässigkeit der Datenanalyse. Um dies zu erreichen, besteht ein gängiger Ansatz darin, Z-Scores zu verwenden, die die Anzahl der Standardabweichungen eines Datenpunkts vom Mittelwert messen.

Die Implementierung dieses Ansatzes erfordert die Verwendung der Funktion scipy.stats.zscore. Hiermit werden Z-Scores für ein bestimmtes Datenarray berechnet. Durch Anwenden von Z-Scores auf jede Spalte in einem DataFrame wird es möglich, zu bestimmen, welche Zeilen Werte enthalten, die deutlich vom Mittelwert abweichen.

Zum Beispiel, um alle Zeilen auszuschließen, in denen eine bestimmte Spalte, wie z. B. „ Vol“ Ausreißer enthält, kann der folgende Ausdruck verwendet werden:

df[(np.abs(stats.zscore(df["Vol"])) < 3).all(axis=1)]
Nach dem Login kopieren

Dieser Ausdruck berechnet den absoluten Z-Score für jeden Wert in der Spalte „Vol“. Absolute Werte werden verwendet, um die Richtung der Abweichung vom Mittelwert außer Acht zu lassen. Das Ergebnis ist eine boolesche Maske, bei der „True“ Zeilen ohne Ausreißer angibt. Durch die Verwendung dieser Maske zum Indizieren des DataFrame werden Zeilen mit extremen „Vol“-Werten effektiv ausgeschlossen.

Wenn mehrere Spalten berücksichtigt werden müssen, kann die Syntax geändert werden, um Zeilen mit Ausreißern in jeder Spalte zu überprüfen:

df[(np.abs(stats.zscore(df)) < 3).all(axis=1)]
Nach dem Login kopieren

In diesem Fall berechnet (np.abs(stats.zscore(df)) < 3) die Z-Scores für alle Spalten und wendet die an 3 Standardabweichungsschwellenwert. Die Bedingung all(axis=1) wählt Zeilen aus, die die Kriterien für alle Spalten erfüllen.

Durch die Verwendung von Z-Scores und den bereitgestellten Ausdrücken wird es einfach, ausreißerische Datenpunkte herauszufiltern und so einen sauberen und zuverlässigen Datensatz sicherzustellen zur weiteren Analyse.

Das obige ist der detaillierte Inhalt vonWie können Z-Scores dabei helfen, Ausreißer aus Pandas-DataFrames zu identifizieren und zu entfernen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage