一行代碼搞定 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

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM