数据分析一般有五个步骤:提出问题,理解数据,数据清洗,构建模型,数据可视化。
一、提出问题
一切数据分析都是以业务为核心目的,而不是以数据为目的,因此,我们首先要明白的就是我们分析的目的是什么?也就是提出问题。本文主要分析以下几个问题:
1.不同城市对数据分析师的需求如何?
2.数据分析师的薪资水平如何?
二、理解数据
首先,我们先看一下columns的含义:
city 城市
companyFullName:公司全名
companyId:公司ID
companyLabelList:公司介绍标签
companyShortName:公司简称
companySize:公司大小
businessZones:公司所在商区
firstType:职位所属一级类目
secondType:职业所属二级类目
education:教育要求
industryField:公司所属领域
positionId:职位ID
positionAdvantage:职位福利
positionName:职位名称
positionLables:职位标签
salary:薪水
workYear:工作年限要求
在提出问题阶段以及通过我们的思维导图,可以得出我们主要需要以下数据:city、industryField、positionName、salary、workYear。余下的数据:
①companyFullName、companyId、companyShortName都是区分公司的留下一个companyID;
②positionId作为唯一标示,先不删除;
③companySize、businessZones companyLabelList、firstType、secondType、positionAdvantage、positionLables这次分析都用不到,这些信息先隐藏,不要删除;
再仔细看一下:
①positionName里的职位真是非常多,有些数据工程师,数据专员等并不是我们需要分析的职位,还需要对职位进行筛选。
②salary一列数值格式不正确,这样的数据我们并不能用来分析,还需要对数据进行一致化处理,对与salary我们采用平均工资进行分析。
三、数据清洗
1. 去除无关数据列
首先整理好我们需要的数据,对于原数据最好单独保存一份,谁知道以后还会不会用到,把我们需要的数据取出来,这里只保留我们需要的数据。
2.删除重复值
以positionId/companyID作为唯一标示进行扩展,删除重复项,可以看到有1845个重复值,已经删除。
3.数据格式一致化处理
①salary列一致化处理
在理解数据阶段,我们已经确认了用平均工资作为薪水分析,首先要先求出最高与最低工资,在进行平均求值,先建三个辅助列
最低工资就是第一个“k”之前的内容,输入函数 “=--LEFT(H2,FIND("k",H2,1)-1)”。首先用Find函数找到第一个“k”的,我们不需要“k”,所以在减1,再用left函数截取,位置公式前加入“--”将结果变为数值,方便后面运算。
最高工资思路相同,由于是“-”’和第二个“k”中间的内容,这里要用MID函数,使用公式“=--MID(H2,FIND("-",H2,1)+1,LEN(H2)-FIND("-",H2,1)-1)”。使用find函数找到“-”位置,加1,这也就是MID函数第二个值,再用len函数求出字符串长度减去“-”前长度,减一求出MID函数第三个值。
最后使用Ctrl+D进行填充求出所有值,用公式“=AVERAGE(I2:J2)”求出。
我们检查一下是否有脏数据,对平均工资一列进行筛选发现竟然有错误值,why???仔细看原来“salary”一列数据格式不一致,“k”有大写,还有“8k以上”,幸亏有检查数据结果,另一方面也说明我们理解数据工作做得不到位,看来理解数据还是十分有必要的。
使用替换将“K”替换为“k”,由于“8k以上”没有准确数值,最高最低都取“8k”,对错误值筛选,Top salary列公式和low salary列公式一样就OK了,在检查一下数据,现在没有错误值了,处理OK。
② positionName列一致化处理
positionName有很多不是我们要分析的职位,先找出我们要的职位,建立辅助列输入“=IF(COUNT(FIND({"数据分析","数据运营","分析师"},K19)),1,0)”,找出{"数据分析","数据运营","分析师"}职位,是结果为1,否则为0,最后对辅助列筛选,找出符合条件的数据。
四、构建模型
1. 不同城市对数据分析师的需求如何?
①根据城市与工作年限、岗位数建立数据透视表,我们可以发现北京的需求最大,其次是上海、、深圳,最后是杭州、广州等城市,说明目前数据分析师这一职业还主要在一线城市及次一线城市,对于求职者,专注于一线城市更容易找到一份满意的工作。
②通过数据透视表我们还发现1-3年和3-5年两个时间段的缺口更大,说明数据分析师这一行业对于对于人才的需求已经逐渐增加,发展前景还是比较好的。此外,我们发现应届毕业生似乎比1年一下经验的更吃香,不过这也说明了这一行业对于新人也是有一定的需求的,对于应届毕业生也是一个选择方向。
2.数据分析师的薪资水平如何?
①薪资水平是我们比较关心,也是最在意的的了。总体来看,数据分析师的薪资还是挺高的,北京、深圳、上海达到了19k左右,杭州、苏州、广州达到了15k左右,其余地区也达到了10k左右。不过,工作经验对薪资水平的影响还是很大的,一年及以下大概在7k~8k,1~3年达到了13.8k,3~5年达到了20k,5~10年达到了26.84k,10年以上达到了37.17k。说明岗位的升值空间还是很大的,薪资水平也是比较高的,未来发展较好。
②我们发现工作的前五年薪资的涨幅是比较的大的,这说明工作前几年是我们成长变化的最佳时期,对于数据分析师来说,充分利用这段时间成长,对于未来会有很大帮助的。此外我们发现广州和深圳零经验与一年工作经验的涨幅比较大,排除数据量的影响,这说明对于应届毕业生爱说,广深是个不错的选择。
五、 数据可视化
最后是数据可视化。任何一项分析的最终都是要得出分析结果,展示给客户或者老板,那么,采用何种方式展示以及展示图表,展示流程也是很重要的,在文章的最后分享一下对于两个问题制作的部分图表,当然,可视化过程不止这些,如何有效的展示也是数据分析师必备的能力。
1.不同城市对数据分析师的需求如何?
2.数据分析师的薪资水平如何?
来源:https://www.cnblogs.com/RR-99/p/10356521.html