Существует ли тест для определения значимости избыточной дисперсии GLM?

44

Я создаю пуассоновские GLM в R. Чтобы проверить избыточную дисперсию, я смотрю на отношение остаточного отклонения к степеням свободы, предоставляемым summary(model.name).

Есть ли предельное значение или критерий для того, чтобы это соотношение считалось "значительным"? Я знаю, что если это> 1, то данные перераспределены, но если у меня коэффициенты относительно близки к 1 [например, одно отношение 1,7 (остаточное отклонение = 25,48, df = 15) и другое 1,3 (rd = 324, df = 253)], должен ли я все-таки перейти на квазипуассон / отрицательный бином? Я нашел здесь этот тест на значимость: 1-pchisq (остаточное отклонение, df), но я видел его только один раз, что заставляет меня нервничать. Я также прочитал (я не могу найти источник), что соотношение <1,5 обычно безопасно. Мнения?

кто-
источник

Ответы:

45

В пакете R AER вы найдете функцию dispersiontest, которая реализует тест на сверхдисперсию Камерона и Триведи (1990).

Отсюда следует простая идея: в модели Пуассона среднее значение равно а дисперсия также равна V a r ( Y ) = μ . Они равны. Тест просто проверяет это предположение как нулевую гипотезу против альтернативы, где V a r ( Y ) = μ + c f ( μ ), где константа c < 0 означает недисперсию, а c > 0 означает сверхдисперсию. Функция fE(Y)=μVar(Y)=μVar(Y)=μ+cf(μ)c<0c>0 - некоторая монотонная функция (часто линейная или квадратичная; первая - по умолчанию). Результирующий тест эквивалентен тесту H 0 : c = 0 против H 1 : c 0, а используемая статистика теста -статистика t что является асимптотически стандартным нормальным под нулем.f(.)H0:c=0H1:c0t

Пример:

R> library(AER)
R> data(RecreationDemand)
R> rd <- glm(trips ~ ., data = RecreationDemand, family = poisson)
R> dispersiontest(rd,trafo=1)

Overdispersion test

data:  rd
z = 2.4116, p-value = 0.007941
alternative hypothesis: true dispersion is greater than 0
sample estimates:
dispersion 
    5.5658 

Здесь мы ясно видим, что есть свидетельства чрезмерной дисперсии (c оценивается в 5,57), что довольно сильно противоречит предположению о равноудаленной дисперсии (то есть c = 0).

trafo=1H0:c=1H1:c1c=c+1

Момо
источник
1
Я должен был использовать glm(trips ~ 1, data = data, family = poisson)(то есть, 1а не .для моих данных), но здорово, спасибо
Фил
12

odTestpsclμ=Var

>library(pscl)

>odTest(NegBinModel) 

Likelihood ratio test of H0: Poisson, as restricted NB model:
n.b., the distribution of the test-statistic under H0 is non-standard
e.g., see help(odTest) for details/references

Critical value of test statistic at the alpha= 0.05 level: 2.7055 
Chi-Square Test Statistic =  52863.4998 p-value = < 2.2e-16

Здесь нуль ограничения Пуассона отклоняется в пользу моей отрицательной биномиальной регрессии NegBinModel. Зачем? Потому что статистика теста 52863.4998превышает 2.7055с p-value of < 2.2e-16.

Преимущество AER dispersiontestзаключается в том, что возвращаемый объект класса "htest" легче форматировать (например, конвертировать в LaTeX), чем бесклассовый 'odTest`.

Люк Сингхэм
источник
2

Еще один вариант - использовать критерий отношения правдоподобия, чтобы показать, что квазипуассонный GLM с избыточной дисперсией значительно лучше, чем обычный пуассоновый GLM без избыточной дисперсии:

fit = glm(count ~ treatment,family="poisson",data=data) 
fit.overdisp = glm(count ~ treatment,family="quasipoisson",data=data) 
summary(fit.overdisp)$dispersion # dispersion coefficient
pchisq(summary(fit.overdisp)$dispersion * fit$df.residual, fit$df.residual, lower = F) # significance for overdispersion
Том Венселерс
источник