文章插图
职位晋升
从条形图可以看出,在过去5年内获得未晋升的员工离职率为24.2%,比获得晋升的员工高4倍 。设定良好的晋升通道可以很好的防止员工流失 。
文章插图
薪资水平
可明显看出,薪资越高离职人数越少 。证明为了减少离职率,提升员工福利待遇是一个可行的手段 。
文章插图
不同部门
可见各部门离职率如上图,离职率由高到低,前三位分别是:人力部、财务部、科技部 。之后依次是:支持部、销售部、市场部、IT部门、产品部、研发部、管理部 。对于离职率过高的部门,应进一步分析关键原因 。
文章插图
04
数据预处理
由于在建模时不接受类别型变量,我们主要对数据做以下处理,以方便后续建模分析:
# 数据转换df['salary'] = df['salary'].map({"low": 0, "medium": 1, "high": 2})# 哑变量df_dummies = pd.get_dummies(df,prefix='sales')df_dummies.head()
文章插图
05
建模分析
我们使用决策树和随机森林进行模型建置,首先导入所需包:
from sklearn.model_selection import train_test_split, GridSearchCVfrom sklearn.tree import DecisionTreeClassifierfrom sklearn.ensemble import RandomForestClassifierfrom sklearn.metrics import classification_report, f1_score, roc_curve, plot_roc_curve
然后划分训练集和测试集,采用分层抽样方法划分80%数据为训练集,20%数据为测试集 。
x = df_dummies.drop('left', axis=1)y = df_dummies['left']X_train, X_test, y_train, y_test = train_test_split(x, y, test_size=0.2, stratify=y, random_state=2020)print(X_train.shape, X_test.shape, y_train.shape, y_test.shape)
决策树
文章插图
我们使用决策树进行建模,设置特征选择标准为gini,树的深度为5 。输出分类的评估报告:
# 训练模型clf = DecisionTreeClassifier(criterion='gini', max_depth=5, random_state=25)clf.fit(X_train, y_train)train_pred = clf.predict(X_train)test_pred = clf.predict(X_test)print('训练集:', classification_report(y_train, train_pred))print('-' * 60) print('测试集:', classification_report(y_test, test_pred))
训练集:precisionrecallf1-scoresupport00.980.990.98914210.970.930.952857accuracy0.9811999macro avg0.970.960.9711999weighted avg0.980.980.9711999------------------------------------------------------------测试集:precisionrecallf1-scoresupport00.980.990.98228610.970.930.95714accuracy0.983000macro avg0.970.960.973000weighted avg0.980.980.983000
假设我们关注的是1类(即离职类)的F1-score,可以看到训练集的分数为0.95,测试集分数为0.95 。
# 重要性imp = pd.DataFrame([*zip(X_train.columns,clf.feature_importances_)], columns=['vars', 'importance'])imp.sort_values('importance', ascending=False)imp = imp[imp.importance!=0]imp
文章插图
在属性的重要性排序中,员工满意度最高,其次是最新的绩效考核、参与项目数、每月工作时长 。
- 基于jsp的企业员工信息管理系统的设计与实现--【毕业论文】
- 我在文心一言APP挑战宿管阿姨!打不赢,根本打不赢!
- 全美最适合工作的公司——谷歌,是如何为员工制造幸福的
- 基于SpringBoot智能无人仓库管理
- 新浪微博员工吐槽:研发算法应届生工资25k,老员工不服
- 如何监控员工电脑的聊天记录
- U盘装官方Win10系统
- 世界上最罕见的职业是什么?全球仅6位员工,撒贝宁妻子也是其一 李白吉尼斯记录官
- 培养团队协作精神义乌中行举办员工趣味羽毛球赛 吉尼斯记录团队协作
- 中超球员工资排行,中超球员平均工资是多少