Я пытаюсь понять вывод тестовой функции Колмогорова-Смирнова (два примера, двухсторонние). Вот простой тест.
x <- c(1,2,2,3,3,3,3,4,5,6)
y <- c(2,3,4,5,5,6,6,6,6,7)
z <- c(12,13,14,15,15,16,16,16,16,17)
ks.test(x,y)
# Two-sample Kolmogorov-Smirnov test
#
#data: x and y
#D = 0.5, p-value = 0.1641
#alternative hypothesis: two-sided
#
#Warning message:
#In ks.test(x, y) : cannot compute exact p-value with ties
ks.test(x,z)
#Two-sample Kolmogorov-Smirnov test
#data: x and z
#D = 1, p-value = 9.08e-05
#alternative hypothesis: two-sided
#
#Warning message:
#In ks.test(x, z) : cannot compute exact p-value with ties
ks.test(x,x)
#Two-sample Kolmogorov-Smirnov test
#data: x and x
#D = 0, p-value = 1
#alternative hypothesis: two-sided
#
#Warning message:
#In ks.test(x, x) : cannot compute exact p-value with ties
Есть несколько вещей, которые я не понимаю здесь.
Из справки кажется, что значение р относится к гипотезе
var1=var2
. Однако здесь это будет означать, что тест говорит (p<0.05
):а. Не могу этого сказать
X = Y
;б. Могу сказать это
X = Z
;с. Не могу сказать, что
X = X
(!)
Помимо того, что кажется, что x отличается от самого себя (!), Для меня также довольно странно, что x=z
оба дистрибутива имеют поддержку перекрытия нулей. Как это возможно?
В соответствии с определением теста,
D
должна быть максимальная разница между двумя распределения вероятностей, но, например , в случае ,(x,y)
он должен бытьD = Max|P(x)-P(y)| = 4
(в случае , когдаP(x)
,P(y)
не нормализованы) илиD=0.3
(если они нормированы). Почему D отличается от этого?Я специально сделал пример со многими связями , так как данные, с которыми я работаю, имеют много одинаковых значений. Почему это смущает тест? Я думал, что он рассчитал распределение вероятностей, на которое не должны влиять повторяющиеся значения. Любая идея?