Eu tentei calcular o AIC de uma regressão linear em R, mas sem usar a AIC
função, assim:
lm_mtcars <- lm(mpg ~ drat, mtcars)
nrow(mtcars)*(log((sum(lm_mtcars$residuals^2)/nrow(mtcars))))+(length(lm_mtcars$coefficients)*2)
[1] 97.98786
No entanto, AIC
fornece um valor diferente:
AIC(lm_mtcars)
[1] 190.7999
Alguém poderia me dizer o que estou fazendo de errado?
AIC
usa é -2*as.numeric(logLik(lm_mtcars))+2*(length(lm_mtcars$coefficients)+1)
.
logLik
diz que, para lm
modelos, inclui 'todas as constantes' ... então haverá uma log(2*pi)
em algum lugar