此文是《10周入门数据分析》系列的第4篇。
想了解学习路线,可以先行阅读
公中号上已更新到第11篇,详情可见文末。
前一篇分享了《》,今天这篇讲实操,教大家用Excel做一次简单的分析。一是让大家了解数据分析是一个怎样的流程;其次熟练Excel的操作(学的知识要用起来),包括公式,数据透视表等。
这里我用Python在智联招聘上爬取了约1800条的BI工程师的职位信息,并且将岗位名称、公司名称、薪水、所在城市、所属行业、学历要求、工作年限这些关键信息用CSV文件保存下来。
爬的过程就不赘述了,源数据附给大家,公众号(数据分析不是个事儿)回复“数据”可获得
操作版本:Excel 2016 ,WIN 10
一个完整的数据分析都需要经历这样几个步骤:
- 数据获取——这里我已经用Python爬好了;
- 明确分析目的——你拿这数据要得到什么信息,解决什么问题;
- 观察数据——各个数据字段的含义,中英文释义;
- 数据清洗——无效值、缺失值、重复值处理,数据结构是否一致等;
- 分析过程——围绕目的展开分析;
- 制作可视化——做图表做可视化报告。
数据分析的大忌是不知道分析的方向和目的,拿着一堆数据不知所措。数据用来解决什么问题?
是进行汇总统计制作成报表?
是进行数据可视化,作为一张信息图?
是验证某一类业务假设?
是希望提高某一个指标的KPI?
要知道一切数据分析都是以业务为核心目的,所以要找到业务问题的思考点。关于找到问题的切入点,之前数据分析思维篇讲过。永远不要妄图在一堆数据中找结论,目标在前,数据在后,哪怕是把数据做个平均值比较,也比没有方向好。每一步尝试都会引发进一步思考,比如为什么这个值这么低,原因在哪里,这个差异波动有何规律……
所以,分析前不妨先来看一下我们爬的数据:
假设我是一个BI工程师,我想知道:
目前BI工程师的平均薪资水平如何,薪资的区间分布如何
各地区对BI工程师的需求量是多少,哪些地区设岗最多。
不同年限的BI工程师薪资差异如何,3年后我差不多是什么样的价位?
薪水较高的公司有哪些?
带着这样的问题,那我们的分析就有了方向,后续则是将目标拆解为实际分析展示的过程。
二、了解数据概况拿到数据肯定是要先看一下的,你想要的数据全不全,拿到的数据有哪些可分析之处。主要就是看数据字段,要了解数据字段的含义:
JobName——岗位名称
Company——公司名
Salary——薪水
City——城市
Jobtype——岗位领域
Edulevel——学历要求
WorkingExp——工作年限要求
三、数据清洗接下来进行数据清洗。数据清洗一般包括无效值、缺失值、重复值处理;数据是否有乱码,错位现象;数据口径问题,两张表的关联ID名是否一致;还有是否有统一的标准或命名,如公司名全写或缩写的区分。数据转换则是将数据规整为统一格式处理。因为这是只是Excel级别的数据分析,且就一张简单的数据表,不会有太多复杂的操作。这里简单总结下。
1、有无缺失值
数据的缺失会很大程度影响分析结果。数据缺失的原因很多,比如数据采集的时候,因为技术的原因,爬虫没有完全抓去。但工作上更多的原因是数据入库的时候就没有收集全,有没填有遗漏,这又是数据规范数据治理的话题了。一般来说,如果某一字段数据缺失超过40%~50%,就没有分析意义了,考虑删除或作其他措施。
看数据有没有缺失,只要在Excel中选中该列看计数。
这里,eduLevel有缺失(1759/1800)但不多,不影响实际分析。
2、脏数据处理
发现jobName列里面有一些类似BIM工程师的岗位信息,这些应该都是土木行业的工程师,爬去时没做过滤,还有包含“bim”“BIOS””BIW”等字段。
因为包含多重过滤,这里我建立辅助列,设立判断条件,然后进行筛选过滤。