从渲染调用中的参数更改rmarkdown pdf和title的名称

时间:2016-10-20 17:12:01

标签: r r-markdown

以下是" test_param.Rmd"中的一些R降价代码。文件:

.child input
在这里使用.r文件调用

---
output: pdf_document
params:
  number: "1"
title: `r params$number`
---

```{r setup, include=TRUE}

knitr::opts_chunk$set(echo = TRUE)

```

```{r one, include = TRUE}

i = 2
#data = data.frame(x = c(1,2,3))

#for(i in 1:dim(data)[1]){

 # plot(i*1000)

#}

```

`r params$number`

运行.r

时出现此错误
library(rmarkdown)

rmarkdown::render("C://Users//me//Desktop//test_param.Rmd", 
                  params = list(number= "1"))

知道为什么吗?

我正在使用``not''做标题:Error in yaml::yaml.load(enc2utf8(string), ...) : Scanner error: while scanning for the next token at line 4, column 8found character that cannot start any token at line 4, column 8

2 个答案:

答案 0 :(得分:4)

问题1很好地回答here,您可以使用params在YAML配置中注入新标题:

---
output: html_document
params: 
    new_title: "My Title!"
title: "`r params$new_title`"
---

然后,可以通过output_file的{​​{1}}参数设置渲染文件的输出文件名。

答案 1 :(得分:2)

对于遇到此问题的任何人,您可以使用paste之类的内容,而不是尝试拨打"``r params$MyParam` test paste`"。如:

--- output: html_document params: new_title: "My Title!" title: "``r params$new_title` test paste`" ---

使用RStudio 1.0.143和R 3.4.0