使用 R 语言从拉勾网看数据挖掘岗位现状

时间:2022-05-04
本文章向大家介绍使用 R 语言从拉勾网看数据挖掘岗位现状,主要内容包括数据挖掘岗位现状、从事数据挖掘行业,需要具备哪些技能组合、项目结构、基本概念、基础应用、原理机制和需要注意的事项等,并结合实例形式分析了其使用技巧,希望通过本文能帮助到大家理解应用这部分内容。

因为毕业后想从事数据挖掘相关的职业,但对该行业的需求不太了解,网上资料太多查看花时间且抓不住重点,所以爬取了拉勾网上 900 多条相关的岗位共计 30 万字的职位描述的数据进行了相关的分析。分析结果主要想回答下面两个问题:

1、目前数据挖掘岗位的现状 ? 2、如果要从事数据挖掘行业,需要具备哪些技能 ?

分析时间:2017 年 2 月 工具:RStudio, Number, R (爬取和分析使用的都是 R )

数据挖掘岗位现状

分两块描述,第一块是基本的统计数据,包括数据挖掘在那个城市需求最旺盛,对应聘人员的学历要求,行业的分布和公司的财务状况。第二块围绕着薪酬做相关性的分析,主要是工作资历与薪酬之间的关系,以及行业与薪酬之间的关系。

首先可以看到大部分数据挖掘岗位都分布在北京,上海,深圳和杭州,北京该岗位需求相当旺盛,差不多占据了一半的职位数量。从左边的饼图可以看出,大部分数据挖掘岗位对应聘者的学历要求为至少是本科以上。

左边的条形图显示大部分的数据挖掘岗位都分布在移动互联网领域,另外,右边的饼图可以看出,上市公司和成长型 B 轮及 D 轮以上的公司对数据挖掘岗位的需求最大。

从左边这张图可以看出,对于有 1-3 年经验的应聘者,企业的普遍工资在 16-20 K 左右的水平,而对于 3-5 年工作经验的应聘者,则普遍的工资在 21-25 K,另外有意思的是,许多职位对工作经验没有要求,但是也愿意给出不错的薪酬。从右边的图可以看出,移动互联网领域职位数量多且工资相对较高,若想找份高薪的工作,在移动互联网行业做数据挖掘是个不错的选择。

从事数据挖掘行业,需要具备哪些技能组合

将爬取到的全部职位描述汇总在一起后,总共有差不多 30 万字的职位描述。这里首先使用 jiebaR 中文分词库对文本进行分析和挖掘。在挖掘之前,首先需要简历自己的词料库,我使用的词料库是从网上搜查得到,感兴趣可点击此处查询。

https://github.com/edvardHua/JobRequirementAnalysis/blob/master/corpus/collected.dict.utf8

首先使用 jiebaR 库对 30 万字的职业描述进行关键字(TF_IDF 算法)提取,结果如下:

"数据挖掘" "算法" "数据" "经验" "熟悉" "机器学习" "优先"

关键字高度概括了企业对应聘者的需求,拿这些词造句的话,应该可以理解为:

「我们需要找一位熟悉数据结构和机器挖掘算法的人。另外,具备经验者优先。」

随后,再根据自己收集的语料库进行词频统计,做成云图,结果如下:

从词云和术语出现次数可以看出,想要从事数据挖掘,除了要熟悉基本的编程语言和框架外( Python,Hadoop,Java,Spark,R ),统计学也被很多企业所提及。

项目结构

使用到的 R 包:ggplot2, jiebaR, wordcloud2 项目结构:

  ├── data
  │ ├── position- 1:63 拉勾网的原始数据,为 json 格式
  ├── cache
  │ ├── position_after_cleaning.csv 预处理后的数据,直接读取既可使用
  │ ├── ...
  ├── corpus
  │ ├── collected.dict.utf8  数据挖掘领域相关的语料库
  │ ├── ...
  ├── graphs
  │ ├── ...
  ├── src
  │ ├── curl.R 爬虫
  │ ├── clean.R 数据清洗
  │ ├── func.R 公共函数
  │ └── statistics.R 统计结果可视化
  │ ├── mining.R 关键字提取和词频统计
  └── tests
      └── test.R

via http://www.jianshu.com/p/750c9b0996c