【发布时间】:2015-10-01 22:28:59
【问题描述】:
{R 版本 3.1.2}
我正在尝试制作一个函数,它可以获取工作目录中任何 txt 文件的名称并自动读取它,删除停用词,并创建一个词云。到目前为止的代码如下:
word_cloud <- function(x){
fileName <- paste("./", x , sep="")
txt = readLines(fileName, warn=FALSE)
myCorpus = Corpus(VectorSource(txt))
myCorpus = tm_map(myCorpus, tolower)
myCorpus = tm_map(myCorpus, removePunctuation)
myCorpus = tm_map(myCorpus, removeNumbers)
myCorpus = tm_map(myCorpus, removeWords, stopwords("english"))
myDTM = TermDocumentMatrix(myCorpus, control =
list(minWordLength = 1))
m = as.matrix(myDTM)
v = sort(rowSums(m), decreasing = TRUE)
set.seed(4363)
wordcloud(names(v), v, min.freq = 50)
}
当它运行到它分配 myDTM 的行时,它会抛出错误,
"UseMethod("meta", x) 中的错误: 没有适用于“字符”类对象的“元”方法
和警告:
"另外:警告信息: 在 mclapply(unname(content(x)), termFreq, control) : 所有计划的核心都在用户代码中遇到错误”
这是怎么回事?
【问题讨论】:
-
如果没有一些数据,我无法重现您的错误。你能给出结果:txt = readLines(fileName, warn=FALSE);输入(头(txt))
-
c("本文下载者:[加州大学圣地亚哥分校]", "On: 01 April 2014, At: 13:41", "Publisher: Routledge", "Informa Ltd在英格兰和威尔士注册 注册号:1072954 注册办事处:Mortimer House, 37-41 Mortimer Street, London W1T 3JH, UK", "Ethics, Policy & Environment", "出版详情,包括作者说明和订阅信息:@987654321 @")
标签: r data-visualization tm word-cloud