Я использовал подгонку модели для соответствия отрицательному биномиальному распределению моим дискретным данным. Как последний шаг, похоже, мне нужно выполнить тест Колмогорова-Смирнова, чтобы определить, хорошо ли модель подходит для данных. Все ссылки, которые я мог найти, говорят об использовании теста для обычно распределенных непрерывных данных. Может ли кто-нибудь сказать мне, можно ли это сделать в R для данных, которые обычно не распределяются и не дискретны? (Даже тест на хи-квадрат должен делать, я угадываю, но, пожалуйста, поправьте меня, если я ошибаюсь.)
UPDATE:
Итак, я обнаружил, что пакет vcd
содержит функцию goodfit
, которая может быть использована для этой цели следующим образом:
library(vcd)
# Define the data
data <- c(67, 81, 93, 65, 18, 44, 31, 103, 64, 19, 27, 57, 63, 25, 22, 150,
31, 58, 93, 6, 86, 43, 17, 9, 78, 23, 75, 28, 37, 23, 108, 14, 137,
69, 58, 81, 62, 25, 54, 57, 65, 72, 17, 22, 170, 95, 38, 33, 34, 68,
38, 117, 28, 17, 19, 25, 24, 15, 103, 31, 33, 77, 38, 8, 48, 32, 48,
26, 63, 16, 70, 87, 31, 36, 31, 38, 91, 117, 16, 40, 7, 26, 15, 89,
67, 7, 39, 33, 58)
gf <- goodfit(data, type = "nbinomial", method = "MinChisq")
plot(gf)
Но после шага gf <- ...
R жалуется на следующее:
Warning messages:
1: In pnbinom(q, size, prob, lower.tail, log.p) : NaNs produced
2: In pnbinom(q, size, prob, lower.tail, log.p) : NaNs produced
3: In pnbinom(q, size, prob, lower.tail, log.p) : NaNs produced
и когда я говорю plot
, он жалуется:
Error in xy.coords(x, y, xlabel, ylabel, log) :
'x' is a list, but does not have components 'x' and 'y'
Я не уверен, что происходит, потому что если я устанавливаю data
следующим образом:
data <- <- rnbinom(200, size = 1.5, prob = 0.8)
все работает нормально. Любые предложения?