Подгонка распределения Пуассона с нулями в R - PullRequest
11 голосов
/ 23 августа 2011

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

Вектор выглядит так:

i.vec=c(0,63,1,4,1,44,2,2,1,0,1,0,0,0,0,1,0,0,3,0,0,2,0,0,0,0,0,2,0,0,0,0,
0,0,0,0,0,0,0,0,6,1,11,1,1,0,0,0,2)
m=mean(i.vec)
# 3.040816
sig=sd(i.vec)
# 10.86078

Я хотел бы подогнать распределение под это,я сильно подозреваю, что это будет Пуассон с нулевым давлением.Но мне нужно выполнить тест значимости, чтобы продемонстрировать, что распределение ZIP соответствует данным.

Если бы у меня было нормальное распределение, я мог бы выполнить критерий соответствия критерию хи-квадрат, используя функцию goodfit () в пакетеvcd, но я не знаю ни одного теста, который я мог бы выполнить для данных с нулевым раздувом.

1 Ответ

17 голосов
/ 23 августа 2011

Вот один из подходов

# LOAD LIBRARIES
library(fitdistrplus)    # fits distributions using maximum likelihood
library(gamlss)          # defines pdf, cdf of ZIP


# FIT DISTRIBUTION (mu = mean of poisson, sigma = P(X = 0)
fit_zip = fitdist(i.vec, 'ZIP', start = list(mu = 2, sigma = 0.5))

# VISUALIZE TEST AND COMPUTE GOODNESS OF FIT    
plot(fit_zip)
gofstat(fit_zip, print.test = T)

Исходя из этого, не похоже, что ZIP подходит.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...