Использование Rmarkdown для автоматизированных отчетов в сгенерированной структуре папок - PullRequest
0 голосов
/ 06 февраля 2019

Кажется, что 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 в этом случае)

В любом случае можно ли передать среду или структуру каталогов в файл RMarkdown, когда он вызывается изнутрисценарий R?

...