网贷平台违约率分析

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包并读取数据

2、查看数据集

从加载的数据可以看到一共有81个数据特征,因此在接下来的分析过程中将会选取相关的特征进行分析,删除无关变量。

相关变量解释:

本分析依据交易是在进行正常还款期内还是已关闭将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、选取数据集(选取不包含当前正在进行交易的数据)

将LoanStatus数据进行二分类,分为0(违约),1(正常)

4、数据可视化

1、查看过去交易数据正常交易与非常交易的情况

通过观察条形图可以直观看出在过去已进行交易的贷款项目中,其中正常完成的占比比非正常的占比高

2、将数据集分成2009年7月1日前后两部分

ProsperRating (numeric):信用等级,反应的是2009年7月1日后的信用等级,信用等级越高,其偿还能力越强。

CreditGrade 信用等级,反应的是2009年7月1日前客户的信用等级

2.1、分析2009年7月1日前违约数

数据解读,2009年以前,信用等级排序为:AA>A>B>C>D>E>HR,由图可见信用等级越高,违约率越低

2.2、分析2009年7月1日后违约数

由2009年7月前后数据图可见,信用等级越高,违约率越低,综合2009年7月1日前后的数据,都有符合信用等级越高,违约率越低的特点,因此在进行放款的时候,信用等级是一个很好的评估标准。结合查看两个不同等级贷款占比图,发现2009年7月1日后每个等级的违约率都比2009年7月1日前相同等级的违约率低,由此可猜测,在风控模型越来越完善的同时,对是否违约的判断也越来越准确,有效降低违约风险。

3、2009年7月后各相关特征数据可视化

由于2009年7月1日后的风控体系与还在进行的交易体系有较大的相似性,因此接下来的分析中将选取2009年7月1日后的数据进行分析,由于在可视化的时候要进行缺失值处理,定义个去除缺失值的函数

3.1、判断贷款人职业状态与违约率的关系

由图可知有稳定工作收入的人违约率比没有稳定收入的违约率低,因此在放款的时候应加强对借款人收入状态的审核

3.2、工作年限与违约率的关系

由图可看出,违约率最低的是工作了2年到5年的,刚出了工作半年的违约率最高,工作年限低于10年的,工作年限越高违约率越低, 工作年限高于10年的违约率相对工作年限只有2-5年的违约率高,这可能与未来的可支配收入涨幅的提升空间有关,年龄达到一定程度的时候,相比年轻时候的提升 空间低,而且竞争力水平明显比年轻人的低

3.3、年收入与违约率的关系

从图中再次验证了有稳定收入的违约率比没有稳定收入的违约率低,年收入大于25万的违约率要比年收入高于10万低于25万的违约率低,猜测可能是 1、收入高的对应的不稳定性也比较大,假如年收入的一部分是来自投资,投资具有不确定性,过去的年收入高不代表今后的年收入保持只高不低;2、年收入高的 借款人可能家庭支出占比较高,比如孩子上学,要供房公车等,导致最终剩余可支配收入低

3.4、固定资产状况与违约率的关系

由图可得有房屋等固定资产作为担保的借款人的违约率比没有的低

3.5、借款人债务收入比与违约数

按照常识来说债务收入比(DebtToIncomeRatio)低的人更具备还款能力,违约可能性应该低于债务收入比高的人。如下图所示,DebtToIncomeRatio < 0.6的借款人中,违约笔数小于未违约的笔数。从下图也可看出大部分借款人的债务收入比低于0.25,说明平台违约的整体风险可控。

3.6、过去七年违约次数分析

过去七年违约次数(DelinquenciesLast7Years)能够衡量一个人在过去七年中征信情况,违约一次或以上的人在借款时违约概率更大。 如下图所示,DelinquenciesLast7Years < 7的借款人中,违约笔数与未违约的笔数线较为接近。从下图也可看出大部分借款人的DelinquenciesLast7Years 在1次以下, 说明整个平台的风险可控。

4、建模

1、选择要分析的特征值

2、数据清洗

2.1、缺失值处理:

‘BorrowerAPR’缺失值处理:

'ProsperRating (numeric)’缺失值处理:

‘object’类型数据缺失值处理:


‘TotalProsperLoans’缺失值处理

其余数值类型缺失值处理

2.2、数值类型转换:

数值类型转换:object转为int类型:

查看'IncomeRange’值计数,并将其转换为数值类型

将‘CreditGrade‘object类型转换为数值类型:

将‘LoanStatus’转换为数值类型:

3、建模

将数据分成2009年7月1日前后,分别进行建模

3.1、2009年7月1日前的数据

模型准确率高达0.9996

3.2 2009年7月1日后的数据

模型的准确率为:0.9957

5、总结

模型的准确率非常高,模型准确率越高并不代表模型越好,过拟合状态下的模型准确率非常高,模型的准确率太高不得不猜想是不是由于过拟合导致的。猜想的内容还有待学习研究。而且经2009年7月1日前后数据建模分析,模型的准确率并没有太大差别,按理来说,2009年7月1日后的准确率应明显高,这样才能突显网贷平台在进行优化后的成绩。

你可能感兴趣的:(网贷平台违约率分析)