在R markdown包装插图中包含错误

时间:2016-08-28 00:52:59

标签: r r-package vignette

我正在开发一个R包,并且拥有一个包含if(condition) stop("Error message")条件的自定义函数。我在包装插图中调用此函数,目的是生成错误消息并将其包含在插图中。但是,这会导致小插图构建失败。

即使代码生成错误消息,如何强制插图构建继续进行,并将这些错误消息保留在小插图文档中?

1 个答案:

答案 0 :(得分:8)

knitr chunk options documentation说:

  

error :( TRUE;逻辑)是否保留错误(来自stop());默认情况下,即使出现错误,评估也不会停止!!如果我们希望R停止错误,我们需要将此选项设置为FALSE

rmarkdown render()函数默认将此值重置为FALSE(与knitr本身不同),可以说是更好的默认值。你可以覆盖它并将其设置回TRUE(我认为)

  • 在特定块的选项中设置error=TRUE,或
  • 在早期代码块中使用knitr::opts_chunk$set(error=TRUE)来全局设置选项。

我会建议前者(即,只允许错误,你期待它们......)