Generic function calculating Akaike's ‘An Information Criterion’ for one or several fitted model objects for which a log-likelihood value can be obtained, according to the formula -2*log-likelihood + k*npar, where npar represents the number of parameters in the fitted model, and k = 2 for the usual AIC, or k = log(n) (n being the number of observations) for the so-called BIC or SBC (Schwarz's Bayesian criterion).
AIC(object, ..., k = 2) BIC(object, ...)
These are generic functions (with S4 generics defined in package stats4): however methods should be defined for the log-likelihood function
logLik rather than these functions: the action of their default methods is to call
logLik on all the supplied objects and assemble the results. When comparing fitted objects, the smaller the AIC or BIC, the better the fit.
The log-likelihood and hence the AIC/BIC is only defined up to an additive constant. Different constants have conventionally be used for different purposes and so
AIC may give different values (and do for models of class
"lm": see the help for
extractAIC). Particular care is needed when comparing fits of different classes (with, for example, a comparison of a Poisson and gamma GLM being meaningless since one has a discrete response, the other continuous).
BIC is defined as
AIC(object, ..., k = log(nobs(object))). This needs the number of observations to be known: the default method looks first for a
"nobs" attribute on the return value from the
logLik method, then tries the
nobs generic, and if neither succeed returns BIC as
If just one object is provided, a numeric value with the corresponding AIC (or BIC, or ..., depending on
Sakamoto, Y., Ishiguro, M., and Kitagawa G. (1986). Akaike Information Criterion Statistics. D. Reidel Publishing Company.
Documentation reproduced from R 2.15.3. License: GPL-2.