当我将 inspect() 对象保存在 R 的 tm 包中时,它会打印到屏幕上。它确实将我想要的数据保存在 data.frame 中,但是我有数千个文档要分析,并且打印到屏幕上占用了我的内存。
library(tm)
data("crude")
matrix <- TermDocumentMatrix(corpus,control=list(removePunctuation = TRUE,
stopwords=TRUE))
out= data.frame(inspect(matrix))
我已经尝试了所有我能想到的技巧。capture.output() 改变对象(不是想要的效果),sink() 也是如此。dev.off() 不起作用。invisible() 什么都不做。suppressWarnings()、suppressMessages() 和 try() 不出所料地什么都不做。检查命令中没有静默或静默选项。
我能得到的最接近的是
out= capture.output(inspect(matrix))
out= data.frame(out)
值得注意的是,它没有给出相同的data.frame,但如果我需要沿着这条路线走,很容易。任何其他(不那么老套)的建议都会有所帮助。谢谢。
Windows 7 64 位 R-3.0.1 tm 软件包是最新版本 (0.5-9.1)。