最近对数据产品经理这个岗位比较感兴趣,想分析一下当前这个方向的就业条件和职责,简单使用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()
分析
如上图所示,词频分析结果,默认的顺序英文分词排序在前,很遗憾这里没有做大小写敏感处理。这些词对应的更多是数据产品经理所需要掌握的技能,比如:axure、excel、hadoop、MySQL、SQL等。大概可以将其分为三类:
- 产品原型设计:如Axure、Photoshop、Sketch等
- 数据挖掘/分析工具:如Excel、Python、SQL、Hive、SPSS等
- 常用办公软件:如PPT、Word等
除此以外,一些更偏向技术开发的工具,如Linux、Java也位列其中,想必这个岗位跟技术有着密切的联系。
分析Top50的词频,可以帮助我们发现公司对这个岗位更全面职责和软硬实力要求,从这些词汇中我们可以发现如下三条:
- 此工作对工作经验要求比较高,对于技术能力方面的要求也不容忽视,有数据产品相关领域的丰厚经验的人士优先考虑
- 在日常的工作中,良好的理解、沟通和逻辑思维能力是必备的(跟各个部门协(si)调(bi)能不需要这些能力吗?要不然被拍死在沙滩上)
- 要求熟悉互联网,理解并践行以用户为核心的互联网产品观
Future
- 尝试使用Python写爬虫程序到招聘网站上自动获取职位信息,以构建更大的数据源文件
- 使用停用词过滤
- 大小写不敏感