Learn R Programming

MuMIn (version 1.43.17)

AICc: Second-order Akaike Information Criterion

Description

Calculate Second-order Akaike Information Criterion for one or several fitted model objects (AIC\(_{c}\), AIC for small samples).

Usage

AICc(object, ..., k = 2, REML = NULL)

Arguments

object

a fitted model object for which there exists a logLik method, or a "logLik" object.

optionally more fitted model objects.

k

the ‘penalty’ per parameter to be used; the default k = 2 is the classical AIC.

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.

Value

If just one object is provided, returns a numeric value with the corresponding AIC\(_{c}\); if more than one object are provided, returns a data.frame with rows corresponding to the objects and columns representing the number of parameters in the model (df) and AIC\(_{c}\).

References

Burnham, K. P. and Anderson, D. R (2002) Model selection and multimodel inference: a practical information-theoretic approach. 2nd ed. New York, Springer-Verlag.

Hurvich, C. M. and Tsai, C.-L. (1989) Regression and time series model selection in small samples, Biometrika 76: 297<U+2013>307.

See Also

Akaike's An Information Criterion: AIC

Other implementations: AICc in package AICcmodavg, AICc in package bbmle and aicc in package glmulti

Examples

Run this code
# NOT RUN {
#Model-averaging mixed models
# }
# NOT RUN {
options(na.action = "na.fail")

data(Orthodont, package = "nlme")

# Fit model by REML
fm2 <- lme(distance ~ Sex*age, data = Orthodont,
    random = ~ 1|Subject / Sex, method = "REML")

# Model selection: ranking by AICc using ML
ms2 <- dredge(fm2, trace = TRUE, rank = "AICc", REML = FALSE)

(attr(ms2, "rank.call"))

# Get the models (fitted by REML, as in the global model)
fmList <- get.models(ms2, 1:4)

# Because the models originate from 'dredge(..., rank = AICc, REML = FALSE)',
# the default weights in 'model.avg' are ML based:
summary(model.avg(fmList))

# }
# NOT RUN {
# the same result:
model.avg(fmList, rank = "AICc", rank.args = list(REML = FALSE))
# }

Run the code above in your browser using DataLab