Zamierzam użyć testu Kołmogorowa-Smirnowa, aby przetestować normalność MYDATA w R. To jest przykład tego, co robię
ks.test(MYDATA,"pnorm",mean(MYDATA),sd(MYDATA))
Oto wynik R daje mi:
data: MYDATA
D = 0.13527, p-value = 0.1721
alternative hypothesis: two-sided
Warning message:
In ks.test(MYDATA, "pnorm", mean(MYDATA), sd(MYDATA)) :
ties should not be present for the Kolmogorov-Smirnov test
Myślę, że jest problem, co oznaczają „krawaty” w tym ostrzeżeniu?
kolmogorov-smirnov
ties
unes
źródło
źródło
Odpowiedzi:
Masz tutaj dwa problemy:
Test KS służy do ciągłego rozkładu, dlatego MYDATA nie powinna zawierać żadnych powiązań (wartości powtarzanych).
Teoria leżąca u podstaw testu KS nie pozwala oszacować parametrów rozkładu na podstawie danych, tak jak to zrobiłeś. Wyjaśnia to pomoc dla ks.test.
źródło
ks.test
w przypadku dwóch próbek chce się usunąć więzi z obux
iy
? To znaczy, że nie mają wiąże sięx
iy
(unique(x)
aunique(y)
), lecz te dwa wektory wartości wspólnych. Czy więzi nie powinny być brane pod uwagę tylko wśród wartości wx
i doy
?Jak wyjaśniono przez @mdewey, test KS nie jest odpowiedni przy szacowaniu parametrów na podstawie danych. Możesz użyć następującego kodu, który opiera się na teście normalności Andersona-Darlinga i nie wymaga podania średniej i standardowej wartości standardowej. Ten test ma większą dokładność niż test Lilliefors.
źródło