似乎R Markdown并不是要从调用脚本的脚本中“馈入”任何数据。我有一个自动脚本,该脚本基于节,员工和日期创建文件夹树。脚本创建输出时,会将它们放置在此文件夹结构中。然后,我调用Rmarkdown渲染结果的pdf。最后,脚本通过电子邮件将pdf发送出去。
我可以在Rstudio中完成这项工作,但不能通过命令行。 (该脚本会根据需要由监视脚本自动调用,因此它将不会在Rstudio中运行。)
home_dir <- "/home/pc/program"
runpath <- "/home/pc/program/section/employee/2019-02-05"
run <- 1
#R script
save.image()
rmarkdown::render(paste0(home_dir,"/report_1.Rmd"),
output_file = paste0("Run_",run,"_","Report.pdf"),
output_dir = runpath)
#report_1.Rmd
```{r setup, include=FALSE}
load("/.RData")
knitr::opts_chunk$set(echo = FALSE)
```
这在RStudio中通过保存工作区,然后将其加载到RMarkdown环境中而起作用,这样我的所有数据都可以放置在报告模板中。
但是,当您在命令行中运行此命令时,它找不到.RData文件。 RMarkdown只知道在它所在的目录中搜索。(在这种情况下为/ home / pc / program)
从R片段中调用环境或目录结构时,是否仍要将环境或目录结构传递给RMarkdown文件?