2014-11-03 10 views
13

Ich versuchte, den Kolmogorov-Smirnov-Test zu verwenden, um die Normalität einer Probe zu testen. Dies ist ein kleines einfaches Beispiel, was ich tue:Kolmogorov-Smirnov-Test in R

x <- rnorm(1e5, 1, 2) 
ks.test(x, "pnorm") 

Hier ist das Ergebnis R gibt mir:

 One-sample Kolmogorov-Smirnov test 

data: x 
D = 0.3427, p-value < 2.2e-16 
alternative hypothesis: two-sided 

Der p-Wert ist sehr niedrig, während der Test die Nullhypothese akzeptieren soll.

Ich verstehe nicht, warum es nicht funktioniert.

+1

Sie testen gegen eine Standardnormal oben; Versuchen Sie 'ks.test (x," pnorm ", 1,2)' –

+0

Sie finden das vielleicht auch interessant: http://stats.stackexchange.com/questions/2492/is-normality-testing-essential-useless – rnso

Antwort

15

Wie in den ks.testhelp wies darauf hin, haben Sie die Argumente von pnorm zur ks.test Funktion zu geben. Wenn Sie die Mittelwert- und Standardabweichung nicht genau angeben, wird der Test mit einer Standard-Gauss-Verteilung durchgeführt.

Hier sollten Sie schreiben:

ks.test(x, "pnorm", 1, 2) #or ks.test(x, "pnorm", mean=1, sd=2)