extractAIC
Extract AIC from a Fitted Model
Description
Computes the (generalized) Akaike An Information Criterion for a fitted parametric model.
Usage
extractAIC(fit, scale, k = 2, ...)
Arguments
fit | fitted model, usually the result of a fitter like |
scale | optional numeric specifying the scale parameter of the model, see |
k | numeric specifying the ‘weight’ of the equivalent degrees of freedom (=: |
... | further arguments (currently unused in base R). |
Details
This is a generic function, with methods in base R for classes "aov"
, "glm"
and "lm"
as well as for "negbin"
(package MASS) and "coxph"
and "survreg"
(package survival).
The criterion used is
AIC = - 2*log L + k * edf,
where L is the likelihood and edf
the equivalent degrees of freedom (i.e., the number of free parameters for usual parametric models) of fit
.
For linear models with unknown scale (i.e., for lm
and aov
), -2 log L is computed from the deviance and uses a different additive constant to logLik
and hence AIC
. If RSS denotes the (weighted) residual sum of squares then extractAIC
uses for -2 log L the formulae RSS/s - n (corresponding to Mallows' Cp) in the case of known scale s and n log (RSS/n) for unknown scale. AIC
only handles unknown scale and uses the formula n*log(RSS/n) + n + n*log 2pi - sum(log w) where w are the weights. Further AIC
counts the scale estimation as a parameter in the edf
and extractAIC
does not.
For glm
fits the family's aic()
function is used to compute the AIC: see the note under logLik
about the assumptions this makes.
k = 2
corresponds to the traditional AIC, using k =
log(n)
provides the BIC (Bayesian IC) instead.
Note that the methods for this function may differ in their assumptions from those of methods for AIC
(usually via a method for logLik
). We have already mentioned the case of "lm"
models with estimated scale, and there are similar issues in the "glm"
and "negbin"
methods where the dispersion parameter may or may not be taken as ‘free’. This is immaterial as extractAIC
is only used to compare models of the same class (where only differences in AIC values are considered).
Value
A numeric vector of length 2, with first and second elements giving
edf | the ‘equivalent degrees of freedom’ for the fitted model |
AIC | the (generalized) Akaike Information Criterion for |
Note
This function is used in add1
, drop1
and step
and the similar functions in package MASS from which it was adopted.
Author(s)
B. D. Ripley
References
Venables, W. N. and Ripley, B. D. (2002) Modern Applied Statistics with S. New York: Springer (4th ed).
See Also
Examples
utils::example(glm) extractAIC(glm.D93) #>> 5 15.129
Copyright (©) 1999–2012 R Foundation for Statistical Computing.
Licensed under the GNU General Public License.