使用 texreg 根据回归模型中出现的顺序显示变量名称
Displaying the variable names according to the sequence appeared in the regression models using `texreg`
使用texreg
,我试图根据回归模型中出现的顺序显示变量名称。例如:
我创建了 Sepal.Width
和 Petal.Length
的交互项。
iris$Interaction = iris$Sepal.Width * iris$Petal.Length
我 运行 两个回归,一个没有交互项,一个有交互项:
OLS1 = lm(Sepal.Length ~ Sepal.Width + Petal.Length + Petal.Width, data = iris)
OLS2 = lm(Sepal.Length ~ Sepal.Width + Petal.Length + Interaction + Petal.Width, data = iris)
screenreg(list(OLS1, OLS2))
导出回归 table 时,texreg
会在最底部抛出 interaction
项。但是,如果 Interaction
项出现在 OLS2
中 Sepal.Width
和 Petal.Length
的正下方而不是底部,reader 会更容易检查结果(考虑到我有一个非常大的回归table)。
这是使用 texreg
:
的输出
有没有办法配置texreg
包,让新添加的变量按照模型中的顺序出现,而不是出现在底部?
您可以使用 texreg::screenreg()
的选项 reorder.coef
。
texreg::screenreg(list(OLS1, OLS2), reorder.coef = c(1:3, 5, 4))
或者,更一般地说:
rrdrd.coef <- c(seq_along(names(coef(OLS2)))[-which(names(coef(OLS2)) == "Interaction")],
which(names(coef(OLS2)) == "Interaction"))
texreg::screenreg(list(OLS1, OLS2), reorder.coef = rrdrd.coef)
屈服
====================================
Model 1 Model 2
------------------------------------
(Intercept) 1.86 *** 1.30 *
(0.25) (0.51)
Sepal.Width 0.65 *** 0.82 ***
(0.07) (0.15)
Petal.Length 0.71 *** 0.87 ***
(0.06) (0.14)
Interaction -0.05
(0.04)
Petal.Width -0.56 *** -0.53 ***
(0.13) (0.13)
------------------------------------
R^2 0.86 0.86
Adj. R^2 0.86 0.86
Num. obs. 150 150
RMSE 0.31 0.31
====================================
*** p < 0.001, ** p < 0.01, * p < 0.05
使用texreg
,我试图根据回归模型中出现的顺序显示变量名称。例如:
我创建了 Sepal.Width
和 Petal.Length
的交互项。
iris$Interaction = iris$Sepal.Width * iris$Petal.Length
我 运行 两个回归,一个没有交互项,一个有交互项:
OLS1 = lm(Sepal.Length ~ Sepal.Width + Petal.Length + Petal.Width, data = iris)
OLS2 = lm(Sepal.Length ~ Sepal.Width + Petal.Length + Interaction + Petal.Width, data = iris)
screenreg(list(OLS1, OLS2))
导出回归 table 时,texreg
会在最底部抛出 interaction
项。但是,如果 Interaction
项出现在 OLS2
中 Sepal.Width
和 Petal.Length
的正下方而不是底部,reader 会更容易检查结果(考虑到我有一个非常大的回归table)。
这是使用 texreg
:
有没有办法配置texreg
包,让新添加的变量按照模型中的顺序出现,而不是出现在底部?
您可以使用 texreg::screenreg()
的选项 reorder.coef
。
texreg::screenreg(list(OLS1, OLS2), reorder.coef = c(1:3, 5, 4))
或者,更一般地说:
rrdrd.coef <- c(seq_along(names(coef(OLS2)))[-which(names(coef(OLS2)) == "Interaction")],
which(names(coef(OLS2)) == "Interaction"))
texreg::screenreg(list(OLS1, OLS2), reorder.coef = rrdrd.coef)
屈服
====================================
Model 1 Model 2
------------------------------------
(Intercept) 1.86 *** 1.30 *
(0.25) (0.51)
Sepal.Width 0.65 *** 0.82 ***
(0.07) (0.15)
Petal.Length 0.71 *** 0.87 ***
(0.06) (0.14)
Interaction -0.05
(0.04)
Petal.Width -0.56 *** -0.53 ***
(0.13) (0.13)
------------------------------------
R^2 0.86 0.86
Adj. R^2 0.86 0.86
Num. obs. 150 150
RMSE 0.31 0.31
====================================
*** p < 0.001, ** p < 0.01, * p < 0.05