Цифры распределения Пи с использованием теста Колмогорова-Смирнова

Я хотел бы выполнить следующий тест в R, используя тест Колмогорова-Смирнова:

1) Появление различных целых чисел в первых 4000 знаков после запятой числа пи следующее:

0   1   2   3   4   5   6   7   8   9
368 426 408 374 405 415 398 376 400 430

Проверьте нулевую гипотезу о том, что появление различных целых чисел подчиняется равномерному распределению, как если бы пи было случайным числом.

Пытаться:

Я получил кумулятивную функцию плотности вероятности и установил ее как x.

x <- c(.092,.1985,.3005,.394,.49525,.599,.6985,.7925,.8925,1)

ks.test(x,y="punif")

Это выводит:

One-sample Kolmogorov-Smirnov test

data:  x
D = 0.1005, p-value = 0.9996
alternative hypothesis: two-sided

Однако выполнение этого вручную дает D=0,008. Что я сделал не так?

Ручной расчет:

Предполагая единообразие, у нас будет следующий cdf:

.1, .2, .3, .4, .5, .6, .7, .8, .9, 1

Затем я нашел абсолютное значение разницы между этими значениями и x, как я определил выше, чтобы получить максимальную разницу 0,008.


person Remy M    schedule 01.02.2018    source источник
comment
Можете ли вы рассказать больше о процедуре, которую вы использовали, чтобы сделать это вручную?   -  person Ben Bolker    schedule 01.02.2018
comment
Да, добавлю   -  person Remy M    schedule 01.02.2018


Ответы (1)


Тут может быть пара проблем.

Во-первых, ks.test хочет, чтобы его аргумент был "числовым вектором значений данных" (выделено мной), а не сводкой распределения. Таким образом, ввод должен быть чем-то вроде.

pi_digits <- rep(0:9,c(368,426,408,374,405,415,398,376,400,430))

Во-вторых, тест Колмогорова-Смирнова предназначен для проверки расстояния между двумя непрерывными распределениями вероятностей. Поэтому, когда я попытался ввести указанные выше значения, я получил предупреждение о ничьих.

person Ben Bolker    schedule 01.02.2018
comment
Ох, ладно. Я только что узнал об этом тесте сегодня в классе, поэтому, возможно, он показал нам отдельный пример для упрощения. - person Remy M; 01.02.2018