1、摘要
本文详述了如何通过数据预览,基本数据分析、探索式数据分析,缺失数据填补等方法,实现对[kaggle上Prosper借贷平台贷款者还款与否]这一分类问题如何进行数据分析的具体探索式实践。并分别对2009.07.01前后的模型进行建模分析对比,得出两个模型的预测准确率和变量对模型的重要性对比分析,2009年7月前后数据模型的准确率均约0.99,没有太大的差别,按理来说,2009年7月前的模型准确率不应和2009年7月后的准确率模型如此接近,因此不得不猜测模型准确率高是由于过拟合导致的。
2、项目内容介绍
Prosper LoanData是由Joshua Schnessl从Udacity Data Analyst Nanodegree上把数据放到kaggle的上供感兴趣的人分析的一个实例项目,这并非一个竞赛项目。本人试图通过训练数据集分析出什么类型的借款人更可能不违约,并预测出测试数据集中的每笔贷款是否违约。
本人将LoanStatus(贷款状态)分成完成和违约两种,所以把该项目定义为一个二元分类问题。
3、数据可视化
3.1数据加载
1、导入Python包并读取数据
![](https://img.haomeiwen.com/i12976018/20964ae68988d74a.png)
2、查看数据集
![](https://img.haomeiwen.com/i12976018/1f1f57e919bf4b24.png)
从加载的数据可以看到一共有81个数据特征,因此在接下来的分析过程中将会选取相关的特征进行分析,删除无关变量。
相关变量解释:
![](https://img.haomeiwen.com/i12976018/209fb002ad0538f2.png)
本分析依据交易是在进行正常还款期内还是已关闭将LoanStatus分成两组,并根据投资人有无损失将已关闭的交易分成Completed和Defaulted:Current(贷款还款中)、Defaulted(包含Defaulted、Chargedoff、Cancelled)、Completed(包含Completed、FinalPaymentInProgress、Past Due)三组。由于本文是研究违约问题,状态Current(贷款还款中),不能确定是否违约,所以这部分数据不是有效数据,应该去掉,只能用Defaulted(包含Defaulted、Chargedoff、Cancelled)、Completed(包含Completed、FinalPaymentInProgress、Past Due)这2组数据去研究。
3、选取数据集(选取不包含当前正在进行交易的数据)
![](https://img.haomeiwen.com/i12976018/3cdafa75eaa80c2b.png)
将LoanStatus数据进行二分类,分为0(违约),1(正常)
![](https://img.haomeiwen.com/i12976018/1a6978dfb9e8122f.png)
4、数据可视化
1、查看过去交易数据正常交易与非常交易的情况
![](https://img.haomeiwen.com/i12976018/5f5e05e5793565ad.png)
![](https://img.haomeiwen.com/i12976018/8eea40d87aea71d1.png)
2、将数据集分成2009年7月1日前后两部分
ProsperRating (numeric):信用等级,反应的是2009年7月1日后的信用等级,信用等级越高,其偿还能力越强。
CreditGrade 信用等级,反应的是2009年7月1日前客户的信用等级
2.1、分析2009年7月1日前违约数
![](https://img.haomeiwen.com/i12976018/e370e5113438b500.png)
![](https://img.haomeiwen.com/i12976018/2893350b6e8a75b5.png)
2.2、分析2009年7月1日后违约数
![](https://img.haomeiwen.com/i12976018/bb6e4e7b3d14654b.png)
![](https://img.haomeiwen.com/i12976018/a6af9e23ed362401.png)
由2009年7月前后数据图可见,信用等级越高,违约率越低,综合2009年7月1日前后的数据,都有符合信用等级越高,违约率越低的特点,因此在进行放款的时候,信用等级是一个很好的评估标准。结合查看两个不同等级贷款占比图,发现2009年7月1日后每个等级的违约率都比2009年7月1日前相同等级的违约率低,由此可猜测,在风控模型越来越完善的同时,对是否违约的判断也越来越准确,有效降低违约风险。
3、2009年7月后各相关特征数据可视化
由于2009年7月1日后的风控体系与还在进行的交易体系有较大的相似性,因此接下来的分析中将选取2009年7月1日后的数据进行分析,由于在可视化的时候要进行缺失值处理,定义个去除缺失值的函数
![](https://img.haomeiwen.com/i12976018/ad1c4740222c53f7.png)
3.1、判断贷款人职业状态与违约率的关系
![](https://img.haomeiwen.com/i12976018/58ebbd8f7c9fec71.png)
![](https://img.haomeiwen.com/i12976018/e4f200f792feb96d.png)
3.2、工作年限与违约率的关系
![](https://img.haomeiwen.com/i12976018/92adbe4449876412.png)
![](https://img.haomeiwen.com/i12976018/6428f15389174b7f.png)
3.3、年收入与违约率的关系
![](https://img.haomeiwen.com/i12976018/54de712530f09fed.png)
![](https://img.haomeiwen.com/i12976018/098b8bc4ca5fe2cd.png)
3.4、固定资产状况与违约率的关系
![](https://img.haomeiwen.com/i12976018/3de567978cd4a8eb.png)
![](https://img.haomeiwen.com/i12976018/eb3d6f9be2e51611.png)
3.5、借款人债务收入比与违约数
![](https://img.haomeiwen.com/i12976018/eb5a154c38af6688.png)
![](https://img.haomeiwen.com/i12976018/67f567f50d1a53d9.png)
3.6、过去七年违约次数分析
![](https://img.haomeiwen.com/i12976018/4903f8fde932961b.png)
![](https://img.haomeiwen.com/i12976018/a01cf4b4a918e9da.png)
4、建模
1、选择要分析的特征值
![](https://img.haomeiwen.com/i12976018/ab9dbd93e6a3eb65.png)
![](https://img.haomeiwen.com/i12976018/7f560ca04d5ffaa8.png)
2、数据清洗
2.1、缺失值处理:
‘BorrowerAPR’缺失值处理:
![](https://img.haomeiwen.com/i12976018/aae9981058b1d8e5.png)
'ProsperRating (numeric)’缺失值处理:
![](https://img.haomeiwen.com/i12976018/940c3628789131db.png)
‘object’类型数据缺失值处理:
![](https://img.haomeiwen.com/i12976018/2c49d608245189e8.png)
‘TotalProsperLoans’缺失值处理
![](https://img.haomeiwen.com/i12976018/42d79c33037b7382.png)
其余数值类型缺失值处理
![](https://img.haomeiwen.com/i12976018/c1aa538f8863752d.png)
2.2、数值类型转换:
数值类型转换:object转为int类型:
![](https://img.haomeiwen.com/i12976018/892109c739d9b523.png)
查看'IncomeRange’值计数,并将其转换为数值类型
![](https://img.haomeiwen.com/i12976018/1b1fce138d5931c2.png)
![](https://img.haomeiwen.com/i12976018/bd6ba47f62af8de5.png)
将‘CreditGrade‘object类型转换为数值类型:
![](https://img.haomeiwen.com/i12976018/bc97f34816d52372.png)
将‘LoanStatus’转换为数值类型:
![](https://img.haomeiwen.com/i12976018/9856422df81d4db1.png)
![](https://img.haomeiwen.com/i12976018/2912201746f947a8.png)
3、建模
将数据分成2009年7月1日前后,分别进行建模
3.1、2009年7月1日前的数据
![](https://img.haomeiwen.com/i12976018/a2c787196a829ddc.png)
![](https://img.haomeiwen.com/i12976018/56efc64e20fb159d.png)
![](https://img.haomeiwen.com/i12976018/0f2eb89152931cec.png)
3.2 2009年7月1日后的数据
![](https://img.haomeiwen.com/i12976018/738e5e51be33af14.png)
![](https://img.haomeiwen.com/i12976018/2701eaf611033752.png)
![](https://img.haomeiwen.com/i12976018/a3eb7b9fae118d96.png)
5、总结
模型的准确率非常高,模型准确率越高并不代表模型越好,过拟合状态下的模型准确率非常高,模型的准确率太高不得不猜想是不是由于过拟合导致的。猜想的内容还有待学习研究。而且经2009年7月1日前后数据建模分析,模型的准确率并没有太大差别,按理来说,2009年7月1日后的准确率应明显高,这样才能突显网贷平台在进行优化后的成绩。
网友评论