找回密码
 立即注册

QQ登录

只需一步,快速开始

扫一扫,极速登录

【2020冬季挑战赛】Python工程师岗位分析

我是社区第449587位番薯,欢迎点我头像关注我哦~
1.选手简介

1.1 个人选手
帆软社区用户名:用户a0601527
在校大学生,常用finbi进行数据分析结果的可视化,并撰写简单的分析报告。

1.2参赛初衷
使用finbi一段时间,由于之前在学数据分析相关内容,正好用到可视化展示,便找了个小例子结合相关的博客,做着试试熟悉一下软件使用。

2.技术背景介绍
这篇文档是爬取的拉勾网上的招聘数据,共4300余条,然后进行数据清洗,处理,分析和可视化展示。数据公开,不涉及隐私和侵权信息,可以放心使用。

2.1 数据获取
在入门案例中,使用requests模块对拉勾网招聘页的职位信息进行爬取。python3中页面爬取常用的模块有urllib和requests, requests因为其易用性以及能够满足绝大数的爬取要求,被更广泛的使用。在这里我们主要关心的是取得数据后的分析工作,所以有关数据爬取不进行过多的介绍。

2.2 数据处理
使用python的pandas模块对爬取到的数据进行分析,对数据进行分析,主要内容是数据的处理工作。常用的数据处理工具总结:
1)  Excel:适合个人分析使用;
2)  Python:自由度非常高,可以灵活的使用模型和算法,能满足大多数的数据处理需求,适合较大型的数据分析项目。
3)  Hadoop:分布式系统基础架构,非常复杂,需要的技术也很多,适合数据量特别大的数据分析项。

2.3 数据展示
使用可视化工具对数据进行展示,通过展示可以更直观的观察到数据的规律,从而解读出其中包含的信息。常用的数据可视化工具包括:
1)  Tableau:常用于数据可视化,具有很好的交互式可视化体验
2)  FineBI:支持大数据量分析,可以做复杂的BI报表
3)  PowerBI:可以连接到多种数据源,支持建模和数据挖掘,可以灵活的创作可视化报表,内置的图表种类相对较少。


3 实现过程
3.1 数据爬取
待爬取的页面使用ajax部分更新,且响应类型是json字符串,使用requests模块,请求类型是post,使用json模块解析响应内容,获取职位信息并保存到csv文件中。

3.1.1 问题
1)    要爬取的数据量较多,需要分页和页面批量爬取。
2)   需要处理网站的反爬机制。

3.1.2 解决办法
1)  解决爬取分页和页面批量爬取,用zip()函数打包城市和页码信息,每个页面的数据条数是相同的,进行循环爬取。
2)  解决反爬,使用headers伪装和利用Session()对象跨请求传递cookies参数,使用post方式进行爬取,对请求头分析得到查询字符串和form data数据。

3.2 数据预处理
3.2.1初始数据
爬取到的数据是python开发岗位的招聘信息,分为7个字段:岗位名称、公司名称、城市、工资、学历要求、工作经验和岗位标签。共有3842条数据,保存在csv文件中。

3.2.2 预处理项
要将原始数据处理成可以进行分析的数据表,包括以下处理内容:
a)  过滤掉和搜索关键字无关的数据项。
b)  处理工资项数据格式,添加相关字段。

3.2.3 处理方法
处理方法包括:
a)  编写搜索关键字正则式,使用正则匹配,保留和搜索关键字相关的数据项。
b)  对工资项的数据格式拆分处理,新增工资下限项和工资上限项,并设置数据类型为数值型,新增平均工资项,定义计算方式为sum(最低工资,最高工资)/2,设置数值类型为数值型。

3.2.4 预处理结果
原始数据进行处理后,新的数据表包含10个字段:岗位名称、公司名称、城市、最低工资、工资、最高工资、平均工资、学历要求、工作经验和岗位标签。共1044条数据。

3.3分析数据

3.2.1 分析规则
数据是岗位招聘信息,想要了解的是工资指标随其它维度(城市,学历,工作经验)的变化情况和岗位对学历和工作经验的要求,使用分类统计方法对数据进行分析。

3.2.2 分析内容
需要分析的内容包括:该岗位全国主要城市的平均工资分布、全国主要城市的该岗位数量状况、不同学历下该岗位的工资状况、工资随工作经验的变化情况、该岗位对工作经验和学历的要求分布。

3.4 可视化展示
使用fineBI工具来对分析内容可视化,根据分析内容绘制对应的图表,进行可视化绘制的图表如下:
0001 2.jpg

4.总结
在完成这个小案例的过程中,加深了对已有知识的掌握和理解,对分析流程有了全面的认识,同时也感受到了可视化的作用和可是化工具的重要性,分析报告还是要看图说话,“有图有真相”。

21天打卡训练营.jpg

您需要登录后才可以回帖 登录 | 立即注册  

本版积分规则

0回帖数 1关注人数 2383浏览人数
最后回复于:2020-12-22 19:41

Array ( [id] => 16 [code] => 4302 [product] => FineBI [title] => 帖子详情页右侧banner [demand] => 334px * 410px [img_url] => /uploads/20210922/684b099ed6b7a27881b1649c158fc17f.png [click_url] => https://edu.fanruan.com/live/52 [status] => 0 [end_time] => 1632466885 [username] => Susy [edit_time] => 1632294094 )

联系社区管理员|联系帆软|《帆软社区协议》|手机版|帆软社区|Copyright © 帆软软件有限公司 ( 苏ICP备18065767号-7 )

GMT+8, 2021-9-23 07:25 , Processed in 0.131693 second(s), 47 queries , Gzip On.

返回顶部 返回列表