如何将 str() 的结果保存为 R 中的字符串?

How can I save the result of str() as a string in R?

我正在通过开发一个 shiny 应用程序 来学习 Shiny,该应用程序会创建关于所选 csv 文件的报告。我能够输出 dataFrame 头部和摘要。但是,我坚持将 df 的 str() 表示形式保存为 str() 函数 returns NULL,而是将内容打印到控制台。

是否有任何解决方法可以将 str() 保存到变量以便在闪亮的应用程序中表示它?

capture.output 将创建一个字符向量(打印到控制台的每行一个元素)。如果你想把它放在一个字符串中,你可以用 paste(foo, collapse="\n").

连接它
data(iris)
(out <- capture.output(str(iris)))
out2 <- paste(out, collapse="\n")