[英]Stargazer output is code, not a table
我正在嘗試使用RStudio中的包stargazer來生成我的數據的匯總表。 出於某種原因,當我使用html或latex代碼時,我無法在輸出中查看表,但是當我作為文本輸出時,我可以看到它。
一個例子:
library(stargazer)
stargazer(attitude, type = 'text')
輸出看起來像(因為它應該):
##
## =====================================
## Statistic N Mean St. Dev. Min Max
## -------------------------------------
## rating 30 64.633 12.173 40 85
## complaints 30 66.600 13.315 37 90
## privileges 30 53.133 12.235 30 83
## learning 30 56.367 11.737 34 75
## raises 30 64.633 10.397 43 88
## critical 30 74.767 9.895 49 92
## advance 30 42.933 10.289 25 72
## -------------------------------------
將其設置為乳膠:
stargazer(attitude, type = 'latex')
給出輸出:
##
## % Table created by stargazer v.5.2 by Marek Hlavac, Harvard University. E-mail: hlavac at fas.harvard.edu
## % Date and time: Wed, Aug 16, 2017 - 4:28:34 PM
## \begin{table}[!htbp] \centering
## \caption{}
## \label{}
## \begin{tabular}{@{\extracolsep{5pt}}lccccc}
## \\[-1.8ex]\hline
## \hline \\[-1.8ex]
## Statistic & \multicolumn{1}{c}{N} & \multicolumn{1}{c}{Mean} & \multicolumn{1}{c}{St. Dev.} & \multicolumn{1}{c}{Min} & \multicolumn{1}{c}{Max} \\
## \hline \\[-1.8ex]
## rating & 30 & 64.633 & 12.173 & 40 & 85 \\
## complaints & 30 & 66.600 & 13.315 & 37 & 90 \\
## privileges & 30 & 53.133 & 12.235 & 30 & 83 \\
## learning & 30 & 56.367 & 11.737 & 34 & 75 \\
## raises & 30 & 64.633 & 10.397 & 43 & 88 \\
## critical & 30 & 74.767 & 9.895 & 49 & 92 \\
## advance & 30 & 42.933 & 10.289 & 25 & 72 \\
## \hline \\[-1.8ex]
## \end{tabular}
## \end{table}
最后,將其設置為html:
stargazer(attitude, type = 'html')
給出輸出:
##
## <table style="text-align:center"><tr><td colspan="6" style="border-bottom: 1px solid black"></td></tr><tr><td style="text-align:left">Statistic</td><td>N</td><td>Mean</td><td>St. Dev.</td><td>Min</td><td>Max</td></tr>
## <tr><td colspan="6" style="border-bottom: 1px solid black"></td></tr><tr><td style="text-align:left">rating</td><td>30</td><td>64.633</td><td>12.173</td><td>40</td><td>85</td></tr>
## <tr><td style="text-align:left">complaints</td><td>30</td><td>66.600</td><td>13.315</td><td>37</td><td>90</td></tr>
## <tr><td style="text-align:left">privileges</td><td>30</td><td>53.133</td><td>12.235</td><td>30</td><td>83</td></tr>
## <tr><td style="text-align:left">learning</td><td>30</td><td>56.367</td><td>11.737</td><td>34</td><td>75</td></tr>
## <tr><td style="text-align:left">raises</td><td>30</td><td>64.633</td><td>10.397</td><td>43</td><td>88</td></tr>
## <tr><td style="text-align:left">critical</td><td>30</td><td>74.767</td><td>9.895</td><td>49</td><td>92</td></tr>
## <tr><td style="text-align:left">advance</td><td>30</td><td>42.933</td><td>10.289</td><td>25</td><td>72</td></tr>
## <tr><td colspan="6" style="border-bottom: 1px solid black"></td></tr></table>
所以R正在生成代碼,而不是表。 有誰知道為什么會這樣? 不幸的是我在一台不允許我訪問互聯網的計算機上這樣做,所以我不得不通過一個頭和一個USB驅動器手動安裝所有包,所以我可能在安裝所需的各種包時遺漏了一些東西。
我的最終目標是生成一個表,該表將作為pdf或word文檔導出,可能作為r markdown腳本的一部分。 所以真的我的問題是為什么我不能生成HTML或乳膠表?
要在pdf中呈現一個觀星者表,您可以將此代碼添加到空的R markdown(.Rmd)文件中:
---
output: pdf_document
---
```{r setup, include=FALSE}
knitr::opts_chunk$set(echo = FALSE)
library(stargazer)
```
Here is the latex table in a PDF document:
```{r mylatextable, results = "asis"}
stargazer(attitude, type = 'latex')
```
其顯示為:
導出到單詞涉及以下內容(取自help(stargazer)
):
要在Microsoft Word文檔中包含占星者表(例如,.doc或.docx),請遵循以下過程:使用out參數將輸出保存到.htm或.html文件中。 在Web瀏覽器中打開生成的文件。 將表從Web瀏覽器復制並粘貼到Microsoft Word文檔。
或者,如果表的外觀無關緊要,則可以將以下內容放在空的.Rmd文件中:
---
output: word_document
---
```{r setup, include=FALSE}
knitr::opts_chunk$set(echo = FALSE)
library(stargazer)
```
Stargazer table in microsoft word:
```{r word_table, comment = ''}
stargazer(attitude, type = 'text')
```
這導致原始但可讀的表格:
這是因為stargazer
旨在生成代碼。 因此,它就像一個轉換器。 您可以使用out
參數將HTML或LaTeX保存到文件,然后在Internet瀏覽器或本地LaTeX應用程序中呈現它。 您還可以使用背面文件在線渲染LaTeX。 雖然你可以使用帶有Word的stargazer
,但我不建議這樣做。 該軟件包首先設計用於純LaTeX文檔。 我已經將它與Word和LaTeX一起使用,並且沒有比較。 LaTeX的結果很可愛。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.