使用excel、python、tableau对招聘数据进行数据处理及可视化分析

本文通过使用Excel进行初步数据处理,Python进行深入分析和可视化,以及Tableau展示结果,探讨了招聘数据。内容涵盖数据来源、删除重复值、数据预处理、学历与工作经验的关系、薪资分析等,特别强调一线城市的数据分析师岗位需求和薪资水平。
摘要由CSDN通过智能技术生成

数据来源

本数据来自天善智能的数据分析课程提供的数据分析师相关的招聘数据

前言

由于2021春招已经启动很久了,最近为了找工作将之前完成的数据分析项目复现,同时也复习一下excel和python以及tableau相关知识。


本文根据提供的招聘信息数据进行数据分析以及可视化,使用的工具有excel,jupyter,以及tableau,展示部分代码以及数据分析过程。

一、观察数据

进行数据分析首先要知道数据是什么,有哪些内容,结构是什么样的,因此先将已有的csv文件通过excel打开观察数据,然后可通过excel进行简单的数据处理。
我们来看下数据:在这里插入图片描述可以看到有十二个字段,其中比较重要的有positionId、city、eduaction、salary、workYear这几个字段我们后续的分析中会经常用到。

删除重复值

如果这些数据存在重复值,这些重复值可能会对我们的分析产生一定的干扰,所以我们需要删除重复值。由于每个职位的positionId都是唯一的所以我们可以根据这个来判断是否存在重复值,如果存在则删除重复值。在这里插入图片描述
由于提供的数据比较干净,未发现重复值。

数据加工

我们可以看到由于薪水是以上下限显示的,不利于后续的分析,故将薪水分成三列,分别为下限,上限以及平均薪水。这个操作在excel里操作比较简单,当然也可以在利用python进行处理。这里我选择在excel里进行划分。
这里我使用find函数将salary中k的位置找出来,再用left和right函数将薪资下限和上限截取出来:
在这里插入图片描述
对值进行处理,将得到的结果全部转换为数值。然后利用替换将k给替换成空,其中可能会存在其它干扰数据这里我全部替换为空值。处理完之后顺便将平均薪资求出来,便于后续分析。
在这里插入图片描述
这样excel对数据的处理就差不多了,接下来就是把数据导入到python里进行分析和可视化。当然利用excel对处理后的数据进行数据透视也可以,这里我选择使用python。

二、利用python进行数据分析和可视化

1.引入库

引入数据分析常用库,代码如下:

import numpy as np
import pandas as pd
import matplotlib.pyplot as plt
%matplotlib inline

2.读入数据

代码如下:

data = pd.read_csv('dataanalyst.csv')
data.head()

在这里插入图片描述

观察描述统计,了解数据大概信息

代码如下:

data.describe(include=['O'])

在这里插入图片描述
这里我们可以大概了解这个数据表一共有五千多条数据,city有13个,其中北京出现的次数最多,也就是北京提供的职位数最多。还可以看到学历要求是本科的最多,工作要求是3-5年的最多等等。

data.describe()

在这里插入图片描述
这里我们主要是看薪资方面的描述统计,其中包括平均值,中位数,标准差等数据。

3.数据预处理

杂乱的数据并不利于我们的分析,我们需要对数据进行处理来获取可以用于可视化的干净数据。

3.1数据清洗

数据清洗的主要内容包括: 重复值, 缺失值以及空值的处理。

3.1.1 删除重复值

由于我们在载入之前就已经删除了重复值,这里我们可以略过。

3.1.2缺失值处理

我们先看一下哪些字段存在缺失值

#计算每个特征中的缺失值个数
data.isnull().sum()

在这里插入图片描述
我们可以看到firstType,secondType,positionLables,top 四个字段存在少量缺失值。

在pandas中对缺失值的处理方法有:

  1. 利用均值等集中趋势度量填充

  2. 利用统计模型计算出的值填充

  3. 保留缺失值

  4. 删除缺失值

由于这些数据存在极少量的缺失值,对数据几乎没有影响。这里我选择通过描述统计中出现最多的值来填充。

data.firstType.fillna(value = '技术',inplace= True)
data.secondType.fillna(value = '后端开发',inplace= True)
data.positionLables.fillna(data.positionLables.mode()[0], inplace = True)
data.top.fillna(value =21.0,inplace = True)

最后检查一下还有没有缺失值
在这里插入图片描述

3.2数据加工

这里我们需要加工的是salary字段,需要将薪资的上限和下限划分出来,同时需要求出平均工资。之前我们已经在excel里面处理过了,这里可以忽略。
到现在我们的数据处理就完成了,接下来就是可视化分析环节。

4.数据可视化

4.1城市岗位数量
data.groupby(by ='city').positionId.count().sort_values(ascending=False)

在这里插入图片描述
我们可以看到北京提供的岗位数量最多,上海、深圳、杭州也比较多。所以一线城市对数据分析师的需求量还是比较大的。

我们再来看下每个城市提供的岗位对学历要求是怎样的,这里我们需要先建立一个数据透视表:

data.pivot_table(index = 'city',
                 columns = 'education',
                 values = 'avg',
                 aggfunc = 'count')

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值