當前位置: 首頁>>代碼示例 >>用法及示例精選 >>正文


R capture.output 將輸出發送到字符串或文件


R語言 capture.output 位於 utils 包(package)。

說明

評估其參數,並將輸出作為字符串返回或發送到文件。與 sink 相關,類似於 withattach 相關。

用法

capture.output(..., file = NULL, append = FALSE,
               type = c("output", "message"), split = FALSE)

參數

...

要評估的表達式。

file

文件名或 connectionNULL 以字符向量形式返回輸出。如果連接未打開,它將最初打開並在退出時關閉。

append

合乎邏輯的。如果file是文件名或未打開的連接,追加還是覆蓋?

type, split

被傳遞到 sink() ,請參閱那裏。

細節

它的工作原理是通過sink(<file connection>)因此R代碼在dots必須不是幹擾連接(例如,通過調用closeAllConnections())。

如果計算表達式時出現錯誤,則會嘗試將輸出盡可能寫入file,但對於file = NULL,所有輸出都將丟失。

發送到 stderr() 的消息(包括來自 messagewarningstop 的消息)由 type = "message" 捕獲。請注意,這可以是“unsafe”,並且應謹慎使用。

字符串(如果是 file = NULL ),或不可見的 NULL

例子

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})

## Not run: ## on Unix-alike with a2ps available
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 &")

## End(Not run)

也可以看看

sink , textConnection

相關用法


注:本文由純淨天空篩選整理自R-devel大神的英文原創作品 Send Output to a Character String or File。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。