如何在 Rmarkdown 中使用 YAML 参数的顺序组合

How to use a sequential combination of YAML parameters in Rmarkdown

如何使用在 Rmarkdown 中使用 YAML 分配的一系列参数?我正在尝试编写一个 csv 文件,但我只能使用一个参数。

比如。我有:

title: "My Title"
params:
  month: "March"
  person: "CEO"
  extention: ".csv"

我想将所有分配的参数添加为一个连续的单词:

write.table(d, file=params$month params$person params$extention, quote = F, fileEncoding = "UTF-8", sep = ";", row.names=FALSE)

但是这样是不行的,这样放的话只能读取一个参数。

正确的做法是什么?

您的文件属性必须是一个字符串,这样您就可以使用 paste 将它们组合成一个字符串。 (paste0 与 paste 相同,但默认不分隔变量)

write.table(d, file = paste0(params$month,params$person,params$extention),
             quote = F, fileEncoding = "UTF-8", sep = ";", row.names = FALSE)

会给"MarchCEO.csv"

在你的例子中,文件名只有月份,由于space,其他变量没有被考虑在内,所以它认为这是其他一些属性..

如果您希望该行更具可读性,您可以先定义名称:

myfilename <- paste0(params$month,params$person,params$extention)

write.table(d, file = myfilename, quote = F, fileEncoding = "UTF-8",
            sep = ";", row.names = FALSE)