[R] Draw a wordcloud

# 加载rJava、Rwordseg库  
library(rJava);  
library(Rwordseg);  
library(RColorBrewer);
  
# == 读入数据  
lecture=read.csv("G:\\test.txt",sep=",",header=TRUE,fileEncoding="UTF-8");   
# 查看前几行,看是否有字符编码问题  
head(lecture);  
# 获取数据集长度  
n=length(lecture[,1]);  
print(n)  
  
# == 文本预处理  
res=lecture[lecture!=" "];  
#剔除URL  
res=gsub(pattern="http:[a-zA-Z\\/\\.0-9]+","",res);   
#剔除特殊词  
res=gsub(pattern="[我|你|的|了|是|和|阳|创业|宁阳]","",res);       
  
# == 分词+频数统计  
words=unlist(lapply(X=res, FUN=segmentCN));  
word=lapply(X=words, FUN=strsplit, " ");  
v=table(unlist(word));    
# 降序排序  
v=rev(sort(v));   
d=data.frame(word=names(v), freq=v);   
# 过滤掉1个字和词频小于100的记录  
d=subset(d, nchar(as.character(d$word))>1 & d$freq>=10)  

require(wordcloud)
library(RColorBrewer);
dd = head(d, 50)
op = par(bg = "lightyellow")      #背景为亮黄色
rainbowLevels = rainbow((dd$freq)/(max(dd$freq) - 10))      #不知道什么意义,删除后图形无太大变化
text(family = "Kai")
wordcloud(d$word, d$freq, scale=c(5,0.5),  random.order=FALSE, colors=brewer.pal(8, "Dark2"),use.r.layout=FALSE) #
par(op)

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值