如何将data.frame的print输出保存为字符串且不输出到stdout?
仅将print.data.frame()输出保存为字符串而不输出到控制台
使用capture.output()函数就能实现这个需求——它会捕获R代码的控制台输出并以字符串向量的形式返回,不会在控制台打印内容。示例代码如下:
# 捕获print.data.frame的输出并存储到变量s,无控制台输出 s <- capture.output(print(iris[1:2,], row.names=FALSE))
如果需要得到和原print输出格式完全一致的单行字符串(保留换行),可以用paste()合并向量元素:
s_full <- paste(s, collapse = "\n")
此时s或s_full中就存储了原本会打印到控制台的内容,而控制台不会有任何输出。
内容的提问来源于stack exchange,提问作者cdalitz
相关产品推荐
相关产品推荐

