加载包时禁用消息
我有一个R(ROCR)包,我需要在我的R环境中加载。 在加载软件包时,会打印一组消息。 这通常很好,但由于我的R脚本的输出被用于进一步的分析,我想完全禁用所有这些输出。 我怎么做? 而且,我更喜欢这样做,而不必修改ROCR,这样脚本的将来用户也不必这样做。
至今:
-
sink()
在这里不起作用 – 把stdout和std errredirect到/dev/null
对我来说什么都不做。 - 毫不奇怪,
options(warnings=-1)
也不会做任何事情,因为这些并不是警告,本身就是被打印出来的。
有什么想法吗?
只需在library()
调用周围使用suppressMessages()
:
edd@max:~$ R R version 2.14.1 (2011-12-22) Copyright (C) 2011 The R Foundation for Statistical Computing ISBN 3-900051-07-0 Platform: x86_64-pc-linux-gnu (64-bit) [...] R> suppressMessages(library(ROCR)) R> # silently loaded R> search() [1] ".GlobalEnv" "package:ROCR" # it's really there [3] "package:gplots" "package:KernSmooth" [5] "package:grid" "package:caTools" [7] "package:bitops" "package:gdata" [9] "package:gtools" "package:stats" [11] "package:graphics" "package:grDevices" [13] "package:utils" "package:datasets" [15] "package:methods" "Autoloads" [17] "package:base" R>