2014-11-03 20 views
13

Ho provato a usare il test di Kolmogorov-Smirnov per testare la normalità di un campione. Questo è un piccolo esempio semplice di quello che faccio:test Kolmogorov-Smirnov in R

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

Ecco il risultato R mi dà:

 One-sample Kolmogorov-Smirnov test 

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

Il p-value è molto bassa, mentre il test deve accettare il nulla-ipotesi.

Non capisco perché non funzioni.

+1

si sta testando contro uno standard normale sopra; prova 'ks.test (x," pnorm ", 1,2)' –

+0

Puoi anche trovare questo interessante: http://stats.stackexchange.com/questions/2492/is-normality-testing-essentially-useless – rnso

risposta

15

Come sottolineato nella ks.testhelp, si deve dare alla funzione ks.test gli argomenti di pnorm. Se non si specifica la media e la variazione standard, il test viene eseguito su una distribuzione gaussiana standard.

Qui si dovrebbe scrivere:

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