尝试从DocumentTermMatrix
程序包运行tm
时,我收到以下内存分配错误。不知道为什么会发生这种情况,因为我的机器有128个内存,语料库只有3个演出。
Error in mcfork() :
unable to fork, possible reason: Cannot allocate memory
Calls: DocumentTermMatrix ... content.VCorpus -> materialize -> mclapply -> lapply -> FUN -> mcfork
这就是所谓的:
library(tm)
text <- read.csv('/path/to/text.csv', ...)
vct <- VCorpus(VectorSournce(text[,2]))
vct <- tm_map(vct, removeWords, stopwords("english"), mc.cores=1)
dtm <- DocumentTermMatrix(vct)
答案 0 :(得分:1)
从this帖子中,我想出了如何通过限制使用的核心数来解决这个问题。由于DocumentTermMatrix
没有明确的选项,我必须通过options
:
num.cores <- getOption("mc.cores")
options(mc.cores=1)
dtm <- DocumentTermMatrix(vct)
options(mc.cores=num.cores)