背景
该t.test()
函数返回打印输出如下:
set.seed(2)
dat = rnorm(n = 50, mean = 0, sd = 1)
t.test(x = dat, mu = 0)
One Sample t-test
data: dat
t = 0.43276, df = 49, p-value = 0.6671
alternative hypothesis: true mean is not equal to 0
95 percent confidence interval:
-0.2519143 0.3901901
sample estimates:
mean of x
0.06913791
当用户将此函数的输出分配给变量时,将抑制打印输出:
a = t.test(x = dat, mu = 0)
我不确定这是如何实现的。在我自己的函数中,我有 amessage()
发生在 a 之前return()
。玩具示例:
toy <- function(i){
if(i > 0){
message("i is greater than 0")
}
return(i)
}
目前,我为用户提供了一个选项,可以将silent
参数设置为TRUE
或FALSE
以使用if()
语句抑制打印输出。
问题
当用户将函数输出分配给变量时,有没有办法自动抑制函数的消息/打印输出?