2012-07-21 215 views
17

我真的很喜歡在Rstudio中使用knitr,並一直在使用它來編寫降價演示和數據分析。我想在論文中使用相同的代碼和結果,並希望將Rmd文件```{r}中的代碼塊轉換爲Rnw文件<< >>= @的塊。如何把.Rmd文件轉換成Rstudio的.Rnw文件?

這允許使用相同的文檔和編寫用於主紙張的代碼。

有沒有在Markdown和Rnw文件的代碼塊之間轉換的方法?

或整個文件本身的代碼塊語法差額作爲外,他們都在標記非常相似(轉換文本乳膠是容易說pandoc)

回答

7

而不是整個文檔轉換的,您可以將您的R代碼外部化,以便可以在不同文檔之間共享;看到http://yihui.name/knitr/demo/externalization/

一旦你有read_chunk('Rcode.r'),您可以在線互動文檔,其中label來自在R腳本行## @knitr label在使用您的RMD ```{r label}<<label>>=

+0

將代碼與主文件分開的想法很好。如果我需要將Rmd文件快速轉換爲Rnw或反之亦然,是否有這種可能性? – Anusha 2012-07-22 08:16:28

+1

這聽起來很棒,但對我來說沒什麼意義:https://github.com/yihui/knitr/issues/322將''{r}轉換爲'<<>> ='很容易,但是怎麼辦?剩下的文字?您必須考慮將降價轉換爲LaTeX(反之亦然),並且pandoc已經完成了無與倫比的工作。 – 2012-07-22 16:09:28

+0

看來你正在將此作爲knitExtra工作。正如問題中提到的,我使用pandoc將文檔從降價轉換爲乳膠。使用正則表達式或替換字符串轉換代碼塊的任務似乎很乏味且容易出錯。你能否告訴我們簡單的方法來轉換大塊標記? – Anusha 2012-07-22 16:17:50