r stargazer-将行添加到回归输出并统一其顺序

时间:2018-08-08 20:57:20

标签: r regression stargazer

我的问题介于this onethis one之间。

我想在回归输出中为因子变量的参考类别添加一行。观星者似乎没有做到这一点的简便方法。我当前的方法是在我的Word文档中用add.lines添加一行,然后手动更改该新行的顺序。这当然是乏味的。

x <- as.factor(c("a","b","c"))
x1 <- c(1,2,3)

# Estimate a model
m1 <- lm(x1~x)

#Create output
stargazer(m1, type = "text", style="ajs", add.lines=c("a (ref.)"))

这就是我现在站在的地方:

> stargazer(m1, type = "text", style="ajs", add.lines=c("a (ref.)"))


========================
                 X1     
------------------------
xb              1.000   


xc              2.000   


Constant        1.000   


a (ref.)                
Observations      3     
R2              1.000   
------------------------
Notes:       *P < .05   
             **P < .01  
             ***P < .001

我想要的输出是这样:

========================
                 X1     
------------------------
a (ref.)                
   xb           1.000   


   xc           2.000   


Constant        1.000   


Observations      3     
R2              1.000   
------------------------
Notes:       *P < .05   
             **P < .01  
             ***P < .001

自定义添加行顺序的自动方法是什么?或者,如果您愿意,可以提出一个更笼统的问题:以正确的顺序添加因子变量的参考类别的简便方法是什么?

1 个答案:

答案 0 :(得分:1)

您可以使用table.layout参数来自定义表格布局:

library(stargazer)
stargazer(m1, type = "text", style="ajs", add.lines=c("a (ref.)"), table.layout = "=ldc-ats-n")

结果:

========================
                 X1     
------------------------
a (ref.)                
xb              1.000   


xc              2.000   


Constant        1.000   



Observations      3     
R2              1.000   
------------------------
Notes:       *P < .05   
             **P < .01  
             ***P < .001

注意:

"=ldc-ats-n"确定哪些元素以及它们在输出中出现的顺序,每个字符都是一个元素。例如,"t"代表“系数表”,而"a"代表“附加行”,因此将"a"放在"t"之前可以为您提供正确的顺序。请参阅?stargazer并转到table.layout了解更多详细信息。