抑制knitr中的错误消息
我想知道如何在抑制knitr中的错误消息,r,latex,knitr,sweave,R,Latex,Knitr,Sweave,我想知道如何在knitr中抑制错误消息。我的MWE如下: \documentclass{article} \begin{document} << Test >>= 1:10 X @ \end{document} \documentclass{article} \开始{document} >= 1:10 X @ \结束{document} 已编辑 对象X不存在。我想在我的代码块中显示X,并想对其进行评估,即使这会引发错误。但是不想在我的.tex文档中显示任何错误,
knitr
中抑制错误消息。我的MWE如下:
\documentclass{article}
\begin{document}
<< Test >>=
1:10
X
@
\end{document}
\documentclass{article}
\开始{document}
>=
1:10
X
@
\结束{document}
已编辑
对象
X
不存在。我想在我的代码块中显示X
,并想对其进行评估,即使这会引发错误。但是不想在我的.tex
文档中显示任何错误,就像我们可以通过设置warning=FALSE
来抑制警告一样错误有自己的专用钩子函数,存储在通过knit\u hooks$get()访问的环境中。以下是这些功能的完整列表,供您参考:
names(knit_hooks$get())
# [1] "source" "output" "warning" "message" "error" "plot"
# [7] "inline" "chunk" "document"
要抑制警告,只需使用接受所需参数但不返回任何内容的函数覆盖默认错误挂钩函数
\documentclass{article}
\begin{document}
<<setup, include=FALSE, cache=FALSE>>=
muffleError <- function(x,options) {}
knit_hooks$set(error=muffleError)
@
<<Test>>=
1:10
X
@
\end{document}
\documentclass{article}
\开始{document}
=
muffleError Yes X不存在,将产生错误。我不想在我的knitr文件中显示任何错误消息。是的,我想在我的代码块中显示X
,并对其进行评估。但是不想显示任何错误,因为我们可以通过设置warning=FALSE
来抑制警告。请尝试error=FALSE
,但您的目标对我来说并不完全清楚。OP只想运行代码,而不显示错误,这怎么不清楚?如果区块中出现错误,则include
区块选项将失败。我希望@Yihui会加入进来,如果有可能的话,不管发生什么,都能阻止大块出现在结果中。