Learn R Programming

MuMIn (version 1.47.5)

QAIC: Quasi AIC or AICc

Description

Calculate a modification of Akaike's Information Criterion for overdispersed count data (or its version corrected for small sample, “quasi-AIC\(_{c}\)”), for one or several fitted model objects.

Usage

QAIC(object, ..., chat, k = 2, REML = NULL)
QAICc(object, ..., chat, k = 2, REML = NULL)

Value

If only one object is provided, returns a numeric value with the corresponding QAIC or QAIC\(_{c}\); otherwise returns a

data.frame with rows corresponding to the objects.

Arguments

object

a fitted model object.

...

optionally, more fitted model objects.

chat

\(\hat{c}\), the variance inflation factor.

k

the ‘penalty’ per parameter.

REML

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.

Author

Kamil Bartoń

See Also

AICc, quasi family used for models with over-dispersion.

Tests for overdispersion in GLM[M]: check_overdispersion.

Examples

Run this code
oop <- 
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")


if (FALSE) {
# 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)
}
options(oop)

Run the code above in your browser using DataLab