Learn R Programming

MuMIn (version 1.48.4)

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)

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}\).

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.

Author

Kamil Bartoń

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–307.

See Also

Akaike's An Information Criterion: AIC

Some other implementations:

AICc in package AICcmodavg, AICc in package bbmle, aicc in package glmulti

Examples

Run this code
#Model-averaging mixed models
 if(require(nlme)) {
oop <- 
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))

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

Run the code above in your browser using DataLab