我正在使用Sweave编写R笔记,想展示常见错误。例如,
<<echo=TRUE, eval=TRUE>>=
x = 5
#Case matters!
x*X
@
然而,当进行编织时,文档由于R错误无法编译。是否有办法使Sweave编译并显示(格式良好的)错误信息?
knitr
时不再是问题。它默认显示错误和警告,而这在Sweave
中很难或不可能实现,此外还有许多其他好的特性(例如语法着色、PGF集成和绘图动画等)。此软件正在积极开发和维护中。
Sweave
代码必须使用同一软件包提供的Sweave2knitr
函数进行转换。<<echo=TRUE,eval=FALSE>>
对于会出错的代码,但您想要显示它,可以使用
重新开始。<<echo=FALSE,eval=TRUE,results=verbatim>>
将错误包装在try()
命令中。这样它就会继续运行:
> {print(1); try(x*X); print(2)}
[1] 1
Error in try(x * X) : object 'X' not found
[1] 2