2013-02-03 153 views
10

我正努力使用RStudio在knitr中使用stargazer輸出。例如,我將以下代碼粘貼到.Rmd文件中,然後單擊編織HTML。 [和]之間的第一個塊被渲染爲等式。第二塊來自stargazer。它仍然是代碼。當我將第二個塊,更少[和]粘貼到Sweave文件中,然後單擊編譯爲PDF時,代碼呈現爲表格。我安裝了MikTex和Stargazer的第3版。與Rstudio和Knitr一起使用stargazer

答案inserting stargazer or xable table into knitr document在單擊編譯PDF文件時適用於Sweave文件(Rnw)。在Rmd文件中,單擊編織HTML時不會呈現tex。

如何將stargazer輸出放入Rmd文件,以便Knit HTML將乳膠代碼轉換爲表格? (我是新來的乳膠,而我不知道我可以刪除哪些代碼,因此對於長段道歉。)

\[ 
\begin{aligned} 
\dot{x} & = \sigma(y-x) \\ 
\dot{y} & = \rho x - y - xz \\ 
\dot{z} & = -\beta z + xy 
\end{aligned} 
\] 

\[ 
\documentclass{article} 

\begin{document} 


% Table created by StarGazer v.3.0.1 by Marek Hlavac, Harvard University. E-mail: hlavac at fas.harvard.edu 
% Date and time: Sun, Feb 03, 2013 - 11:34:52 AM 
\begin{table}[htb] \centering 
    \caption{} 
    \label{} 
\footnotesize 

\begin{tabular}{@{\extracolsep{5pt}}lc} 
\\[-1.8ex]\hline 
\hline \\[-1.8ex] 
& \multicolumn{1}{c}{\textit{Dependent variable:}} \\ 
\cline{2-2} 
\\[-1.8ex] & Rate \\ 
\hline \\[-1.8ex] 
pole & $0.071^{***}$ \\ 
    & $(0.020)$ \\ 
    & \\ 
post & $0.095^{***}$ \\ 
    & $(0.019)$ \\ 
    & \\ 
Constant & $-5.784^{***}$ \\ 
    & $(1.667)$ \\ 
    & \\ 
\hline \\[-1.8ex] 
Observations & $46$ \\ 
Residual Std. Error & $2.378 (df = 43)$ \\ 
\hline 
\hline \\[-1.8ex] 
\textit{Note:} & \multicolumn{1}{r}{$^{*}$p$<$0.1; $^{**}$p$<$0.05; $^{***}$p$<$0.01} \\ 
\normalsize 
\end{tabular} 
\end{table} 

\end{document} 
\] 
+2

LaTeX表格在Markdown/HTML中不起作用。只有數學才能被RStudio支持。表格有自己的語法(點擊'MD'按鈕),問題是'stargazer'是否支持語法。我只知道'xtable'可以生成HTML表格。 –

+0

@Yihui googleVis軟件包具有html表格功能。 https://developers.google.com/chart/interactive/docs/gallery/table –

+0

您能否更具體地瞭解您想要實現的目標?最重要的是,你是否需要一個HTML文件作爲最終輸出,或者你需要PDF還是使用HTML作爲中間步驟? –

回答

8

既然話題已經有點過時,我假設手頭上的問題是以以某種方式使用觀星者與編織者,而不是本身將觀星者對象轉換爲HTML。

作爲天文愛好者的狂熱的球迷,我想出了以下工作流程:

  1. 寫我的代碼在.Rmd文件。
  2. 將它編織成.md。 Stargazer表仍保留爲生成的降價文件中的LaTeX代碼。
  3. 使用pandoc將降價文件轉換爲PDF。 Pandoc將LaTeX代碼轉換爲適當的表格。或者,可以使用LyT和knitr插件來獲取以PDF格式很好地輸出的觀星表。

如果你想在MS Word中觀星表,我發現的最好方法是使用LaTeX2RTF。雖然最上面的單元格有點失真,但修復它卻是刪除錯誤的空單元格的問題。剩下的表格被保留下來並可以粘貼/導入到Word中。

這兩種策略有助於在LaTeX之外使用觀星器。希望能幫助到你。

+0

你有沒有設法正確地渲染方程?這是我無法用這個解決方法工作的唯一的東西 – altabq

4

除了上一個答案,也許作爲一個更簡單的解決方案,stargazer可以輸出html代碼中的表格,這樣當Rmd文件編織成html時,將創建一個表格而不是tex代碼。我相信stargazer函數現在可以通過設置type = 'html'直接導出到html。

因此,例如,給定的模型擬合lm1,你可以使用下面的代碼在您的RMD文件:

stargazer(lm1, type = 'html')

這工作你是否希望你的最終輸出爲HTML或PDF。

14

使用下面的代碼,你會得到一個工作版本

{r, results='asis'} stargazer(model)

當轉換爲PDF格式,下面的代碼完全適用於天文愛好者4。0:

{r, results='asis'} stargazer(model, header=FALSE, type='latex')

+0

這個效果很好,但是自動生成的LaTeX來自stargazer的評論不會隱藏在我的PDF輸出中:'%table由stargazer v.5創建... '你怎麼防止這個? –

+4

header = FALSE爲我照顧。不知道你是否錯過了這個選項。 – Junchen

4

回到這個問題。

我想使用相同的 markdown文件在RStudio中使用knitr生成html和pdf輸出。也就是說,在RStudio中,我想推動針織按鈕,並且可以選擇編織HTMl輸出或PDF輸出。目前,我對編寫一個詞/ OpenOffice文檔毫無興趣。

我使用了Jake Russ的令人驚訝的有用的stargazer cheatsheet。這使大多數觀星者的功能發揮作用。這是一個R MArkdown文件,塊選項 results ='asis' 爲那些產生觀星輸出的塊設置。

觀星命令本身有一個參數「類型」。缺省值是 type ='latex' 在Jake Russ的計算表中,這是用來生成網頁的, type ='html' 在整個過程中都會使用。

如果你試圖將它編織成PDF,這根本不起作用。表格以長列表形式出現,每行一個表格單元格,沒有格式化,佔用很多頁面,沒有格式化。

,我可以讓我內RStudio產生很好的PDF格式的最小變化是全球所有的

type='html' 

type='latex' 

(注意,這兩個發生在文本替換該文件,以及在觀星命令,所以需要小心!)

這個工程!據我所知,pdf是網頁的忠實副本,這正是我想要的。

試圖編織的OpenOffice文檔,如果我離開

type='latex' 

輸出中的每個表換成這樣的文字: -

% Table created by stargazer v.5.2 by Marek Hlavac, Harvard University. E-mail: hlavac at fas.harvard.edu % Date and time: Tue, Sep 01, 2015 - 22:22:29 

如果我恢復

type='html' 

那麼每個表格都會被寫入,每行一個單元格,並且沒有格式化!

相關問題