我一直在做一些文本挖掘。我使用以下方法创建了 DTM 矩阵
以下步骤。
corpus1<-VCorpus(VectorSource(resume1$Dat1))
corpus1<-tm_map(corpus1,content_transformer(tolower))
corpus1<-tm_map(corpus1,content_transformer(trimWhiteSpace))
dtm<-DocumentTermMatrix(corpus1,
control = list(removePunctuation = TRUE,
removeNumbers = TRUE,
removeSparseTerms=TRUE,
stopwords = TRUE))
在跑完之后,我仍然听到诸如 -quotation、“有趣、模型”之类的词
等在 dtm.Also 中也得到像“”这样的空白数据
我该怎么办?我不需要这个破折号和额外的引文。
最佳答案
我不确定为什么 DocumentTermMatrix 对您不起作用,但您可以尝试使用 tm_map 在将语料库转换为 dtm 之前对其进行预处理。这对我有用(请注意,我对默认停止列表重新排序,否则它会在整个单词之前删除撇号词的词干,留下搁浅的 's'):
corpus1 <- VCorpus(VectorSource(resume1$dat))
reorder.stoplist <- c(grep("[']", stopwords('english'), value = TRUE),
stopwords('english')[!(1:length(stopwords('english')) %in% grep("[']", stopwords('english')))])
corpus1 <- tm_map(corpus1, content_transformer(tolower))
corpus1 <- tm_map(corpus1, removeWords, reorder.stoplist)
corpus1 <- tm_map(corpus1, removePunctuation)
corpus1 <- tm_map(corpus1, removeNumbers)
corpus1 <- tm_map(corpus1, stripWhitespace)
corpus1 <- DocumentTermMatrix(corpus1)
关于r - 文本挖掘 - removePunctuation 不删除引号和破折号,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/30703215/