Функция sink
- это стандартный R-способ перенаправления вывода. У него есть аргумент split
, что при установке на TRUE
все равно вывод команд выводится на stdout
.
Из документации мой акцент.
split
логично: если TRUE, вывод будет отправлен в новый приемник и в текущий поток вывода, , как Unix программная тройка .
Это поведение показано в следующем примере.
Сначала набор данных для запуска команды с большим количеством записанных выходных данных.
set.seed(1234)
x <- 1:10
y <- x + rnorm(10, mean = 2, sd = 4)
Эти инструкции предназначены для того, чтобы не связываться с моим рабочим пространством. Не стесняйтесь их пропускать.
old_dir <- getwd()
setwd('~/tmp')
Теперь пример split sink
.
sink(file = 'sink.txt', split = TRUE)
summary(lm(y ~ x))
sink(NULL)
summary
выводится как на стандартный вывод, так и в файл sink.txt
.
Очистить вверх.
unlink('sink.txt')
И обратно туда, где я был.
setwd(old_dir)