试图删除为了使用topicmodels从DocumentTermMatrix话(Trying to

2019-09-01 10:13发布

所以,我试图用topicmodelsR (100个主题上的语料库〜6400页的文件,这是每个〜1000个字)。 该工艺运行,然后死了,我想是因为它在运行内存不足。

所以我尽量缩小该文件项矩阵的大小lda()函数作为输入; 我想我能做到这一点做使用minDocFreq功能时,我产生我的文档词矩阵。 但是,当我使用它,它似乎没有任何区别。 下面是一些代码:

这里是代码的相关位:

> corpus <- Corpus(DirSource('./chunks/'),fileEncoding='utf-8')
> dtm <- DocumentTermMatrix(corpus)
> dim(dtm)
[1] 6423 4163
# So, I assume this next command will make my document term matrix smaller, i.e.
# fewer columns. I've chosen a larger number, 100, to illustrate the point.
> smaller <- DocumentTermMatrix(corpus, control=list(minDocFreq=100))
> dim(smaller)
[1]  6423 41613

相同的尺寸,和相同的列数(即,相同数目的术语)。

任何意义上,我做错了什么? 谢谢。

Answer 1:

回答你的问题是在这里: https://stackoverflow.com/a/13370840/1036500 (!给它一个给予好评)

总之,最近的版本tm包不包括minDocFreq而是使用bounds ,例如,您的

smaller <- DocumentTermMatrix(corpus, control=list(minDocFreq=100))

现在应该是

require(tm)
data("crude")

smaller <- DocumentTermMatrix(crude, control=list(bounds = list(global = c(5,Inf))))
dim(smaller) # after Terms that appear in <5 documents are discarded
[1] 20 67
smaller <- DocumentTermMatrix(crude, control=list(bounds = list(global = c(10,Inf))))
dim(smaller) # after Terms that appear in <10 documents are discarded
[1] 20 17


文章来源: Trying to remove words from a DocumentTermMatrix in order to use topicmodels