R in Action (Kabacoff, 2011) suggests the following routine to test for overdispersion in a logistic regression:
Fit logistic regression using binomial distribution:
model_binom <- glm(Species=="versicolor" ~ Sepal.Width,
family=binomial(), data=iris)
Fit logistic regression using quasibinomial distribution:
model_overdispersed <- glm(Species=="versicolor" ~ Sepal.Width,
family=quasibinomial(), data=iris)
Use chi-squared to test for overdispersion:
pchisq(summary(model_overdispersed)$dispersion * model_binom$df.residual,
model_binom$df.residual, lower = F)
# [1] 0.7949171
Could somebody explain how and why the chi-squared distribution is being used to test for overdispersion here? The p-value is 0.79 - how does this show that overdispersion is not a problem in the binomial distribution model?