目录
前言
本项目的主要内容是对公司员工进行分类 预测其两年内是否会离职
尝试模型:逻辑回归、KNN、随机森林
变量含义:
· Education:受教育水平
· JoiningYear:加入公司年份
· City:所在城市
· PaymentTier :薪资支付水平
· Age :年龄
· Gender :性别
· EverBenched :历史是否离开过一个月及以上时间
· ExperienceInCurrentDomain:在当前领域的经验
· LeaveOrNot :是否离职
一、初始化
导入相关包和库
#数据处理包
import numpy as np
import pandas as pd
#画图
import matplotlib.pyplot as plt
from matplotlib import rcParams
import seaborn as sns
#建模
from sklearn.preprocessing import scale,LabelEncoder #用于数据预处理模块的缩放器、标签编码
from sklearn.model_selection import train_test_split #数据集分类器 用于划分训练集和测试集
from sklearn.metrics import classification_report,accuracy_score #评估预测结果
from sklearn.linear_model import LogisticRegression #逻辑回归
from sklearn.neighbors import KNeighborsClassifier #KNN
from sklearn.tree import DecisionTreeClassifier #决策树
from sklearn.ensemble import RandomForestClassifier #随机森林
from sklearn.ensemble import GradientBoostingClassifier #XGB分类
设置显示
#设置输出全部结果 而非只有最后一个
from IPython.core.interactiveshell import InteractiveShell
InteractiveShell.ast_node_interactivity = "all"
#设置正常显示负号和中文
%matplotlib inline
plt.rcParams['font.family'] = 'SimHei' #用来正常显示中文
plt.rcParams['axes.unicode_minus']=False #用来正常显示负号
导入数据
#读取数据
data = pd.read_csv("/和鲸数据/多分类模型尝试-员工是否离职预测/Employee.csv")
data.head()
二、了解数据集
data.shape # 查看数据集结构
data.head() # 预览数据
data.isnull().sum() # 查看每一列的缺失值数量
由此可知,数据集共有4653行&9列,特征变量中无缺失值。
data.info() # 查看特征类型