R:在RStudio中如何将knitr输出到另一个文件夹以避免混乱我的驱动器?

xia*_*dai 26 r rstudio knitr

我正在使用RStudio的编织HTMl函数来输出一些演示文稿.但它总是将文件输出到我当前的工作目录.如何将其输出到另一个目录,以便我的目录是干净的,只有原始的.rmd文件?

krl*_*mlr 15

Rmarkdown中提到的把输出文件导入到的目录中的技巧.

示例:将以下内容添加到YAML前导码中作为顶级项目以将输出写入pdf/子目录:

knit: (function(inputFile, encoding) {
  rmarkdown::render(inputFile, encoding = encoding, output_dir = "pdf") })
Run Code Online (Sandbox Code Playgroud)

  • 这对我有用,并且不会改变工作目录。谢谢。 (4认同)
  • 这不再起作用了 (3认同)

Jon*_*han 12

正如Eric在评论中指出的那样,如果你愿意放弃Knit HTML按钮的便利性(它产生与你同时存在的HTML文件.Rmd),你可以直接打电话rmarkdown::render.

但是,如果您确实需要自定义工作流程,则可以覆盖Knit HTML按钮以通过该rstudio.markdownToHTML选项运行任何命令.此命令可以使用特定选项(例如输出目录)调用rmarkdown,并执行其他预处理或后处理任务.文档在这里:

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

请注意,设置该rstudio.markdownToHTML选项将关闭融入RStudio的一些较新的RMarkdown V2集成功能,因为RStudio将无法再推断用于呈现文档的引擎.

  • 现在链接失效了。 (3认同)
  • 我仍在为此苦苦挣扎(试图将所有中间/结果文件转到`/output/`,我很想使用 RStudio 按钮。你能提供一个 MWE 吗?不幸的是,上面的 rstudio 文档链接是付费墙或其他东西. (2认同)
  • 这里是存档页面:https://web.archive.org/web/20150920182851/https://support.rstudio.com/hc/en-us/articles/200552186-Customizing-Markdown-Rendering (2认同)