用Python算法预测客户行为案例!
这是一份kaggle上的银行的数据集,研究该数据集可以预测客户是否认购定期存款y。这里包含20个特征。
1. 分析框架

2. 数据读取,数据清洗
# 导入相关包 import numpy as np import pandas as pd # 读取数据 data = pd.read_csv('./1bank-additional-full.csv') # 查看表的行列数 data.shape 输出:

这里只有nr.employed这列有丢失数据,查看下:
data['nr.employed'].value_counts() 这里只有5191.0这个值,没有其他的,且只有7763条数据,这里直接将这列当做异常值,直接将这列直接删除了。
# data.drop('nr.employed', axis=1, inplace=True) 3. 探索性数据分析
3.1查看各年龄段的人数的分布
这里可以看出该银行的主要用户主要集中在23-60岁这个年龄层,其中29-39这个年龄段的人数相对其他年龄段多。
import matplotlib.pyplot as plt import seaborn as sns plt.rcParams['font.sans-serif'] = 'SimHei' plt.figure(figsize=(20, 8), dpi=256) sns.countplot(x='age', data=data) plt.title("各年龄段的人数") 
3.2 其他特征的一些分布
plt.figure(figsize=(18, 16), dpi=512) plt.subplot(221) sns.countplot(x='contact', data=data) plt.title("contact分布情况") plt.subplot(222) sns.countplot(x='day_of_week', data=data) plt.title("day_of_week分布情况") plt.subplot(223) sns.countplot(x='default', data=data) plt.title("default分布情况") plt.subplot(224) sns.countplot(x='education', data=data) plt.xticks(rotation=70) plt.title("education分布情况") plt.savefig('./1.png') 
plt.figure(fig