员工离职预测分析案例-大数据挖掘-赵志升-清华大学出版社

更新时间:2023-06-20 23:50:25 阅读: 评论:0

员工离职预测案例-实验手册
一.背景介绍
该实例以一家公司为例,他们想了解为什么一些最有经验和最有经验的员工会提前离职。该公司希望预测哪些有价值的员工将离职。
该实例的目标是预测是否的员工已经离开了;
度量标准是正确预测的雇员的百分比。
二.数据简介
利用这个数据库,并尝试预测哪些有价值的员工将离开下一步。数据集中的字段包括:员工满意度、最后的评价、一些项目、每月平均时间、花在公司的时间、他们是否发生过工伤事故、在过去的5年里他们是否升职了、所处部门、工资、员工是否已经离开。
变量类型
变量名
变量名翻译
详细说明
取值范围
备注
因变量
left
是否已经离职
定性变量
共2个水平
0代表未离职
1代表已经离职
已经离职占 23.81%
自变量
satisfaction_level
对公司的满意程度
0~1
平均满意程度为0.6
成长型基金last_evaluation
绩效评估
0~1
平均绩效评估为0.7
number_project
参加过的项目数
单位:个
2~7
平均参加4个项目
average_montly_hours
平均每月工作时长
单位:小时
96~310
time_spend_company
每天在公司时长
单位:小时
2~10
Work_accident
是否发生过工作差错
定性变量
共2个水平
0代表未发生
1代表已经发生
发生工作差错的占 14.46%
什么蔬菜降血糖
promotion_last_5years
五年内是否升职
定性变量
共2个水平
0代表未升职
1代表已经升职
升职的占 21.27%
sales台账什么意思
职业
定性变量
共10个水平
accounting、hr等
salary
薪资水平
定性变量
共3个水平
卡卡西真面目medium
high、low
high占 8.25%
low占 48.78%
数据集下载地址(/c/sm/data)
第一步 导入所需的包
library(plyr)        # Rmisc的关联包,若同时需要加载dplyr包,必须先加载plyr包
library(dplyr)        # filter()
library(ggplot2)      # ggplot()           
library(DT)          # datatable()          建立交互式数据表
library(caret)        # createDataPartition() 分层抽样函数
library(rpart)        # rpart()
library(e1071)        # naiveBayes()
library(randomForest)  # randomForest()
library(pROC)          # roc()
library(Rmisc)        # multiplot()          分割绘图区域
第二步 导入数据
hr <- read.csv("D/HR_comma_p.csv")
第三步 描述性分析
str(hr)      # 查看数据的基本数据结构
summary(hr)  # 计算数据的主要描述统计量
纠正o型腿的睡姿
通过观察各个变量的主要描述统计量可知,离职率将近24%、对公司的满意度在62%左右、绩效评估在约72%左右、平均每人参加过3-4个项目、员工每月平均工作时长在200小时左右
hr$left <- factor(hr$left, levels = c('0', '1'))
后续的个别模型需要目标变量必须为因子型,我们将其转换为因子型
box_sat <- ggplot(hr, aes(x = left, y = satisfaction_level, fill = left)) +
            geom_boxplot(varwidth = T) + # varwidth=T意味着箱子的宽度根据样本数决定
            theme_bw() +                # 一种ggplot的主题
            # 在图中标识均值点,fun.y = 'mean'为求均值,geom = 'point'为绘制点图,
            # 后面的是那个参数就是控制点的形状、大小和填充颜色
            stat_summary(fun.y = 'mean', geom = 'point', shape = 23, size = 3, fill = 'white') +
            labs(x = 'left', y = 'satisfaction_level') + # 设置横纵坐标标签
            # 设置刻度标签字体大小,rel()控制原始字号的倍数
            = element_text(size = rel(1.3)),
                  = element_text(size = rel(1.3)),
                  axis.title.x = element_text(size = rel(1.3)),
            # 设置坐标轴标签字体大小
                  axis.title.y = element_text(size = rel(1.3)))
# 绘制绩效评估与是否离职的箱线图
box_eva <- ggplot(hr, aes(x = left, y = last_evaluation, fill = left)) +
            geom_boxplot(varwidth = T) +
            theme_bw() +
            stat_summary(fun.y = 'mean', geom = 'point', shape = 23, size = 3, fill = 'white') +
            labs(x = 'left', y = 'last_evaluation') +
            = element_text(size = rel(1.3)),
                  = element_text(size = rel(1.3)),
                  axis.title.x = element_text(size = rel(1.3)),一次不忠百次不容
                  axis.title.y = element_text(size = rel(1.3)))
# 绘制平均月工作时长与是否离职的箱线图
box_mon <- ggplot(hr, aes(x = left, y = average_montly_hours, fill = left)) +
            geom_boxplot(varwidth = T) +
            theme_bw() +
            stat_summary(fun.y = 'mean', geom = 'point', shape = 23, size = 3, fill = 'white') +
            labs(x = 'left', y = 'average_montly_hours') +
            = element_text(size = rel(1.3)),
                  = element_text(size = rel(1.3)),
学而不厌的厌是什么意思                  axis.title.x = element_text(size = rel(1.3)),
                  axis.title.y = element_text(size = rel(1.3)))
# 合并这些图形在一个绘图区域,cols = 3的意思就是排版为一行三列
育儿知识大全multiplot(box_sat, box_eva, box_mon, cols = 3)
探索员工对公司满意度、绩效评估和月均工作时长与是否离职的关系,绘制对公司满意度与是否离职的箱线图
通过探索员工对公司满意度、绩效评估和月均工作时长与离职的关系可知,离职员工的特点为对公司的满意度较低,大多集中在0.4左右;绩效评估较高,在0.8以上的较为集中;平均月工作时长较高,一多半超过了平均水平(200小时)
# 绘制参与项目个数条形图时需要把此变量转换为因子型
hr$number_project <- factor(hr$number_project,
                            levels = c('2', '3', '4', '5', '6', '7'))
bar_pro <- ggplot(hr, aes(x = number_project, fill = left)) +
            geom_bar(position = 'fill') + # position = 'fill'即绘制百分比堆积条形图
            theme_bw() +
            labs(x = 'left', y = 'number_project') +
            = element_text(size = rel(1.3)),
                  = element_text(size = rel(1.3)),
                  axis.title.x = element_text(size = rel(1.3)),

本文发布于:2023-06-20 23:50:25,感谢您对本站的认可!

本文链接:https://www.wtabcd.cn/fanwen/fan/89/1047600.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

标签:离职   员工   是否   公司
相关文章
留言与评论(共有 0 条评论)
   
验证码:
推荐文章
排行榜
Copyright ©2019-2022 Comsenz Inc.Powered by © 专利检索| 网站地图