一、产品介绍
针对65岁以上的人群推出的医疗附加险,销售渠道为直邮。
二、商业目的
针对保险公司的健康险产品的用户数据,制作用户画像,找出最具有购买倾向的人群以进行精准保险营销。
三、分析流程
1 导入数据,观察数据
···了解数据样本和特征个数、数据类型、基本信息等
df.shape
df.dtypes
# 将ID转换成object
df['KBM_INDV_ID'] = df['KBM_INDV_ID'].astype('object')
···统计数据基本信息
df.describe().T
···统计空值数量
# 检查缺失列的数量
len(df.columns) - df.dropna(axis=1).shape[1]
# 统计各列中空值的数量
df_null_sum = df.isnull().sum()
# 将不为零的数据过滤出来
NA = df.isnull().sum()
NA = NA.reset_index()
NA
# 重置列名
NA.columns = ['Var','NA_count']
NA
# 过滤出大于0的数据
NA = NA[NA.NA_count>0].reset_index(drop=True)
NA
# 把空值个数,换算成比例
NA.NA_count/df.shape[0]
···查看数据中是否有重复值
df[df.duplicated()]
2 探索数据及数据可视化分析
import matplotlib.pyplot as plt
import seaborn as sns
plt.style.use('seaborn')
# 支持中文
plt.rcParams['font.sans-serif']=['SimHei']
plt.rcParams['axes.unicode_minus']=F