R: Как подавить вывод на печать, когда пользователь назначает вывод вашей функции переменной? - PullRequest
1 голос
/ 21 октября 2019

Фон

Функция 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)

Я не уверен, как это реализовано. В моей собственной функции у меня есть message(), который происходит до return(). Пример игрушки:

toy <- function(i){

  if(i > 0){

    message("i is greater than 0")

  }

  return(i)

}

В настоящее время я даю пользователю возможность установить параметр silent как TRUE или FALSE, чтобы подавить вывод на печать с помощью оператора if().

Вопрос

Существует ли способ автоматического подавления вывода сообщений / печати функции, когда пользователь назначает вывод функции переменной?

...