分析背景
一家公司负责人想要知道为什么最近公司好多有经验的员工选择辞职,并且预测哪些员工可能离职?
数据来源
数据说明
此数据为虚拟数据
分析步骤
获取数据, 并对数据进行读取
了解数据格式, 大小, 内容
对数据异常值与缺失值进行清洗处理
对数据进行描述性分析
各维度下数据的分布情况
对数据进行探索性分析
维度两两之间的关系, 对比分析。
分析过程
1. 获取数据, 并进行读取。
我们从Kaggle上下载数据, 将数据保存到本地, 并用python对数据进行读取。
导入数据包
import pandas as pd
import numpy as np
import matplotlib.pyplot as plt
% matplotlib inline
import seaborn as sns
读取数据, 并命名为df
df = pd.read_csv('C:/Users/zhangyu/Desktop/data_test/HR_comma_sep.csv')
2. 了解数据, 大小, 类型, 内容
查看数据的大小
df. shape
(14999, 10)
数据有14999行, 10列
读取数据前5行
df.head()
数据前5行
读取数据后5行
df.tail(5)
数据后5行
查看数据类型
df.dtypes
satisfaction_level float64
last_evaluation float64
number_project int64
average_montly_hours int64
time_spend_company int64
Work_accident int64
left int64
promotion_last_5years int64
sales object
salary object
dtype: object
查看sales列中的唯一值
df['sales'].unique()
array(['sales', 'accounting', 'hr', 'technical', 'support', 'management',
'IT', 'product_mng', 'marketing', 'RandD'], dtype=object)
查看salary列中的唯一值
df['salary'].unique()
array(['low', 'medium', 'high'], dtype=object)
3. 对数据进行清洗处理
查看数据是否有缺失值
df.any()
satisfaction_level True
last_evaluation True
number_project True
average_montly_hours True
time_spend_company True
Work_accident True
left True
promotion_last_5years True
sales True
salary True
dtype: bool
返回False代表数据有缺失值, 返回True代表数据无缺失值, 此数据源无缺失值。
对数据列名进行更换,以便更好的阅读
df = df.rename(columns = {
'satisfaction_level' : '员工满意度', 'last_evaluat