web-dev-qa-db-ja.com

R:RStudioでは、ドライブが乱雑にならないように、knitr出力を別のフォルダーに出力するにはどうすればよいですか?

RStudioのknit HTMl関数を使用して、いくつかのプレゼンテーションを出力しています。しかし、常にファイルを現在の作業ディレクトリに出力します。元の.rmdファイルのみでディレクトリがクリーンになるように、それを別のディレクトリに出力するにはどうすればよいですか?

28
xiaodai

Ericがコメントで指摘したように、Knit HTMLボタン(.Rmdと共存するHTMLファイルを生成する)の利便性を放棄したい場合は、rmarkdown::renderを直接呼び出すだけです。

ただし、ワークフローをカスタマイズする必要がある場合は、Knit HTMLボタンをオーバーライドして、rstudio.markdownToHTMLオプションを介してコマンドを実行できます。このコマンドは、特定のオプション(出力ディレクトリなど)でrmarkdownを呼び出し、他の前処理または後処理タスクを実行できます。ここにドキュメント:

https://support.rstudio.com/hc/en-us/articles/200552186-Customizing-Markdown-Rendering

rstudio.markdownToHTMLオプションを設定すると、RStudioがドキュメントのレンダリングに使用されているエンジンを推測できなくなるため、RStudioに組み込まれた新しいRMarkdown V2統合機能の一部がオフになることに注意してください。

12
Jonathan

Rmarkdownが出力ファイルをディレクトリに転送する で述べたトリックは私にとってはうまくいきました。

例:出力をpdf/サブディレクトリに書き込むためのトップレベルアイテムとして、YAMLプリアンブルに以下を追加します。

knit: (function(inputFile, encoding) {
  rmarkdown::render(inputFile, encoding = encoding, output_dir = "pdf") })
15
krlmlr