10

我对 很陌生knitr,但我编写了一个脚本来为一个县生成报告。第一个代码块中的第一行是display_county <- "King",它查询数据库以制作有关金县的各种好东西。现在我想为我所在州的每个县创建报告。脚本中唯一需要更改的行是display_county.

我知道这些brew包是为这样的东西设置的,我知道 and 之间有重叠brewknitr但我不知道我应该使用什么。

这个使用 Brew 和 Sweave 的答案只需稍作修改即可使用,但有没有一种很好knitr的绕过方法brew

4

1 回答 1

5

如果我理解正确,您将为每个县使用相同的 Rnw 文件,因此每个县只有变量display_county不同。我会首先调用数据库以获取所有县的名称并将它们存储在一个向量中(比如...... myCounties)。之后,您的报告可以使用包含以下内容的脚本生成:

for(dc in myCounties)  {
  knit2pdf(input='county_report.Rnw', output=paste0(dc, '_county_report.pdf'))
}

为了更有效地处理错误,您还可以将 knit2pdf 调用包装在 tryCatch 语句中:

for(dc in myCounties)  {
  tryCatch(knit2pdf(input='county_report.Rnw', output=paste0(dc, '_county_report.pdf')))
}
于 2013-03-21T21:59:05.927 回答