在R中从语料库中搜索已删除的文档

在R中从语料库中搜索已删除的文档,r,dataframe,tm,corpus,R,Dataframe,Tm,Corpus,我想在分析文本之前对其进行预处理 mydat 代码 mydat=read.csv("C:/kr_csv.csv", sep=";",dec=",") tw.corpus <- Corpus(VectorSource(mydat$descr)) tw.corpus <- tm_map(tw.corpus, removePunctuation) tw.corpus <- tm_map(tw.corpus, removeNumbers) tw.corpus = t

我想在分析文本之前对其进行预处理

mydat

代码

 mydat=read.csv("C:/kr_csv.csv", sep=";",dec=",")

  tw.corpus <- Corpus(VectorSource(mydat$descr))
  tw.corpus <- tm_map(tw.corpus, removePunctuation)
  tw.corpus <- tm_map(tw.corpus, removeNumbers)
  tw.corpus = tm_map(tw.corpus, content_transformer(tolower))
  tw.corpus = tm_map(tw.corpus, stemDocument)


#deleting emptu documents 

doc.m <- DocumentTermMatrix(tw.corpus)


rowTotals <- apply(doc.m , 1, sum) #Find the sum of words in each Document
doc.m.new   <- doc.m[rowTotals> 0, ]  
mydat=read.csv(“C:/kr_csv.csv”,sep=“;”,dec=“,”)

tw.corpus在对语料库进行预处理和词干分析后,您将计算每个文档中剩余的单词数。当然,没有文字的“文件”计数为零。此外,只有字母和标点符号的文档也是空的,因为您删除了这些字符串

在数据中,有许多“文档”是空行。总体而言,语料库中有28个“文档”,但其中一半以上是空行(即它们包含零个单词)

您可以在
行总数中计算每个文档的字数。如果您检查
行总数
中的哪些条目等于零,您将获得随后从
doc.m
中删除的文档编号:

rowTotals
# 1  2  3  4  5  6  7  8  9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 
# 3  5  1  0  0  0  0  0  0  0  0  0  0  0  0  0  0  0  0 10  2  8  8  2  0  0  0  7 
您可以看到文档4、5、6、7、8、9、10、11、12、13等都包含零个单词,因此不在
doc.m
中。您可以使用
which()
自动获取这些号码:

rowTotals
# 1  2  3  4  5  6  7  8  9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 
# 3  5  1  0  0  0  0  0  0  0  0  0  0  0  0  0  0  0  0 10  2  8  8  2  0  0  0  7 
which( rowTotals == 0)
# [1] 4  5  6  7  8  9 10 11 12 13 14 15 16 17 18 19 25 26 27