library(tm)
library(tmcn)
library(rJava)
library(Rwordseg)
#install.packages('wordcloud')
library(wordcloud)
#获取data中的聊天信息,写入text.txt中
write.table(data$des,"text.txt",row.names = F)
#使用segmentCN进行分词,并且保存在同目录下的text.segment.txt中
segmentCN("text.txt",returnType = "tm")
#读取分词后的文档
text1<-readLines("text.segment.txt",encoding = "UTF-8")
#根据\\S(正则表达式,代表空格,换行,回车等空白符)进行分割
word<-lapply(x=text1,FUN = strsplit,"\\s")
#把list返转换成非list
word1<-unlist(word)
#计算每个词的频率
df<-table(word1)
#进行排序
df<-sort(df,decreasing = T)
#转换成数据框
df1<-data.frame(df)
#重新赋予新的数据框,编辑新的列名称
dataFreq<-data.frame(word=as.character(df1$word1),freq=df1$Freq,stringsAsFactors = F)
#去除小于平均数的词汇
dataFreq<-dataFreq[dataFreq$freq>=mean(dataFreq$freq),]
#制作词云
wordcloud(dataFreq$word,dataFreq$freq,shape='star',
min.freq=50,
colors = rainbow(length(row.names(dataFreq)))
)