我正在使用texreg
生成回归的输出表。我想将AIC,BIC和HQIC等统计数据作为拟合优度统计信息。
下面的可复制示例
library(texreg)
library(tidyverse)
mtcars
model1 <- lm(mpg ~ disp, data = mtcars)
model2 <- lm(mpg ~ disp + hp, data = mtcars)
screenreg(list(model1, model2))
给我这个:
=================================
Model 1 Model 2
---------------------------------
(Intercept) 29.60 *** 30.74 ***
(1.23) (1.33)
disp -0.04 *** -0.03 ***
(0.00) (0.01)
hp -0.02
(0.01)
---------------------------------
R^2 0.72 0.75
Adj. R^2 0.71 0.73
Num. obs. 32 32
RMSE 3.25 3.13
=================================
*** p < 0.001, ** p < 0.01, * p < 0.05
这很好,但除了 R^2、RMSE 等之外,我还想要 AIC、BIC,如果可能的话,还喜欢 HQIC。
编辑:
在回答下面的评论时,答案确实不需要来自texreg
,但我正在寻找一个答案,可以生成那种格式化的html表格,这些表格看起来可以提交给学术期刊,例如stargazer
,texreg
,sjPlot
。
AIC和BIC基于最大化的对数似然。lm
函数使用普通最小二乘法,而不是最大似然估计。因此,没有可能性,也没有AIC或BIC。但是,要获取 AIC 和 BIC,您可以使用glm
函数和高斯链接函数估计模型,在这种情况下,默认情况下会获得 AIC 和 BIC:
library("texreg")
model1 <- glm(mpg ~ disp, data = mtcars, family = "gaussian")
model2 <- glm(mpg ~ disp + hp, data = mtcars, family = "gaussian")
screenreg(list(model1, model2))
结果:
======================================
Model 1 Model 2
--------------------------------------
(Intercept) 29.60 *** 30.74 ***
(1.23) (1.33)
disp -0.04 *** -0.03 ***
(0.00) (0.01)
hp -0.02
(0.01)
--------------------------------------
AIC 170.21 168.62
BIC 174.61 174.48
Log Likelihood -82.10 -80.31
Deviance 317.16 283.49
Num. obs. 32 32
======================================
*** p < 0.001; ** p < 0.01; * p < 0.05
您可以通过使用include.loglik = FALSE
、include.deviance = FALSE
等参数来摆脱 GOF 块中的对数可能性、偏差等screenreg
。