从R代码块内操作RMarkdown元数据 [英] Manipulate RMarkdown metadata from within R code chunks
本文介绍了从R代码块内操作RMarkdown元数据的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
metadata
列表?为了说明这一点,我尝试了以下几种方法:
---
title: "Untitled"
output: html_document
---
```{r}
rmarkdown::metadata$title <- "New title"
rmarkdown::metadata$title
```
这会引发错误。
Error in rmarkdown::metadata$title <- "New title" :
Object 'rmarkdown' not found
背景
我正在开发一个RMarkdown TeX模板。前同步码的某些部分需要根据YAML报头中定义的变量lang
进行本地化。我目前的方法是检查metadata$lang
的值并创建相应术语的列表。例如,我想将列表内容添加到metadata
,并通过$loc_wordcount$
访问tex-template中的术语。
推荐答案
我认为这个问题的答案是否定的(不过,我不是百分之百确定)。
但是,有一种不同的方法可以做到这一点。您可以使用参数化报表(https://bookdown.org/yihui/rmarkdown-cookbook/parameterized-reports.html)。
要做到这一点,方法是:
使用名为param$value
的参数创建rmarkdown文件(例如,名为";input.Rmd
";):
---
title: "params$new_title"
output: html_document
---
The rest of the report goes here.
然后使用传入的参数呈现报表:
rmarkdown::render('input.Rmd', params = list(new_title = "New title"))
这篇关于从R代码块内操作RMarkdown元数据的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文