Функция sink
- это стандартный способ R перенаправления вывода. У него есть аргумент split
, который при установке в TRUE
по-прежнему будет иметь вывод команд, печатаемых на stdout
.
Из документации, мой акцент.
split
logic: если TRUE, вывод будет отправлен в новый приемник и в текущий поток вывода, как в программе Unix tee.
В следующем примере показано это поведение.
Сначала набор данных для выполнения команды с большим количеством записанных выходных данных.
set.seed(1234)
x <- 1:10
y <- x + rnorm(10, mean = 2, sd = 4)
Эти инструкции предназначены не для того, чтобы мешать моему рабочему пространству. Не стесняйтесь их пропускать.
old_dir <- getwd()
setwd('~/tmp')
Теперь пример с разделением sink
.
sink(file = 'sink.txt', split = TRUE)
summary(lm(y ~ x))
sink(NULL)
summary
вывод на стандартный вывод и в файл sink.txt
.
Очистить.
unlink('sink.txt')
И обратно туда, где я был.
setwd(old_dir)
person
Rui Barradas
schedule
16.04.2020
split - logical: if TRUE, output will be sent to the new sink and to the current output stream, like the Unix program tee.
- person Rui Barradas   schedule 16.04.2020