Stargazer和r:如何使用多个多项式回归对同名系数的行进行排列

问题描述 投票:1回答:1

我想整理我的桌子,使其更加简洁。我有4个多项式回归,它们都具有相同的变量,但使用不同的度数。请注意,我正在使用HTML而不是乳胶生成输出。下面的代码最能描述我的问题:

这是我的代码:

library(stargazer)
attach(mtcars)

preg1 = lm(mpg~poly(disp, 1))
preg2 = lm(mpg~poly(disp, 2))
preg3 = lm(mpg~poly(disp, 3))
preg4 = lm(mpg~poly(disp, 4))

stargazer(preg1, preg2, preg3, preg4, type="html", align=TRUE,
          covariate.labels=c("X1", 
                             "X1", "X2", 
                             "X1", "X2", "X3", 
                             "X1", "X2", "X3","X4"))

但是,它产生了这个:

https://imgur.com/a/ikVfqZv

我编辑了HTML代码以给出我想要的输出示例:

https://imgur.com/a/4cCCiJC

但是,每次我需要这样做时,通过凌乱的占星师HTML编辑效率低下

r regression data-visualization polynomials stargazer
1个回答
0
投票

这是“替代”而不是解决方案。我在mtcars中为多项式形式的每个阶创建一个新列,然后在这些新列上应用回归:

library(stargazer)
library(dplyr)
attach(mtcars)

mtcars2 <- mtcars %>%
  mutate("disp2" = disp^2, "disp3" = disp^3, "disp4" = disp^4)

attach(mtcars2)

test1 = lm(mpg~disp)
test2 = lm(mpg~disp + disp2)
test3 = lm(mpg~disp + disp2 + disp3)
test4 = lm(mpg~disp + disp2 + disp3 + disp4)

stargazer(test1, test2, test3, test4, type="html", align=TRUE)

我认识到这远非理想,因为它需要创建新变量,例如,如果要升至10度,则可能会很长。我仍在寻找解决方案,但与此同时,也许您可​​以使用该替代方法。

注: apparentlypoly解决了不同程度的变量之间的相关性问题:但是,请注意qI(q^2)I(q^3)将被关联,并且关联变量可能会引起问题。使用poly()可以通过生成正交多项式来避免这种情况,因此,我将使用第一个选项。

这又使我的选择不再有用。

© www.soinside.com 2019 - 2024. All rights reserved.