R语言词频统计与词云分析

最近对数据产品经理这个岗位比较感兴趣,想分析一下当前这个方向的就业条件和职责,简单使用R的jiebaR包对搜集来的岗位描述要求描述进行词频的分析和词云的生成。

程序

首先,准备好数据文件jds.txt。此文件内容是从拉勾网搜索“数据产品经理”的结果中具有代表性的职位描述中提取,总共包含大约40份岗位信息。

这里我们使用结巴分词(jiebaR),这是一款高效的R语言中文分词包,感谢国人作者的贡献。代码片段如下:

library(jiebaR)
library(wordcloud)

#读入数据分隔符是‘\n’,字符编码是‘UTF-8’
jd_file <- scan('D:/jds.txt',sep='\n',what='',encoding="UTF-8")

seg<-qseg[jd_file] #使用qseg类型分词
seg<-seg[nchar(seg)>1] #去除字符长度小于1的词
seg<-table(seg)
seg<-seg[!grepl('[0-9]+',names(seg))]#过滤数字
seg

seg <- sort(seg, decreasing = TRUE)[1:50]
#获得词频数前50的词
seg

#制作词云
bmp("jds.bmp", width = 800, height = 800)
wordcloud(names(seg), seg, colors = rainbow(100), random.order=F)
dev.off()

分析

R语言词频统计与词云分析_第1张图片
词频统计

如上图所示,词频分析结果,默认的顺序英文分词排序在前,很遗憾这里没有做大小写敏感处理。这些词对应的更多是数据产品经理所需要掌握的技能,比如:axure、excel、hadoop、MySQL、SQL等。大概可以将其分为三类:

  • 产品原型设计:如Axure、Photoshop、Sketch等
  • 数据挖掘/分析工具:如Excel、Python、SQL、Hive、SPSS等
  • 常用办公软件:如PPT、Word等
    除此以外,一些更偏向技术开发的工具,如Linux、Java也位列其中,想必这个岗位跟技术有着密切的联系。
R语言词频统计与词云分析_第2张图片
Top50词频

分析Top50的词频,可以帮助我们发现公司对这个岗位更全面职责和软硬实力要求,从这些词汇中我们可以发现如下三条:

  • 此工作对工作经验要求比较高,对于技术能力方面的要求也不容忽视,有数据产品相关领域的丰厚经验的人士优先考虑
  • 在日常的工作中,良好的理解、沟通和逻辑思维能力是必备的(跟各个部门协(si)调(bi)能不需要这些能力吗?要不然被拍死在沙滩上)
  • 要求熟悉互联网,理解并践行以用户为核心的互联网产品观
Top50词云

Future

  • 尝试使用Python写爬虫程序到招聘网站上自动获取职位信息,以构建更大的数据源文件
  • 使用停用词过滤
  • 大小写不敏感

你可能感兴趣的:(R语言词频统计与词云分析)