我有一个超过5000个文本文件的语料库。在运行每个文件的预处理后,我想获得每个文件的单独字数(调低,删除停用词等)。对于单个文本文件的字数统计,我没有任何运气。任何帮助,将不胜感激。

library(tm)
revs<-Corpus(DirSource("data/"))
revs<-tm_map(revs,tolower)
revs<-tm_map(revs,removeWords, stopwords("english"))
revs<-tm_map(revs,removePunctuation)
revs<-tm_map(revs,removeNumbers)
revs<-tm_map(revs,stripWhitespace)
dtm<-DocumentTermMatrix(revs)

最佳答案

正如泰勒(Tyler)指出的那样,如果没有可重复的示例,您的问题就不完整。以下是制作此类问题的可重现示例的方法-使用软件包内置的数据:

library("tm") # version 0.6, you seem to be using an older version
data(crude)
revs <- tm_map(crude, content_transformer(tolower))
revs <- tm_map(revs, removeWords, stopwords("english"))
revs <- tm_map(revs, removePunctuation)
revs <- tm_map(revs, removeNumbers)
revs <- tm_map(revs, stripWhitespace)
dtm <- DocumentTermMatrix(revs)

这是获取每个文档字数的方法,dtm的每一行都是一个文档,因此您只需将一行的列求和即可得到文档的字数:
# Word count per document
rowSums(as.matrix(dtm))

10-04 23:20