capture.output

0th

Percentile

Send Output to a Character String or File

Evaluates its arguments with the output being returned as a character string or sent to a file. Related to sink in the same way that with is related to attach.

Keywords
utilities
Usage
capture.output(…, file = NULL, append = FALSE,
type = c("output", "message"), split = FALSE)
Arguments

Expressions to be evaluated.

file

A file name or a connection, or NULL to return the output as a character vector. If the connection is not open, it will be opened initially and closed on exit.

append

logical. If file a file name or unopened connection, append or overwrite?

type, split

are passed to sink(), see there.

Details

An attempt is made to write output as far as possible to file if there is an error in evaluating the expressions, but for file = NULL all output will be lost.

Messages sent to stderr() (including those from message, warning and stop) are captured by type = "message". Note that this can be “unsafe” and should only be used with care.

Value

A character string (if file = NULL), or invisible NULL.

sink, textConnection
library(utils) require(stats) glmout <- capture.output(summary(glm(case ~ spontaneous+induced, data = infert, family = binomial()))) glmout[1:5] capture.output(1+1, 2+2) capture.output({1+1; 2+2}) ## on Unix-alike with a2ps available<!-- %% ?? pandoc with obeylines, obeyspaces --> op <- options(useFancyQuotes=FALSE) pdf <- pipe("a2ps -o - | ps2pdf - tempout.pdf", "w") capture.output(example(glm), file = pdf) close(pdf); options(op) ; system("evince tempout.pdf &") <!-- % dont -->