对西安市计算机相关职位情况的分析
报告主题
本报告主要有以下几个目的:
- 分析西安市计算机相关职位的需求情况
- 分析西安市计算机相关职位的薪酬情况
- 分析西安市计算机相关职位的招聘要求
- 为广大意向从事计算机行业人群的就业提供借鉴和指导
数据来源
本报告对智联招聘
网站进行爬虫,主要采集以下几方面的数据,爬虫代码见作业中代码
部分。
- Java相关职位
- C++相关职位
- Python相关职位
- C#相关职位
- Ruby相关职位
- PHP相关职位
- .NET相关职位
- Swift相关职位
- Go相关职位
- Scala相关职位
分析思路
分析思路主要包含以下几步。
- 数据读取
- 数据整理
- 分析职位数量情况
- 分析职位月薪情况
- 分析招聘岗位要求
计算过程
以下是数据分析和数据挖掘过程
数据读取
将通过爬虫爬取的数据通过Python按行读取,去除不符合规则的数据,进而转换为字典,存在列表里面。
1 | def read_data(): |
数据整理
使用pandas包,将数据组织成DataFrame形式。
1
df = pd.DataFrame(datas)
将日期格式规范化,并对数据进行筛选,对月薪的数据进行筛选,选取格式为“XXXX-XXXX”的信息。
1
2
3
4
5
6
7
8
9
10
11
12
13df = pd.DataFrame(datas)
df['save_date'] = pd.to_datetime(df['save_date'])
df_clean = df[['position_name',
'feedback',
'company_name',
'salary',
'place',
'time',
'brief',
'link',
'save_date',
'keyword']]
df_clean = df_clean[df_clean['salary'].str.contains('\d+-\d+', regex=True)]根据链接作为标志判断爬取的数据是否有重复值,并进行去重工作。
1
df_clean_concat = df_clean_concat.drop_duplicates(['link'])
分析职位数量情况
对西安市计算机行业不同职位数量的分布情况进行分析。
首先以不同职位作为关键词进行分析,并按职位数量进行排序。
1
2
3
4
5df_key_main = df_city[df_city['keyword'].isin(KEYWORDS)]
df_key_main_count = df_key_main.groupby('keyword')['position_name','company_name'].count()
df_key_main_count['company_name'] = df_key_main_count['company_name']/(df_key_main_count['company_name'].sum())
df_key_main_count.columns = ['number', 'percentage']
df_key_main_count.sort_values(by='number', ascending=False, inplace=True)对西安市计算机行业不同职位数量的情况进行分析,以饼图的形式呈现。
1
2
3
4
5
6
7
8
9
10
11
12
13
14label = df_key_main_count['label']
sizes = df_key_main_count['number']
# 设置绘图区域大小
fig, axes = plt.subplots(figsize=(10,6),ncols=2)
ax1, ax2 = axes.ravel()
colors = ["blue","red","coral","green","yellow","orange"]
patches, texts = ax1.pie(sizes,labels=None, shadow=False, startangle=0, colors=colors)
ax1.axis('equal')
ax1.set_title('职位数量分布', loc='center')
# ax2 只显示图例(legend)
ax2.axis('off')
ax2.legend(patches, label, loc='center left', fontsize=9)
plt.savefig('job_pie.jpg')
plt.show()
观察图表,可以看到,传统的Java和C++开发职位占据所有职位数量的半壁江山,此外,.NET,PHP,Python也占据了一部分,而像Scala,Swift等新出现的语言相关的职位则几乎没有。所以,像Java,C++在西安的计算机相关职位招聘中还是属于主流。
分析职位月薪情况
对西安市的职位月薪情况进行分析。
1 | df_salary_adjust = df_clean_concat[df_clean_concat['salary_min']<=20000] |
观察图表,可以看到,西安市计算机相关职位月薪在3000~12000人民币占据了绝大部分,也有一小部分月薪达到了12000以上,但几乎没有超过20000的。这个月薪水平在西安可以基本达到小康水平。
分析招聘岗位要求
对西安市计算机相关职位招聘岗位要求描述进行词云图分析
1 | brief_list = list(df_clean_concat['brief']) |
所得结果如下所示:
观察图表,可以看到企业在进行招聘时,看重具有相关的开发经验,比较青睐相关专业的人员,学历也占据了相对来说比较重要的地位,另外,也希望应聘人员具有团队合作的能力,具有较好的学习能力。
结论
本分析报告结论如下:
- Java,C++等开发岗位在西安的计算机相关职位招聘中属于主流,需求较多。
- 西安市计算机相关职位月薪大多在3000~12000人民币,在西安可以基本达到小康水平。
- 企业希望应聘人员具有相关的开发经验,比较青睐相关专业的人员,学历也占据了相对来说比较重要的地位。