定期存款客户分析和建模
背景分析:定期存单样本图
该数据与葡萄牙银行的直接营销活动有关。分类目标是预测客户是否会订购定期存款。
定期存单样本图
可视化说明:定期存单样本图
颜色越深,数据越大
客户分析比例分析意味着7个人中有一个可能会进行定期存款业务。
2.因为有必要预测定期存款的客户,所以针对y分析1的客户信息
定期存款客户的基本信息客户肖像:
从上图可以看出,定期存款的客户特征是年龄31-35年婚,工作性质为admin,教育程度为university.degree。
上图是housing和loan分析字段,办理存款有住房贷款比例55.51%,没有抵押贷款的客户处理存款业务比例44.49%。个人贷款定期存款的比例。84.84%,无个人贷款定期存款的比例为15.16%。
cons.price.idx为了区分年龄和工作性质,消费者价格指数做了两个分析图。26-35年龄组,消费价格指数在92.8-93.5定期存款人数较多。
从工作性质来看,admin消费指数分布相对均匀,从92.0到94.8,technician,blue-collar,retired性能也不错,消费价格指数从色度颜色分析93-93.5客户办理定期存款的意向更大。
Emp.var.rate从图中分析可以看出,60岁以上的就业变化率变化为-1以下是定期存款的就业率26-35在年龄范围内,就业变化率为-1.5至-0.2也有一些客户的就业变化率1.25-1.5虽然变化率很大,但也会办理定期存款业务。
Previous可以看出,与客户接触的次数越多,处理定期业务的次数就越高与客户接触的关系就越负相关。
Nr.employed存款和非存款的数量超过5000,没有分析意义。
Euribor3m从上图可以分析,不是季度指标euribor客户越高,定期存款越多。euribor主要有三个阶段,0.6-0.9,1.2-1.4,4.8-5.0.如果需要扩大定期存款的客户数量,可以从这三个阶段找出高峰期进行详细分析。
1.不办理存款业务的客户数与定期存款业务的客户比例为7:1。
2.定期存款的客户肖像是:年龄在26-35年婚,工作性质为admin,technician,blue-collar教育程度为university.degree,high.school,消费价格指数在93-93.5,就业变化率为-1.5至-0.2之间或1.25-1.5客户群之间做精准营销,降低宣传成本。
3.与客户联系次数为负相关,建议取消电话或手机联系宣传方式,换成客户可接受的宣传媒体。
4.Euribor与客户是否处理定期存款业务无关,但有三个主要阶段可以进一步分析,如何结算高峰时间、存款周期、经济环境或政府政策,以增加定期存款业务。
数据建模数据观测
导入算法包importnumpyasnp
importpandasaspd
importmatplotlibasmpl
importmatplotlib.pyplotasplt
importsklearn
fromsklearn.linear_modelimportLogisticRegression
fromsklearn.ensembleimportGradientBoostingClassifier,RandomForestClassifier
fromsklearn.metricsimportf1_score,accuracy_score,roc_auc_score,roc_curve
fromsklearn.preprocessingimportStandardScaler
设置中文显示模式,图表显示设置数据导入df=pd.read_csv('D:/data/bank/bank-additional-full-c.csv',index_col=0),先看数据结构:
查看数据属性,因为21个属性值,所以我们分两次查看,有些字段是字符型,需要数值化处理。这个数据集存在这个数据集存在unknown’值,使用value_counts()探索发现:job有330条,marital有80条,education有1731条,default有8597条housing有990条,loan有990个未知数据,并具有这六个属性y如果二次收集数据需要很多时间,我会在这里删除它。Unknown值处理:
删除后的数据集为30488个样本
1.使用info查看字符类型的字段:
使用forin遍历计算出object所有列对应数据的类型count值:
从上图可以看出,字符类型的属性值最多为11,因此将直接处理哑编码。
Int有型有6个字段,其中包括6个字段duration需要离散处理
Float类型不同value值也较少,所以不处理。
对于default、housing、loan,y取值均为yes,no因此进行二值化处理,yes替换为1,no替换为0。
2.数据缺省检查
Object类型无缺省值,同上方检查,int64,float64类型无缺省值。
特征工程:
1.有序哑编码处理:
Education学历编码有序。在这里,我将学历排换成数值1-7.
2.离散化
Describe后可以看出age,duration为连续数据,标准差较大需要做离散处理,pdays由于距离数据收集时从未联系过字段,标注为999,导致标准差异较大,最长时间为27天,更换为30,以降低标准差异。desribe:
3.哑编码处理:
特征属性处理后变为49个。
4.相关性分析
关联大于0.7选择属性,但删除特征属性不先操作,然后在模型培训评估后决定是否删除。
因此,数据集的特征属性较少,因此不进行降维和特征排名操作。
正样本和负样本的数量不成正比,在模型训练中进行处理
2.模型训练与评价
首先,使用逻辑回归模型进行训练,注意以下{1:3、0:1},这是调整样本值不平衡的方法之一,调整样本值的比例。在进行特征工程时,未删除相关属性。如果不删除,我们将获得以下模型效果:
可见模型效果变差,因此不删除相关属性。
3.模型参数调整:
除了特征选择,参数调整更为重要。接下来,我们将多次调整模型,以实现最佳模型:
模型学习效果还可以,混淆矩阵1的准确率较低,但召回率比较理想。
再利用随机森林RandomForestClassifier训练模型:
参数调优后,效果相当于逻辑回归模型。
然后进行集成算法GBDT来训练,参数调整后:
F1_score有明显的改进,因为我们主要预测1客户做业务扩张,所以选择召回率高的模型,逻辑回归或随机森林模型。
如果样本平衡,需要预测0、1的所有数据,最好选择GBDT综合学习模型。
4.数据预测:
获得新样本后,数据处理后,导入模型进行预测,预测值为1的定期存款宣传,节省市场和人员成本,实现定期存款业务扩张指标。
5.检查模型的准确性
后期跟踪预测为1的客户是否处理定期存款业务,验证模型的准确性,然后进行模型优化。找到25145171张原始定期存单样本图,包括定期存单样本图、材料、海报、证书背景、源文件PSD、PNG、JPG、AI、CDR等格式素材!
毕业证样本网创作《定期存单样本图(定期存款客户分析建模)》发布不易,请尊重! 转转请注明出处:https://www.czyyhgd.com/180442.html