読者です 読者をやめる 読者になる 読者になる

RStudioの「Knit HTML」ボタンとだいたい同じことをコマンドラインからやる方法

RStudio R rmarkdown knitr

いつも忘れるのでメモ。

RStudioの「Knit HTML」ボタンにお世話になっている方も多いかと思います。

f:id:yutannihilation:20141227090623p:plain

でもドキュメントが大量にあるときとかはポチポチやるよりコマンドラインからやりたかったりします。そんなときは、rmarkdown::render()を使うといいらしいです。

Note that in the case using the “Knit” button in RStudio the basic mechanism is the same (RStudio calls the rmarkdown::render function under the hood).
(http://rmarkdown.rstudio.com/)

でも、これをRStudioの外で実行するとたぶんこんなエラーが出ます。

Error: pandoc version 1.12.3 or higher is required and was not found. 

pandocのインストール方法は↓に書いてありますが、Linux版の場合はRStudioにpandocが含まれているのでシンボリックリンクを張るだけで大丈夫です。

rmarkdown/PANDOC.md at master · rstudio/rmarkdown · GitHub

$ sudo ln -s /usr/lib/rstudio-server/bin/pandoc/pandoc /usr/local/bin
$ sudo ln -s /usr/lib/rstudio-server/bin/pandoc/pandoc-citeproc /usr/local/bin

(Desktop版の場合はrstudio-serverrstudioになります)

これで

$ Rscript -e 'rmarkdown::render("test.Rmd")'

とかやればknitできるようになります。