本文主要是介绍员工一言不合就离职怎么办?我用Python写了个员工流失预测模型!,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
Show me data,用数据说话
今天我们聊一聊 员工离职
点击下方视频,先睹为快:
说道离职的原因,可谓多种多样。人们归总了两点:
1. 钱没给到位
2. 心受委屈了
有人离职是因为“世界那么大,我想去看看”,也有人觉得“怀有绝技在身,不怕天下无路”。
另一方面,员工离职对于企业而言有什么影响呢?
要知道,企业培养人才需要大量的成本, 为了防止人才再次流失,员工流失分析就显得十分重要了。 这不仅仅是公司评估员工流动率的过程,通过找到导致员工流失的主要因素,预测未来的员工离职状况,从而进一步减少员工流失。
那么,哪些因素最容易导致员工离职呢?
这次我们用数据说话,
教你如何用Python写一个员工流失预测模型。
01
数据理解
我们分析了kaggle平台分享的员工离职相关的数据集,共有10个字段14999条记录。 数据主要包括影响员工离职的各种因素(员工满意度、绩效考核、参与项目数、平均每月工作时长、工作年限、是否发生过工作差错、5年内是否升职、部门、薪资)以及员工是否已经离职的对应记录。字段说明如下:
02
读入数据
# 导入包 import numpy as np import pandas as pd import matplotlib.pyplot as plt import seaborn as sns from pyecharts.charts import Bar, Pie, Page from pyecharts import options as opts from pyecharts.globals import SymbolType, WarningType WarningType.ShowWarning = False
plt.rcParams['font.sans-serif'] = ['SimHei'] # 用来正常显示中文标签 plt.rcParams['axes.unicode_minus'] = False # 用来正常显示负号
# 读入数据 df = pd.read_csv('HR_comma_sep.csv') df.head()
df.info()
<class 'pandas.core.frame.DataFrame'> RangeIndex: 14999 entries, 0 to 14998 Data columns (total 10 columns):# Column Non-Null Count Dtype --- ------ -------------- ----- 0 satisfaction_level 14999 non-null float641 last_evaluation 14999 non-null float642 number_project 14999 non-null int64 3 average_montly_hours 14999 non-null int64 4 time_spend_company 14999 non-null int64 5 Work_accident 14999 non-null int64 6 left 14999 non-null int64 7 promotion_last_5years 14999 non-null int64 8 sales 14999 non-null object 9 salary 14999 non-null object dtypes: float64(2), int64(6), object(2) memory usage: 1.1+ MB
# 查看缺失值 print(df.isnull().any().sum())
可以发现,数据质量良好,没有缺失数据。
03
探索性分析
描述性统计
1
df.describe().T
从上述描述性分析结果可以看出:
- 员工满意度 :范围0.09~1, 中位数0.640, 均值0.613, 总体来说员工对公司比较满意;
- 绩效考核 :范围0.36~1, 中位数0.72, 均值0.716, 员工平均考核水平在中等偏上;
- 参与项目数 :范围2~7, 中位数4, 均值
这篇关于员工一言不合就离职怎么办?我用Python写了个员工流失预测模型!的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!