[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)
复制代码

 

posted @   Zhentiw  阅读(390)  评论(0编辑  收藏  举报
(评论功能已被禁用)
编辑推荐:
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
阅读排行:
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· AI技术革命,工作效率10个最佳AI工具
点击右上角即可分享
微信分享提示