使用RMarkdown中的knitr按钮时,如何调整输出文件夹?

3hvapo4f  于 2023-01-28  发布在  其他
关注(0)|答案(2)|浏览(127)

如果我有以下文件夹结构...

├── README.md 
│
├── project.RProj
│
├── data
│   ├── some_data.csv
│
│
├── notebooks
│   ├── analysis.Rmd
│
├── output

使用编织按钮时,如何更改RMarkdown文件中的yaml,以将HTML文件输出到output文件夹,而不是notebook文件夹?
我希望能够在RMarkdown中单击针织,并最终获得...

├── README.md 
│
├── project.RProj
│
├── data
│   ├── some_data.csv
│
│
├── notebooks
│   ├── analysis.Rmd
│
├── output
│   ├── analysis.html

我看到Yihui有一个很好的例子,说明了如何编辑输出以在R Markdown食谱(https://bookdown.org/yihui/rmarkdown-cookbook/custom-knit.html)中添加日期。粘贴如下。但是我希望有一个针对这个特定用例的例子。

knit: (function(input, ...) {
    rmarkdown::render(
      input,
      output_file = paste0(
        xfun::sans_ext(input), '-', Sys.Date(), '.html'
      ),
      envir = globalenv()
    )
  })
taor4pac

taor4pac1#

您可以指定output_dir参数,在您的情况下,基本YAML头如下所示:

---
title: "Test"
output: html_document
knit: (function(input, ...) {
    rmarkdown::render(
      input,
      output_dir = "../output"
    )
  })
---
e0bqpujr

e0bqpujr2#

以下是指定两者的方法:输出目录,并将当前日期添加到YAML标题内的输出文件名中:

---
title: "test"
author: "myName"
date: "`r Sys.Date()`"
output: html_document
knit: (function(input, ...) {
    rmarkdown::render(
      input,
      output_dir = "../outReports",  
      output_file =file.path("../outReports",glue::glue('test_{Sys.Date()}'
    )))
  })
---

相关问题