Ausreißer finden, ohne Normalverteilung anzunehmen

8

Ich habe kleine Datensätze mit einer Größe von 40-50 Punkten. Ohne davon auszugehen, dass die Daten normal verteilt sind, wollte ich die Ausreißer mindestens mit 90% iger Sicherheit herausfinden. Ich dachte, Boxplot könnte ein guter Weg sein, aber ich bin mir nicht sicher.

Jede Hilfe geschätzt.

Auch bei Boxplot-Implementierungen konnte ich keine Implementierung finden, die neben dem Zeichnen des Plots die Ausreißer explizit ausspuckt.

Abhi
quelle
7
90% Vertrauen von was?
Henry
Was ich manchmal auch sehe, ist, dass Forscher die oberen und unteren X% ihrer Beobachtungen fallen lassen, um den Einfluss von Extremfällen zu verringern. Aber ich bin mir nicht sicher, ob ich damit einverstanden bin, es ist ziemlich willkürlich, nicht wahr?
C. Pieters
Sie müssen nicht davon ausgehen, dass Ihre Daten normal verteilt sind. Da Sie jedoch wissen, mit welchen Daten Sie es zu tun haben, können Sie möglicherweise eine andere parametrische Verteilung verwenden. Beispielsweise sind Wartezeiten häufig Poisson-verteilt. Dann ist es sinnvoll zu sagen, ob ein Poisson-Datenpunkt wahrscheinlich durch eine bestimmte Verteilung von ihnen erzeugt wird.
Jack Tanner

Antworten:

22

Das liegt daran, dass ein solcher Algorithmus nicht existieren kann. Sie benötigen eine angenommene Verteilung, um etwas als außerhalb des Bereichs der erwarteten Werte liegend klassifizieren zu können.

Selbst wenn Sie von einer Normalverteilung ausgehen, ist es ein schwieriges Geschäft, Datenpunkte als Ausreißer zu deklarieren. Im Allgemeinen benötigen Sie nicht nur eine gute Schätzung der tatsächlichen Verteilung, die oft nicht verfügbar ist, sondern auch einen guten theoretisch unterstützten Grund für Ihre Entscheidung (dh das Subjekt hat den Versuchsaufbau irgendwie gebrochen). Ein solches Urteil ist normalerweise in einem Algorithmus nicht zu kodifizieren.

naught101
quelle
11
+1. Die Verwendung von "mit 90% Vertrauen" zeigt auch ein Missverständnis darüber, wie das Konzept des Vertrauens in diesem Fall angewendet werden könnte. Ohne eine Grundlage für ein gewisses Maß an Vertrauen gibt es keinen systematischen Weg, um das mögliche Vertrauensniveau zu quantifizieren. Es würde auf eine willkürliche Sache hinauslaufen, als würde man sagen "Ich bin x% zuversichtlich, dass diese Suppe zu salzig ist."
Rolando2
5
@ rolando2, das ist vielleicht so, aber trotzdem bin ich zu 90% zuversichtlich, dass das ein guter Kommentar ist.
Gung - Reinstate Monica
6

Dies beantwortet Ihre Frage nicht direkt, aber Sie können etwas lernen, indem Sie sich den outliersDatensatz im TeachingDemosPaket für R ansehen und die Beispiele auf der Hilfeseite durcharbeiten. Dies kann Ihnen ein besseres Verständnis einiger Probleme bei der automatischen Ausreißererkennung geben.

Greg Snow
quelle
2

R spuckt die Ausreißer wie in aus

dat <- c(6,8.5,-12,1,rnorm(40),-1,10,0)
boxplot(dat)$out

das wird das Boxplot zeichnen und geben

[1]   6.0   8.5 -12.0  10.0
Henry
quelle
2
1.5ichQ.R.1.5ichQ.R.ichQ.R.
4
>|1.5ichQ.R.|
5
1.5ichQ.R.2ichQ.R.
1
2*(1-pnorm(4*qnorm(.75)))[1] 0.006976603Set.seed(1); out = c(); for(i in 1:100) x = rnorm(50) y = boxplot(x, plot=F) out[i] = length(y$out)>=1} sum(out)/100[1] 0.3n=50
1
@gung: set.seed(1); out = c(); for(i in 1:100) {x = rnorm(500); y = boxplot(x, plot=F); out[i] = length(y$out)}; sum(out)/50000gibt, 0.00738was näher an dem ist, was ich beschrieben habe
Henry
1

Wie andere gesagt haben, haben Sie die Frage in Bezug auf das Vertrauen schlecht gestellt. Es gibt statistische Tests für Ausreißer wie den Grubbs-Test und den Dixon-Ratio-Test, auf die ich in einem anderen Beitrag Bezug genommen habe. Sie gehen davon aus, dass die Bevölkerungsverteilung normal ist, obwohl der Dixon-Test gegenüber der Normalitätsannahme in kleinen Stichproben robust ist. Ein Boxplot ist eine nette informelle Möglichkeit, Ausreißer in Ihren Daten zu erkennen. Normalerweise werden die Whisker auf das 5. und 95. Perzentil eingestellt, und Beobachtungen, die über die Whisker hinaus aufgezeichnet werden, werden normalerweise als mögliche Ausreißer angesehen. Dies beinhaltet jedoch keine formalen statistischen Tests.

Michael R. Chernick
quelle
2
Das Einstellen der Whisker auf diese festen Perzentile erscheint mir seltsam. Haben Sie eine Referenz dafür? (Tukey, der den Boxplot erstellt hat, hat diese Methode nicht angewendet: Er hat die Whisker entweder an den Extremen eingestellt, wenn sie nahe genug an den Quartilen sind, aber nicht weiter als 1,5 "Schritte" (entspricht ungefähr dem 1,5-fachen des IQR) aus den Quartilen.) Dies ist für die Erkennung von Ausreißern viel robuster als die Verwendung eines extremen Perzentils, das per Definition immer 10% der Daten als "Ausreißer" identifiziert, was kein sehr nützliches Verfahren wäre.
whuber
Ich weiß nicht, ob ich das normalerweise hätte sagen sollen. Ich denke, für die Whisker wurden viele verschiedene Punkte verwendet. Ich denke, das 1. Perzentil und das 99. wurden ebenfalls verwendet und das min und max. Wenn Sie jedoch Min und Max verwenden, können Sie keine Ausreißer jenseits der Whisker finden. Ich habe keine spezifische Referenz, die mir im Moment einfällt. Ich meinte nicht, dass irgendetwas außerhalb der Whisker ein Ausreißer wäre, wenn das 5. und 95. Perzentil verwendet werden. Ich habe nur gemeint, dass Sie sie visuell sehen können, weil sie weit über oder unter den Schnurrhaaren liegen.
Michael R. Chernick