Last chance! 50% off unlimited learning
Sale ends in
Calculate a modification of Akaike's Information Criterion for overdispersed
count data (or its version corrected for small sample,
“quasi-AIC
QAIC(object, ..., chat, k = 2, REML = NULL)
QAICc(object, ..., chat, k = 2, REML = NULL)
a fitted model object.
optionally, more fitted model objects.
the ‘penalty’ per parameter.
optional logical value, passed to the logLik
method
indicating whether the restricted log-likelihood or log-likelihood should be
used. The default is to use the method used for model estimation.
If only one object is provided, returns a numeric value with the
corresponding QAIC or QAICdata.frame
with rows corresponding to the objects.
# NOT RUN {
options(na.action = "na.fail")
# Based on "example(predict.glm)", with one number changed to create
# overdispersion
budworm <- data.frame(
ldose = rep(0:5, 2), sex = factor(rep(c("M", "F"), c(6, 6))),
numdead = c(10, 4, 9, 12, 18, 20, 0, 2, 6, 10, 12, 16))
budworm$SF = cbind(numdead = budworm$numdead,
numalive = 20 - budworm$numdead)
budworm.lg <- glm(SF ~ sex*ldose, data = budworm, family = binomial)
(chat <- deviance(budworm.lg) / df.residual(budworm.lg))
dredge(budworm.lg, rank = "QAIC", chat = chat)
dredge(budworm.lg, rank = "AIC")
# }
# NOT RUN {
# A 'hacked' constructor for quasibinomial family object that allows for
# ML estimation
hacked.quasibinomial <- function(...) {
res <- quasibinomial(...)
res$aic <- binomial(...)$aic
res
}
QAIC(update(budworm.lg, family = hacked.quasibinomial), chat = chat)
# }
Run the code above in your browser using DataLab