Sie können die folgende Formel verwenden, um eine Median-IF-Funktion in Google Tabellen auszuführen:
=MEDIAN(IF(GROUP_RANGE=VALUE, MEDIAN_RANGE))
Diese Formel findet den Mittelwert aller Zellen in einem bestimmten Bereich, die …
Ein Ausreißer ist eine Beobachtung, die ungewöhnlich weit von anderen Werten in einem Datensatz entfernt ist. Ausreißer können problematisch sein, da sie die Ergebnisse einer Analyse beeinflussen können.
In diesem Tutorial wird erläutert, wie Sie Ausreißer in Python identifizieren und entfernen.
Bevor Sie Ausreißer entfernen können, müssen Sie zunächst entscheiden, was Sie als Ausreißer betrachten. Es gibt zwei Möglichkeiten, dies zu tun:
1. Verwenden Sie den Interquartilsabstand.
Der Interquartilsabstand ((engl. Interquartile Range = IQR)) ist die Differenz zwischen dem 75. Perzentil (Q3) und dem 25. Perzentil (Q1) in einem Datensatz. Es misst die Streuung der mittleren 50% der Werte.
Sie können eine Beobachtung als Ausreißer definieren, wenn sie das 1,5-fache des Interquartilsabstand größer als das dritte Quartil (Q3) oder das 1,5-fache des Interquartilsabstand kleiner als das erste Quartil (Q1) ist.
Ausreißer = Beobachtungen> Q3 + 1,5 * (engl. Interquartile Range = IQR) oder Q1 – 1,5 * (engl. Interquartile Range = IQR)
2. Verwenden Sie Z-Werte.
Ein Z-Wert gibt an, wie viele Standardabweichungen ein bestimmter Wert vom Mittelwert aufweist. Wir verwenden die folgende Formel, um einen Z-Wer zu berechnen:
z = (X – μ) / σ
wo:
Sie können eine Beobachtung als Ausreißer definieren, wenn sie einen Z-Wert von weniger als -3 oder mehr als 3 aufweist.
Ausreißer = Beobachtungen mit Z-Wert > 3 oder <-3
Sobald Sie sich für einen Ausreißer entschieden haben, können Sie diese identifizieren und aus einem Datensatz entfernen. Um dies zu veranschaulichen, verwenden wir das folgende Pandas DataFrame:
import numpy as np
import pandas as pd
importiere scipy.stats als stats
#Dataframe mit drei Spalten 'A', 'B', 'C' erstellen
np.random.seed(10)
data = pd.DataFrame(np.random.randint(0, 10, size=(100, 3)), columns=['A', 'B', 'C'])
#Die ersten 10 Zeilen anzeigen
data[:10]
A B C
0 13.315865 7.152790 -15.454003
1 -0.083838 6.213360 -7.200856
2 2.655116 1.085485 0.042914
3 -1.746002 4.330262 12.030374
4 -9.650657 10.282741 2.286301
5 4.451376 -11.366022 1.351369
6 14.845370 -10.798049 -19.777283
7 -17.433723 2.660702 23.849673
8 11.236913 16.726222 0.991492
9 13.979964 -2.712480 6.132042
Wir können dann Ausreißer mithilfe der Z-Wert-Methode oder der Interquartilsabstandsmethode definieren und entfernen:
Z-Wert-Methode:
#Finden Sie den absoluten Wert des Z-Werts für jede Beobachtung
z = np.abs(stats.zscore(data))
# Halten Sie nur Zeilen im Dataframe, bei denen alle Z-Werte kleiner als der absolute Wert 3 sind
data_clean = data[(z<3).all(axis=1)]
#finden Sie, wie viele Zeilen noch im Dataframe verbleiben
data_clean.shape
(99,3)
Interquartilsabstandsmethode:
#Finden Sie Q1, Q3 und den Interquartilsabstand für jede Spalte
Q1 = data.quantile(q=.25)
Q3 = data.quantile(q=.75)
(engl. Interquartile Range = IQR) = data.apply(stats.iqr)
# Behalten Sie nur Zeilen im Dataframe bei, deren Werte innerhalb von 1,5 * (engl. Interquartile Range = IQR) von Q1 und Q3 liegen
data_clean = data[~((data (Q3+1.5*(engl. Interquartile Range = IQR)))).any(axis=1)]
#finden Sie, wie viele Zeilen noch im Dataframe verbleiben
data_clean.shape
(89,3)
Wir können sehen, dass die Z-Wert-Methode eine Beobachtung als Ausreißer identifizierte und entfernte, während die Interquartilsabstandsmethode 11 Gesamtbeobachtungen als Ausreißer identifizierte und entfernte.
Wenn ein oder mehrere Ausreißer in Ihren Daten vorhanden sind, sollten Sie zunächst sicherstellen, dass sie nicht auf Dateneingabefehler zurückzuführen sind. Manchmal gibt eine Person beim Aufzeichnen von Daten einfach den falschen Datenwert ein.
Wenn sich herausstellt, dass der Ausreißer auf einen Dateneingabefehler zurückzuführen ist, können Sie ihm einen neuen Wert zuweisen, z. B. den Mittelwert oder den Median des Datensatzes.
Wenn der Wert ein echter Ausreißer ist, können Sie ihn entfernen, wenn er erhebliche Auswirkungen auf Ihre Gesamtanalyse hat. Stellen Sie einfach sicher, dass Sie in Ihrem Abschlussbericht oder Ihrer Analyse erwähnen, dass Sie einen Ausreißer entfernt haben.
Wenn Sie mit mehreren Variablen gleichzeitig arbeiten, können Sie den Mahalanobis-Abstand verwenden, um Ausreißer zu erkennen.
Sie können die folgende Formel verwenden, um eine Median-IF-Funktion in Google Tabellen auszuführen:
=MEDIAN(IF(GROUP_RANGE=VALUE, MEDIAN_RANGE))
Diese Formel findet den Mittelwert aller Zellen in einem bestimmten Bereich, die …
Die prozentuale Änderung der Werte zwischen einer Periode und einer anderen Periode wird wie folgt berechnet:
Prozentuale Änderung = (Wert 2 – Wert 1 ) / Wert 1 * 100
Angenommen, ein Unternehmen macht in …