python实现对招聘信息中数据类岗位的分析与预测

上次读到关于拉勾网职位分析的文章,该文章主要是对其各个地区的岗位分布及薪资构成做了基本的描述性分析,所以我不免产生了对其继续分析的冲动。本文接下来单从技术岗位出发,着重分析各个类型的技术岗位的需求情况。

Python爬虫框架Scrapy实战之定向批量获取职位招聘信息

2分钟完成30*15页拉勾网职位需求关键词的抓取

一.数据获取:

利用python爬取了拉勾网的部分数据,后嫌样本过少,在泰迪杯上直接下载了相关招聘类数据。总计530444条。

二.分析结果:

总体来看,技术类型的工作岗位需求最大 ,其中尤以后端开发需求最为旺盛。

虽然后端开发需求最高,但从工作岗位需求最为旺盛的前10个城市的工资水平来看,其工资在所有技术岗位内则不是最高,而是高端技术岗位明显高于其他技术岗位,相较而言,企业软件与测试、运维工资较低。

另外由于现在大数据比较火热,随之涌现出相应的许多诸如”数据分析”、“数据挖掘”的岗位.接下来着重分析下目前的数据相关的岗位需求情况,并对以后的需求数量进行预测。

通过与其他技术类岗位进行对比,数据类岗位遥遥领先,这说明数据类岗位需求非常旺盛,并且在2016年明显比2015年需求更加强劲。Ps:2015-2016中间那段间断部分,主要是由于春节期间,各个企业放假,故发布的职位需求基本为0 。

下面对接下来的一周数据类岗位进行预测。采用时间序列分析方法。

1. 数据样本的选取。由于春节期间数据基本为0,所以该时间段内数据不具有参考价值,故将其剔除,仅取2016-02-08以后的数据。数据样例如下:

2. 建模。

(a) 查看样本数据(为了便于分析,将时间替换为1700-1757的时间段,并不影响分析结果)

(b) 检验样本数据是否平稳

(c) 查看一阶差分的自相关图与偏相关图,模型定阶,可考虑建立ARMA(7,1)和ARIMA(7,1,1)模型。

(d) 得到分析结果。将两种模型预测结果进行对比,得知ARIMA(7,1,1)模型优于ARMA(7,1)模型。并且预测的未来7天的数据岗位需求量为:[240.96317271,144.35168999, 111.38542935, -13.83445342, 11.97472318, 46.76686791, 135.3081694]。其中前三天的数据代表周三——周五的需求量,随后周六周日需求明显减小,然后又随着工作日的来临,需求量又随之升高。总体预测趋势是合理的。另外周六出现了负值,与实际情况不符,可见模型还有待进一步而优化。这将在以后文章讨论。

附录:分析代码

import pandas as pd import numpy as np import matplotlib.pylab as plt from matplotlib.pylab import rcParams import matplotlib as mpl import datetime import time import statsmodels.api as sm from statsmodels.tsa.arima_model import ARIMA rcParams['figure.figsize'] = 15, 6 mpl.rcParams['font.family'] = 'sans-serif' mpl.rcParams['font.sans-serif'] = [u'SimHei'] plt.rcParams['axes.unicode_minus']=False data = pd.read_csv('shuju_data.csv') print(data.head()) data.index = pd.Index(sm.tsa.datetools.dates_from_range('1700','1757')) del data['period'] print('\n Data Types:') #data.index =pd.DatetimeIndex(data.index,freq='D') print(data.head()) plt.plot(data) plt.title("数据类岗位的分布情况") plt.show() fig = plt.figure(figsize=(12,8)) ax1=fig.add_subplot(211) fig = sm.graphics.tsa.plot_acf(data,lags=20,ax=ax1) plt.title('原始数据的自相关图') ax2 = fig.add_subplot(212) fig = sm.graphics.tsa.plot_pacf(data,lags=20,ax=ax2) plt.title('原始数据的偏相关图') plt.show() fig = plt.figure(figsize=(12,8)) ax1= fig.add_subplot(211) diff1 = data.diff(1).dropna() diff1.plot(ax=ax1) plt.title('一阶差分') ax2= fig.add_subplot(212) diff2 = data.diff(2).dropna() diff2.plot(ax=ax2) plt.title("二阶差分") plt.show() fig = plt.figure(figsize=(12,8)) ax1=fig.add_subplot(211) fig = sm.graphics.tsa.plot_acf(diff1,lags=20,ax=ax1) plt.title('一阶差分的自相关图') ax2 = fig.add_subplot(212) fig = sm.graphics.tsa.plot_pacf(diff1,lags=20,ax=ax2) plt.title('一阶差分的偏相关图') plt.show() model1 = sm.tsa.ARMA(data,(7,1)).fit() print(model1.aic,model1.bic,model1.hqic) pre = model1.predict('1740','1760',dynamic=True) print(pre) model2 = sm.tsa.ARIMA(data,(7,1,1)).fit() print(model2.aic,model2.bic,model2.hqic) print(model2.forecast(7)) fig, ax = plt.subplots(figsize=(12,8)) ax = data.ix['1700':].plot(ax=ax) fig = model1.plot_predict('1740','1760',dynamic=True,ax=ax,plot_insample=False) fig = model2.plot_predict('1740','1760',dynamic=True,ax=ax,plot_insample=False) plt.title('数据类岗位预测情况') plt.show()


原文发布于微信公众号 - 大数据挖掘DT数据分析(datadw)

原文发表时间:2016-09-28

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏新智元

【谷歌草绘RNN瞄准超级AI】源自壁画的飞跃,AI 学会归纳抽象概念

【新智元导读】人类自从开始在洞穴的岩壁上画出简单的草图,认知能力就产生了飞跃——归纳抽象的能力大大提高。现在,谷歌的 Magenta 项目也在致力于这一研究。名...

3249
来自专栏大数据挖掘DT机器学习

如何在业余时间学习数据分析?

我是一个web前端开发者和rails程序员,计算机专业出身,掌握Python、Ruby、C、Java编程语言,具有较为扎实的计算机理论基础。 现在工作之外的时间...

4585
来自专栏人工智能头条

实习商汤,校招华为,我的深度学习之路

尽听说现在国内外一线互联网巨头,包括后起的独角兽,对 AI 人才的需求非常大,Google、Facebook 为了抢 AI 人才都快 battle 起来了。

3233
来自专栏量子位

人工智能技术入门该读哪些书?StackOverflow上最推荐这些

王小新 编译整理 量子位 出品 | 公众号 QbitAI 学习人工智能相关技术该读什么书?这是量子位各个微信群中出现频率极高的问题。 今天,我们就从Dev-bo...

4054
来自专栏华章科技

机器学习进阶路上的五个境界

关于机器学习,这个话题最近实在太火了,甚至有些虚火了。有了虚火,就容易有泡沫。大浪淘沙,要想在数据科学这个行业生存下来,任何一个从业者都需要认清自己的位置,每上...

1023
来自专栏新智元

图同构在P/NP问题上重大突破,计算机理论10年最重要成果

芝加哥科学家 László Babai 发明了一种方法,能够用多项式的时间判断两个网络是否相同。 麻省理工学院的计算机科学家 Scott Aaronson...

3815
来自专栏互联网数据官iCDO

用数据讲故事的诀窍 ——创建有说服力图表的5个步骤

用数据说话是当今社会的一个特别流行的词,它反映了当今人类面对这个信息爆炸时代所需要做出的必然的改变。 有预测截至2020年,整个数字世界的数据量将达到44ZB,...

4049
来自专栏PPV课数据科学社区

几种监督式学习算法的比较

本文的作者是计算机工程师Kevin Markham;热衷烹饪,痴迷戏剧,偶尔参加铁人三项运动;为General Assembly讲授为期11周的数据科学课程,在...

3156
来自专栏PPV课数据科学社区

【学习】Spss 聚类分析案例—某移动公司客户细分模型

聚类分析在各行各业应用十分常见,而顾客细分是其最常见的分析需求,顾客细分总是和聚类分析挂在一起。 顾客细分,关键问题是找出顾客的特征,一般可从顾客自然特征和消费...

6779
来自专栏大数据挖掘DT机器学习

如何在业余时间学习数据分析?

我是一个web前端开发者和rails程序员,计算机专业出身,掌握Python、Ruby、C、Java编程语言,具有较为扎实的计算机理论基础。 现在工作之外的...

3197

扫码关注云+社区