在R中使用tm和wordcloud软件包创建wordcloud时出错
我不太清楚使用在R中使用tm和wordcloud软件包创建wordcloud时出错,r,data-visualization,tm,word-cloud,R,Data Visualization,Tm,Word Cloud,我不太清楚使用tm软件包时遇到的一些错误 我知道wordcloud包中的wordcloud函数以语料库作为参数: 如文档中所述:(您给出函数的单词)可以是字符向量,也可以是语料库 到目前为止还不错 考虑到这一点,我有一些简单的代码如下: library(tm) library(wordcloud) corpus <-Corpus(DirSource("/.../MUSIC"), readerControl = list(language="lat")) readerControl =
tm
软件包时遇到的一些错误
我知道wordcloud
包中的wordcloud
函数以语料库作为参数:
如文档中所述:(您给出函数的单词)可以是字符向量,也可以是语料库
到目前为止还不错
考虑到这一点,我有一些简单的代码如下:
library(tm)
library(wordcloud)
corpus <-Corpus(DirSource("/.../MUSIC"), readerControl = list(language="lat")) readerControl = list(language="lat"))
a <- tm_map(corpus, removeWords, c(stopwords("en")), mc.cores=1)
但我得到了以下错误:
Error in simple_triplet_matrix(i = i, j = j, v = as.numeric(v),
nrow = length(allTerms), : 'i, j, v' different lengths
我不知道为什么语料库的维度不正确。我的印象是语料库是一个可以接受的输入
是否有人对这两种错误的本质有任何洞察,谁见过这一点,也许对各种解决方法有一些想法
提前感谢。您必须从语料库中创建一个
DocumentTermMatrix
。试试这个
tdm <- TermDocumentMatrix(corpus)
matrix <- as.matrix(tdm) # changed to term.matrix
v <- sort(rowSums(matrix),decreasing=TRUE)
d <- data.frame(word = names(v),freq=v)
wordcloud(d$word)
tdm没有数据很难判断。由于?wordcloud
中的示例工作正常,并且与您的工作流程相匹配,这告诉我一个数据问题。使用inspect
查看语料库
。可能是缺少数据、空行。一些不寻常的事情。我一直有着完全相同的问题,但我永远无法解决它。我在ubuntu上遇到了这个问题,但在debian上没有。最终我换到了debian上,但一直没有解决为什么会发生这种情况。我应该提到的是,我也遇到了一个问题,就是在没有加载wordcloud的情况下,试图将tm语料库强制成树状图。
tdm <- TermDocumentMatrix(corpus)
matrix <- as.matrix(tdm) # changed to term.matrix
v <- sort(rowSums(matrix),decreasing=TRUE)
d <- data.frame(word = names(v),freq=v)
wordcloud(d$word)