我尝试从语料库中构建一个 Document-Term Meatrix。我使用的命令是:
library(parallel)
library(tm)
library(RWeka)
library(topicmodels)
library(RTextTools)
cl=makeCluster(detectCores())
invisible(clusterEvalQ(cl, library(tm)))
invisible(clusterEvalQ(cl, library(RWeka)))
invisible(clusterEvalQ(cl, library(topicmodels)))
invisible(clusterEvalQ(cl, library(RTextTools)))
myCorpus <-Corpus(DirSource("/home/neeph/Test/DMOZ_Business"), encoding="UTF-8", readerControl=list(reader=readPlain))
removeURL <- function(x) gsub("http[[:alnum:]]*", "", x)
myCorpus <- tm_map(myCorpus, removeURL)
removeAmp <- function(x) gsub("&", "", x)
myCorpus <- tm_map(myCorpus, removeAmp)
removeWWW <- function(x) gsub("www[[:alnum:]]*", "", x)
myCorpus <- tm_map(myCorpus, removeWWW)
myCorpus <- tm_map(myCorpus, tolower)
myCorpus <- tm_map(myCorpus, removeNumbers)
myCorpus <- tm_map(myCorpus, removePunctuation)
myCorpus <- tm_map(myCorpus, removeWords, stopwords("english"))
myCorpus <- tm_map(myCorpus, removeWords, stopwords("SMART"))
myCorpus <- tm_map(myCorpus, stripWhitespace)
summary(myCorpus)
包含 696 个文本文档的语料库
元数据由 2 个标签值对和一个数据框组成 可用标签为:create_date creator 数据框中的可用变量为:MetaID
myDtm <- DocumentTermMatrix(myCorpus, control = list(wordLengths = c(1,Inf)))
如果我不包括标记化,那么到这个阶段一切都很好。但是,当我使用以下更改运行代码时:
dictCorpus <- myCorpus
myDtm <- DocumentTermMatrix(myCorpus, control = list(wordlengths=c(1,Inf),tokenize=NGramTokenizer, dictionary=dictCorpus))
它挂起。我让它一夜之间运行,但没有结果。任何帮助将非常感激。
更新:
summary(myDtm)
Error in order(list(i = c(1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, :
unimplemented type 'list' in 'orderVector1'
这个错误是什么意思?