library(jiebaRD)
library(jiebaR) ##调入分词的库
cutter <- worker()
mydata =read.csv(file.choose(),fileEncoding = 'UTF-8',stringsAsFactors = FALSE,header=FALSE) ##读入数据(特别注意,read.csv居然能够读取txt的文本)spa
content <-as.character(mydata) #将数据字符串化
segWords <- segment(content,cutter)对象
#读取中止词blog
#删除停用词(就是删除一些介词、叹词之类的词语,这些词语自己没多大分析意义,但出现的频率却很高,好比"的、地、得、啊、嗯、呢、了、还、因而、那么、而后"等等。前提是必需要有一个停用词库,网上搜索便可下载,也是一个txt的文本文件,每行一个词。网上有两种版本,一种是500多个词的,一种是1000多个词的)
f<- read.table(file = file.choose(), stringsAsFactors = FALSE) #stopword.txt
stopwords <- c(NULL) #定义一个空对象stopwords,并赋值为“空”
for(i in 1:length(f)){ #for循环,length(f)求得中止词库词条个数。
stopwords[i] <- f[i] #遍历中止词库,将第【i】个中止词赋值给stopwords
}排序
segWords <- gsub("[0-9a-zA-Z]+?","",segWords) #gsub用来去掉segWord文本中的数字,英文,但生成了空格,""产生了空格字符串
library(stringr) #载入stringr包,仅用来去掉文本中的空格
segWords <- str_trim(segWords) #去掉segwords中的空格
txt.asvector <- unlist(segWords) #将segwords向量化
tableWord <- table(txt.asvector) #将txt.asvector生成为列联表
Wordresult<- tableWord[order(-tableWord)] #将tableword降序排列,从多到少排序string
library(wordcloud2) #调入绘制词云的库
wordcloud2(Wordresult[1:100])for循环