【发布时间】:2017-11-27 18:05:05
【问题描述】:
这似乎是一个非常基本的问题,但不知何故我无法在任何地方找到解决方案。我正在尝试将变量传递给 R markdown 子文档。
在父文档中,我有这个块:
```{r}
var1 = "test-var1!"
cat(knit_child("child.Rmd"), sep = "\n")
```
在子文档中,如果我使用ls(),我可以看到var1 在环境中。但是,如果我尝试使用 var1,我会收到一个 knit 错误:
Error in str(var1) : object 'var1' not found
Calls: <Anonymous> ... withCallingHandlers -> withVisible -> eval -> eval -> str
我尝试在 RStudio 和命令行中编织。
有没有办法在子文档中使用对象?
【问题讨论】:
-
如果子文档无法从父全局变量中提取变量,请考虑将该值作为报告参数传递给子文档:rmarkdown.rstudio.com/…
-
此外,指定 knitr 子文档的传统方法可能会开辟其他方法。尝试 (a) yihui.name/knitr/demo/child 或 (b) rdrr.io/cran/knitr/man/knit_child.html,然后将 'envir' 参数设置为
parent.frame()。
标签: r knitr r-markdown