**数据来源kaggle(uci数据集): [https://www.kaggle.com/janiobachmann/bank-marketing-dataset/kernels]**
![image.png](https://upload-images.jianshu.io/upload_images/18032205-0d6a3d35b648f6bd.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)
### 0 项目概述
  本项目的目的是充分挖掘客户的需求、刻画客户群体肖像,并针对营销活动的开展提供建设性的意见建议,从而真正促进推动银行业务的开展。 为此,我们需要对以下加点进行深入挖掘:
- (1)目标人群:哪一部分人群是精准营销的客户群体,针对这一部分人开展营销推广,将使得活动变得高效、快速;
- (2)营销渠道:有哪些营销渠道可以采用,例如电话、电视、社交媒体等,如何针对人群设定最佳的渠道策略;
- (3)定价:具体的业务应该怎样定价以吸引客户?
- (4)营销策略:推动业务落地,从而真正推动业务实效化开展。
  本数据集的营销场景是给客户推荐定期存款业务。
### 一、业务分析
```
import pandas as pd
import numpy as np
import matplotlib.pyplot as plt
import seaborn as sns
%matplotlib inline
plt.rcParams['font.sans-serif']=['SimHei'] #用来正常显示中文标签
plt.rcParams['axes.unicode_minus']=False #用来正常显示负号
bank=pd.read_csv('/Users/ranmo//Desktop/数据分析案例/银行营销/bank.csv')
bank.info()
bank.head()
```
显示如下:
![image.png](https://upload-images.jianshu.io/upload_images/18032205-6b9fe292ca213de0.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)
![image.png](https://upload-images.jianshu.io/upload_images/18032205-17b2e40563d6376f.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)
一共11162行*17列数据,具体的数据项可以分为三个部分。
##### 1.1 基本属性
- age,年龄
- job,工作类型(分类:'管理员','蓝领','企业家','女佣','管理层','退休','自雇','服务','学生' '技术人员', '失业', '未知')
- marital,婚姻状态(分类:'离婚','已婚','单身','未知';注:'离婚'是指离婚或丧偶)
- education,教育程度(分类:'初等教育','中等教育','高等教育')
- default,有无违约(分类:'无','有','未知')
- housing,有无住房贷款(分类:'无','有','未知')
- load:有无个人贷款(分类:'无','有','未知')
- balance:盈余(收支平衡)
##### 1.2 业务联系
- contact:联系方式(分类:'移动电话','座机')
- day:上一个联系日(分类:'周一','周二','周三','周四','周五')
- month:上一个联系月(分类:'一月~十二月')
- duration:通话时间,秒(此数据为通话时间,似乎包含等待接通的时间,因为最小值是2s,之后会分析到)
##### 1.3 最近一次营销活动
- campain:上一次营销活动和此客户联系的次数
- pdays:自上一次营销活动联系后,至今的天数
- previous:上一次营销活动之前和客户累计联系过的次数
- poutcome:上一次营销的结果(分类:'失败','未知','其他',成功')
##### 1.4 目标数据
- deposit:客户是否有定期存款?(分类:'是','否')
### 二、数据准备
##### 2.1 描述性数据概览
![image.png](https://upload-images.jianshu.io/upload_images/18032205-849adb21a4820f66.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)
可以得到以下基本信息:
- 客户平均年龄约为41岁,最高为95岁, 最低为18岁;
- 客户平均盈余为1528,但标准差很大,说明此项数据的分布情况很分散。
- 通话持续时间在2~3881s(1h+)不等,是上一次的通话时间还是累计的通话时间??是纯通话时间还是包含等待时间?这项数据不敢轻易使用。不过可以确定的是,通话时间越长,肯定说明客户潜力越大,相应的存款也会更多。
- 上一次营销活动的联系次数在1~63次不等,相应的联系次数越多,则约表明该客户在上一次活动中参与度高;
- 上一次营销活动后至今的天数为-1~854天,为什么会有-1?是否为数据错误;
- 上一次营销活动之前和客户累计联系过的次数为0~58次,整体数据偏小。
##### 2.2 数据清洗和过滤
![image.png](https://upload-images.jianshu.io/upload_images/18032205-0593ee5dc57854bb.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)
因为没有缺失数据,所以不用进行数据填充。
针对pdays中存在的“-1”,也没有进行清洗。
### 三、探索性数据分析(EDA)
##### 3.1 数据项分布
是否有定期存款是我们特别关注的数据,不过在此之前,我们可以先分析一下各个数据项的分布以及彼此可能存在的联系。
```
bank.hist(bins=20,figsize=(14,10))
```
![image.png](https://upload-images.jianshu.io/upload_images/18032205-7dc650f4e975c5cb.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)
###### 3.1.1 盈余
和是否有违约之间的关系:
```
sns.set(style="darkgrid")
sns.boxplot(x='default',y='balance',hue='deposit',data=bank)
```
![image.png](https://upload-images.jianshu.io/upload_images/18032205-f581a305207a1405.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)
和职业之间的关系:
```
sns.boxplot(x='job',y='balance',hue='deposit',data=bank)
plt.xticks(rotation=90)
```
![image.png](https://upload-images.jianshu.io/upload_images/18032205-0317239cc1534d2f.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)
和教育程度之间的关系:
```
sns.violinplot(x='education',y='balance',hue='deposit',data=bank)
```
![image.png](https://upload-images.jianshu.io/upload_images/18032205-a716ee17b1cbc38b.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)
可以得知:
- 有违约记录的人员盈余明显偏低,表明他们的经济状况确实不太好;
- 有几个职业经济状况更好,退休人员、管理层、自雇和技术人员;
- 不同教育程度的人员的盈余情况似乎没有明显的偏差,并不像我们想象中的,高等教育者应当具备更高的盈余。
###### 3.1.2 职业
职业的数量分布:
```
plt.rcParams['figure.figsize']=(10,6)
sns.set()
sns.barplot(x='index',y='job',data=bank['job'].value_counts().to_frame().reset_index())
plt.xticks(rotation=90)
```
![image.png](https://upload-images.jianshu.io/upload_images/18032205-c2740f23e1257682.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)
职业和年龄的关系:
```
sns.boxplot(x='job',y='age',data=bank)
plt.xticks(rotation=90)
```
![image.png](https://upload-images.jianshu.io/upload_images/18032205-9bec333328cd793b.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)
职业和收入的关系:(发现画图效率有点低,已经开始用tableau混用了)
```
#tableau创建计算字段balance status:
if [balance]<0
then 'negtive'
elseif [balance]<3000
then 'low'
elseif [balance]<10000
then 'mid'
else 'high'
end
```
![image.png](https://upload-images.jianshu.io/upload_images/18032205-943481dd0878b2e9.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)
可以得知:
- 管理人员是最为普遍的职业类型;
- 退休人员的年龄偏高,而学生最低,umm,跟预期的一致;
- 管理人员和技术人员是综合盈余最高的人(含有比较多的high——balance比例和数目)。
###### 3.1.3 婚姻状态
婚姻状态和盈余的关系:
![image.png](https://upload-images.jianshu.io/upload_images/18032205-f0874e258f0d2374.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)
可以得知:
- 似乎婚姻状态与盈余没有什么相关性,因为无论是离婚者、单身者、结婚者,在各个盈余段上的分布都比较相似,普遍分布在0~5k内。
###### 3.1.4 受教育程度
受教育程度和婚姻状态的关系:
![image.png](https://upload-images
没有合适的资源?快使用搜索试试~ 我知道了~
银行营销结果预测模型 有报告 python
共8个文件
ipynb:2个
csv:2个
docx:2个
1.该资源内容由用户上传,如若侵权请联系客服进行举报
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
版权申诉
5星 · 超过95%的资源 2 下载量 161 浏览量
2023-01-17
19:55:18
上传
评论 2
收藏 1.39MB ZIP 举报
温馨提示
**数据来源kaggle(uci数据集): [https://www.kaggle.com/janiobachmann/bank-marketing-dataset/kernels]** 本项目的目的是充分挖掘客户的需求、刻画客户群体肖像,并针对营销活动的开展提供建设性的意见建议,从而真正促进推动银行业务的开展。 为此,我们需要对以下加点进行深入挖掘: - (1)目标人群:哪一部分人群是精准营销的客户群体,针对这一部分人开展营销推广,将使得活动变得高效、快速; - (2)营销渠道:有哪些营销渠道可以采用,例如电话、电视、社交媒体等,如何针对人群设定最佳的渠道策略; - (3)定价:具体的业务应该怎样定价以吸引客户? - (4)营销策略:推动业务落地,从而真正推动业务实效化开展。   本数据集的营销场景是给客户推荐定期存款业务。
资源推荐
资源详情
资源评论
收起资源包目录
银行营销结果预测模型.zip (8个子文件)
银行营销.docx 19KB
bank.csv 897KB
工作簿 1.twb 338KB
bank marketing.docx 73KB
Untitled.ipynb 836KB
.ipynb_checkpoints
Untitled-checkpoint.ipynb 836KB
README.md 34KB
bank_spss.csv 503KB
共 8 条
- 1
资源评论
- m0_750927022024-01-19资源不错,内容挺好的,有一定的使用价值,值得借鉴,感谢分享。
- 2301_768884392023-07-13简直是宝藏资源,实用价值很高,支持!
小夕Coding
- 粉丝: 5915
- 资源: 462
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功