你怎么能总是抑制R中的消息?

时间:2014-07-15 20:38:42

标签: r

我看到R中使用的最常见的消息是在包的开头。使用suppressMessages可以轻松完成抑制一个函数的消息,如下所述:Disable Messages Upon Loading Package in R。通过在{}函数调用中嵌入supressMesssages,也可以抑制多行消息生成函数调用。但是,如果你有一个完整的脚本,在这里和那里发生消息,无论如何都要完全禁用它们?我正在寻找类似选项(warn = -1)但是对于消息。请注意,sink并不能完全符合我的要求,因为它会重定向所有输出...我希望保留print的输出,但不保留message的输出。

1 个答案:

答案 0 :(得分:7)

在sink

中使用type参数
# Open a file to send messages to
zz <- file("messages.Rout", open = "wt")
# Divert messages to that file
sink(zz, type = "message")
message("not gonna show up in console")