公司人员离职情况分析及预测(工具:python)

前言

目前社会上呈现出一种公司招不到人,大批失业人员的矛盾现象,且大部分公司的离职率居高不下,很多入职没多久就辞职,所花费的培训招聘等资源都浪费了。为了弄清楚公司员工离职原因,通过kaggle上某一家企业员工离职的真实数据来对离职率进行分析建模。

一、背景

Ⅰ 数据来源

数据来源: 数据来源数据下载链接,提取码:byfz

Ⅱ 数据背景

数据背景: 该数据集是指某公司员工的离职数据, 其包含14999个样本以及10个特征, 这10个特征分别为: 员工对公司满意度, 最新考核评估, 项目数, 平均每月工作时长, 工作年限, 是否出现工作事故, 是否离职, 过去5年是否升职, 岗位, 薪资水平。

Ⅲ 分析目的

1结合现有数据特征,需要分析解决的问题如下:

  1. 员工对公司满意度平均水平如何?员工的最新考核情况又是如何?员工所参加项目数是怎样?员工平均每月工作时长以及平均工作年限分别是多少?
  2. 当前离职率是多少?工作事故发生率?过去5年升职率?薪资水平又如何?共有多少种岗位?
  3. 是否离职和其他9个特征的关系如何(相关分析)?
  4. 根据现有数据, 是否可以对某个员工是否离职进行预测(建模)?

二、数据探索性分析

Ⅰ 数据类型

#coding=utf-8
hr = pd.read_csv('D:\\hr.csv')
hr.info()

2
前两个特征为64位浮点型, 后两个为字符型, 其余为64位整型, 且均无缺失值。

Ⅱ 描述性统计

print(hr.describe(include=['O']).T)
#员工对公司满意度, 最新评价, 项目数, 平均每月工作时长, 工作年限, 是否出现工作事故,1代表有, 是否离职,1代表离职, 过去5年是否升职,1代表升职, 岗位, 薪资水平.
hr.describe()

3

  1. 员工对公司满意度平均水平如何?员工的最新考核情况又是如何?员工所参加项目数是怎样?员工平均每月工作时长以及平均工作年限分别是多少?
    员工对公司的满意度: 范围 0.09~1, 中位数0.640, 均值0.613, 总体来说员工对公司较满意。
    最新考核评估: 范围 0.36~1, 中位数0.720, 均值0.716, 员工考核平均水平中等偏上。
    项目数: 范围 2~7个, 中位数4, 均值3.8, 平均参加项目数为4个。
    平均每月工作时长: 范围96~310小时, 中位数200, 均值201。
    工作年限: 范围2~10年, 中位数3, 均值3.5。
  2. 当前离职率是多少?工作事故发生率?过去5年升职率?薪资水平又如何?共有多少种岗位?
    当前离职率为23.81%。
    工作事故发生率14.46%。
    过去5年升职率2.13%。
    薪资水平共有3个等级, 最多的是低等, 多达7316人。员工岗位有10种, 其中最多的是销售, 多达4140人。

Ⅲ 数据预处理

a.缺失值处理

之前已经在查看数据中看到本次数据比较“干净”,没有缺失值,所以不需要进行这个操作。如果有缺失值的话,缺失的数据较少则总结删除,如果比较多的话那就均值或中值填充。

b.异常值处理

#利用箱线图查看异常值
fig, ax = plt.subplots(1,5, figsize=(12, 2))
sns.boxplot(x=hr.columns[0], data=hr, ax=ax[0])
sns.boxplot(x=hr.columns[1], data=hr, ax=ax[1])
sns.boxplot(x=hr.columns[2], data=hr, ax=ax[2])
sns.boxplot(x=hr.columns[3], data=hr, ax=ax[3])
sns.boxplot(x=hr.columns[4], data=hr, ax=ax[4])

3
除了工作年限外, 其他均无异常值。大部分工作年限都在五年以下,"新鲜血液"较多,侧面反映年轻人较多。

c.重复值处理

数据不存在要哪个特征是唯一值的,所以不需要进行重复值处理。

三、数据分析

Ⅰ 可视化分析

a.离职率

利用pyecharts包可视化,pyecharts包动态显示,十分方便。在安装包的时候有很多坑需要避开,很容易某些图表就不可用。

from pyecharts import Pie
attr = ["离职", "在职"]
v1 =[hr.left.value_counts()[1], hr.left.value_counts()[0]]
pie = Pie("该公司人力资源总体情况", title_pos='center')
pie.add(
    "",
    attr,                       
    v1,                          
    radius=[35, 65],
    label_text_color=None,
    is_label_show=True,
    legend_orient="vertical",
    legend_pos="left",
)
pie.render("./公司人力资源总体情况.html")

3
离职3571人, 在职11428人, 离职率为23.81%

b.公司满意度

sns.set(style="ticks", color_codes=True,font="simhei")
sns.boxplot(x=hr['left'],y=hr['satisfaction_level'], data=hr)
plt.title('对公司满意度与是否离职关系图',fontsize=10)
plt.show()

1
就中位数而言, 离职人员对公司满意度相对较低, 且离职人员对公司满意度整体波动较大. 另外离职人员中没有满意度为1的评价,大部分都在0.4左右,最低在0.1左右。

c.工作时长

.set(style="ticks", color_codes=True,font="simhei")
sns.boxplot(x=hr['left'],y=hr['average_montly_hours'], data=hr)
plt.title('平均每月工作时长与是否离职关系图'
评论 10
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值