Herausforderung 11 – Ausreißer-Screening
Das Ausreißer-Screening ist eine Methode zur Erkennung von Anomalien, bei der die Daten typischerweise numerisch sind. JMP verfügt über vier Ausreißer-Screening-Methoden unter der Menüoption Analysieren > Screening > Ausreißer untersuchen. Zwei dieser Methoden sind univariat und auf Ausreißer anwendbar, die anhand einer einzelnen Datenspalte identifiziert werden können.
Diese Methoden verwenden einen Standardansatz, bei dem Ausreißer als Beobachtungen definiert werden, die weit vom Zentrum der Daten entfernt liegen. Die algorithmische Definition von „Fern“ und „Mitte“ ist das Herzstück dieser Art von Methoden. Sie funktionieren gut, wenn die Daten unimodal und unbegrenzt sind, aber nicht so gut, wenn die Ausreißer nahe einer Grenze oder als Cluster zwischen Hauptmoden oder am Ende der Datenwerte auftreten.
In diesen Situationen finden Standardmethoden zur Ausreißerprüfung entweder keine Ausreißer oder erfordern mehrere Iterationen. Drei Beispiele, die diese Verhaltensweisen hervorrufen, sind in der Tabelle aufgeführt Drei Ausreißerbeispiele.JMP unter.
Entwickeln Sie für die Herausforderung dieses Monats einen Algorithmus, der diese Art von Ausreißern zusätzlich zu denen findet, die mit Standardtechniken gefunden werden. Gehen Sie davon aus, dass die Ausreißer univariat und die Daten numerisch sind. Der Probe.JMP Die Beispieldatentabelle ist ein guter Datensatz zum Testen Ihres Algorithmus.

Können Sie eine verbesserte Methode für das Ausreißer-Screening entwickeln?
Betreff: Herausforderung 11 – Ausreißer-ScreeningDanke @mzwald , ich mag den Ansatz.
Betreff: Herausforderung 11 – Ausreißer-ScreeningDas war eine lustige Übung!Hier ist mein Beitrag für die Spalte „Bimodal“ für die beigefügte Datentabelle.Ich gebe zu, dass eine Feinabstimmung der K-Parameter erforderlich war, um die gewünschten Ergebnisse zu erzielen.Bei den anderen beiden Spalten war mir weniger klar, was als Ausreißer gelten sollte.
dt = Open( "Three Outlier Examples.jmp" );
obj1 = dt << Explore Outliers(
Y( :Bimodal ),
K Nearest Neighbor Outliers( K( 20 ), Impute Missing( 1 ) )
);
obj1 << Save NN Distances;
obj2 = dt << Explore Outliers(
Y( :Nearest 20 Distance ),
Robust Fit Outliers( K Sigma( 200 ), Huber( 1 ) )
);
obj2 << Select Rows (:"Nearest 20 Distance"n) << Color Rows (:"Nearest 20 Distance"n);
dt << Graph Builder(
Size( 489, 454 ),
Show Control Panel( 0 ),
Variables( X( :Bimodal ) ),
Elements( Points( X, Legend( 3 ) ) )
);