我有一个Rmarkdown代码来生成多个参数的报告。因此,我在循环中使用knit_child
函数,在该循环中,第一次迭代运行良好,但是随后无限期挂起,从不开始第二次迭代。
在我的桌面(Ubuntu 18.04)上,代码工作正常,并且生成了pdf报告,但是在我们的服务器(CentOS Linux版本7.1.1503(核心))上,出现了上述问题。根据一些研究,我尝试将pandoc更新到版本2.7.2,但问题仍然存在。从命令行或RStudio运行脚本没有什么区别。
for (spec in params$species) {
out = tryCatch(c(out, knit_child('child.Rmd')), error = function(e) e)
if (inherits(out, "error")) {
next
}
}
没有错误,脚本不会继续进行下一个迭代。如果我仅提供一个species
,则生成pdf,但如果我想循环浏览多个pdf,则不会生成。