Ich möchte einige zweidimensionale Kolmogorov-Smironov-Tests durchführen, um festzustellen, ob eine zweidimensionale Verteilung mit einer Referenz übereinstimmt.
Gibt es ein Paket oder eine Anwendung, die ich relativ einfach verwenden könnte? Oder gibt es einen anderen Algorithmus, der vorzuziehen ist? Ich habe nur grundlegende statistische Kenntnisse.
kolmogorov-smirnov
Manuel J Gomez
quelle
quelle
Antworten:
Eine zweidimensionale Erweiterung des Kolmogorov-Smirnov-Tests wurde von Justel, Pena und Zamar in einem "multivariaten Komogorov-Smirnov-Test der Anpassungsgüte" beschrieben . Die Kommentare von @ Procrastinator lassen vermuten, dass es weitere Vorschläge dieser Art geben könnte.
Ich habe jedoch noch kein Paket mit einer einfachen Implementierung gesehen.
Je nachdem, was Sie tun möchten, ist kde.test () in Tarn Duongs ks-Paket für R möglicherweise nützlicher.
quelle
Python-Implementierung
Ich habe eine Python-Implementierung mit numpy geschrieben. Den Code finden Sie hier , weitere Informationen finden Sie möglicherweise in der Doku-Zeichenfolge im Code.
Und hier ist noch einer (nicht von mir). Dieses Notebook enthält eine Python-Implementierung für den 2D-KS-Test mit 2 Beispielen. Die
.py
Datei kann hier heruntergeladen werden . Der Code scheint eine reine Übersetzung desC
Codes zu sein. Die Effizienz kann ein Problem sein, wenn die Stichprobe groß ist.Sie sollten jedoch die Codes (egal welche) mit den Originalpapieren / -büchern überprüfen, bevor Sie sie verwenden. Die Python-Implementierungen des 2d KS-Tests sind weitaus weniger geprüft als die in R.
Mehr Informationen
Der Algorithmus wurde zuerst in zwei Artikeln entwickelt (wie ich sehe)
Eine nette Einführung und die
C
Implementierung finden Sie inPress, WH et al. 1992, Numerical Recipes in C , Section 14.7, p645.
Sie können die
C++/Fortran
Implementierung in anderen Versionen des Buches finden.Hier ist ein Beitrag mit dem Titel Vorsicht, der Kolmogorov-Smirnov-Test hat auch etwas mit dem Thema zu tun. Vielleicht möchten Sie einen Blick darauf werfen. Es wird empfohlen, die Resample-Methode zu verwenden, um den p-Wert mit dem angegebenen KS-Abstand zu bewerten.
quelle
Möglicherweise ist dieser Matlab-Code hilfreich.
http://www.mathworks.com/matlabcentral/fileexchange/38617-two-dimensional-2d-paired-kolmogorov-smirnov-test
quelle