抑制R中的某些消息但留下其他消息?

抑制R中的某些消息但留下其他消息?,r,R,我是一个使用RScaLAPACK的R新手,每次我生成一个新的流程网格时,我都会收到一条消息 > sla.gridInit(2) [1] "RScaLAPACK:Process Grid Initialized " 我将把这一行放在一个函数中,我不希望我的函数吐出这个消息。然而,我不想只接收(“/dev/null”)调用,因为据我所知,某个地方可能会出错,然后我会抑制有用的输出。基本上,我希望它成功时保持沉默,失败时保持响亮。实现这一目标的最佳方式是什么 欢迎您提出任何想法,包括设计方面的

我是一个使用RScaLAPACK的R新手,每次我生成一个新的流程网格时,我都会收到一条消息

> sla.gridInit(2)
[1] "RScaLAPACK:Process Grid Initialized "
我将把这一行放在一个函数中,我不希望我的函数吐出这个消息。然而,我不想只接收(“/dev/null”)调用,因为据我所知,某个地方可能会出错,然后我会抑制有用的输出。基本上,我希望它成功时保持沉默,失败时保持响亮。实现这一目标的最佳方式是什么

欢迎您提出任何想法,包括设计方面的考虑

编辑: sla.gridInit()没有返回任何内容。sla.gridInit的代码只调用print()

编辑:
我认为捕获输出最像在中。如果我想用它做点什么,至少我会有输出。

您可以将此函数包装在一个suppress*函数、
suppressMessages
suppressWarnings
suppressPackageStartMessages
中。有关更多详细信息,请参阅这些功能的帮助页。

谢谢。我在谷歌上搜索信息,发现了另一个类似这样的问题。原来suppressMessages无法处理print()的输出:P