一行代码搞定 R 语言模型输出!(使用 stargazer 包)

引言

使用stargazer包可以将 R 构建的模型结果以LATEXHTMLASCII格式输出,方便我们生成标准格式的表格。
再结合rmarkdown,你就可以轻轻松松输出一篇优雅的文章啦~
本文“使用说明”部分主要参考stargazer说明文档。(https://vectorf.github.io/)

安装及加载

80ed

使用说明

**注意:stargazer包的输出结果是相应格式的,例如输出LATEX格式,可以直接将结果粘贴进WinEdt等编辑器中输出表格。下文直接将结果以表格的形式展示。
我们使用 R 中自带的数据集attitude来简要说明stargazer包的用法。
81ed
attitude数据集中包括ratingcomplaints等八个变量:
82ed
1.展示数据集的描述性分析和部分数据集内容
83ed
84ed
85ed
86ed
怎么样?!是不是感觉还不错~
2.展示线性模型结果,并加上表名
87ed
88ed
我们构建了两个线性模型和一个 Probit 模型,并将结果输出。
使用title参数将其命名为“Results”;
使用align参数使数字排列整齐。
3.对模型结果输出做部分调整:

  • 更改变量名;
  • 删除极大似然统计量、残差标准差、F统计量;
  • 删除表中的空行。

89
90
使用dep.var.labelscovariate.lables参数分别将因变量和自变量重命名为容易理解的形式;
使用omit.stat参数控制对数似然比(“LL”)、标准化残差(“ser”)和F统计量(“f”),这三个统计量不在输出结果中展示;
使用no.space参数将输出表格中的空行删去。
4.展示置信区间
91ed
92ed
使用cici.level参数展示90%的置信区间;
使用single.row参数使估计量与置信区间并排展示。
5.调整变量展示顺序,加上样本量,并移除其他统计量
93ed
94ed
使用order参数控制自变量展示的顺序,即将learningprivileges放在表的前两行;
使用keep.stat参数控制要展示的统计量,keep.stat="n"即只展示样本量的大小,并移除其他统计量。
6.以ASCII格式输出:
95ed
96ed
使用type参数控制以ASCII格式输出,还可以选择输出HTML格式。默认为LATEX格式。
相应地,将type参数分别设置为texthtmllatex即可。
7.展示矩阵
97ed
98ed
stargazer也可以用来展示向量、矩阵或者数据框的内容。
我们建立了attitude数据集中变量ratingcomplaintsprivileges的相关系数矩阵,并展示出来。
8.自定义变量
我们使用sandwich包来计算异方差-稳健标准误,并将其与默认计算的标准差一同展示。
99ed
00ed

与 rmarkdown 一起使用

rmarkdown包可直接在RStudio中编辑符合 markdown语法的文档,并兼容LATEX格式。而且可以直接输出成HTMLpdf等格式的文档。
因此,stargazerrmarkdown一起食用,风味更佳~
首先,你需要在Rstudio中安装rmarkdown
01ed
然后,就可以原先新建脚本的地方发现,可以新建一个R Markdown文件啦。
rmarkdown中,用如下所示的形式来表示代码块:
02ed
注意以下几点:

  • 要加上results='asis'保证输出的是表格,而不是LATEX格式;
  • 参数align失效,不能加上;
  • 加上参数header=F,以避免输出关于包作者的一些信息。
    其余用法与上述使用说明基本相同。这样就可以直接输出如上所示的表格了。

    总结

    stargazer用一行代码就可以解决模型结果输出成表格的问题,而且支持大量模型。具体可查看该包的说明文档
    最后,如果在你的文章中有使用了stargazer包。记得附注以下作者的信息哦。

说明文档:https://cran.r-project.org/web/packages/stargazer/vignettes/stargazer.pdf “stargezer.pdf”

stargazer包的说明文档:https://cran.r-project.org/web/packages/stargazer/vignettes/stargazer.pdf

 

posted @ 2017-02-09 01:39  Little_Rookie  阅读(8705)  评论(0编辑  收藏  举报