引子:我们经常看到很多“信贷干货”,比如:
已婚的人比未婚的人违约成本高;然后有孩子比没孩子的违约成本高;家庭越和睦,违约成本越高;本地人一般比外地人违约成本高;有资产有住房的人,比没住房没资产的人违约成本高;社会声誉及评价越高的人违约成本越高;父母和配偶的社会声誉和评价越高的人,违约成本越高。经营期限越长,违约成本越高;变更经营场所越难的,违约成本越高;回头客越重要,违约成本越高;盈利状况越好,违约成本越高。
这些经验谈有没有数据基础呢?是否经得起验证呢?信贷圈里各种各样的“审贷规则”“天条铁律”,都是怎么来的?做风控嘛,还是要用数据来说话。本文将通过人人贷2010年成立至今近七年累积的100万条贷款数据来验证。
一、数据说明

人人贷散标总数,截止2017年11月
我们主要分析人人贷散标数据,总共成交55万笔,但是申请总数超过了100万笔,其余流标。

除了流标,其余的可以理解为申请贷款成功,这里面又有多种形态:
一是正常结清:

二是尚在偿还期,正常还款中:

三是逾期或者坏账了

各类型占比情况如下:

每一笔借款,都可以查看借款人的基本信息

年龄、学历、婚姻、借贷历史、收入、资产、负债、工作状态
这些信息与贷款申请成功与否有什么关系?与贷款是否坏账有什么关系?坏账客户又有哪些特征?这是我们关注的问题。
二、数据获取
采集技术参考本专栏前几篇文章。
例如:信贷风控基本功:自动查企业工商登记信息(企业信用信息公示系统、极验Geetest与Python爬虫)https://zhuanlan.zhihu.com/p/28693272
当然,这并不重要。
最终,数据量还是比较大的,从2010年10月13日,人人贷上线的第一笔借款申请:


到最近的一笔

违约分析,主流方法是通过逻辑回归来做模型,调整关键的特征,提升违约率预测的准确率。笔者这里的数据,有价值的特征太少,样本不均衡问题突出,下面主要做做描述统计、探索性分析,寻找一些有意思的现象。
用pandas读入数据,我们看到年龄特征中有一些异常值和缺失值:
import pandas as pd
df = pd.read_csv("data.csv",encoding="gbk")
print (df.shape)
print(df['年龄'].value_counts(ascending=True))
奇怪的是,年龄也能够录入负数,还成功申请贷款,并结清了:

删去年龄太大或太小的样本,保留【18岁-60岁】:
df.rename(columns=lambda x:x.replace('年龄','Age'), inplace=True)
df.rename(columns=lambda x:x.replace('借款状态','Status'), inplace=True)
df1=df[(df['Age']<=60) & (df['Age']>=18) ]
下面有两个分析思路:一是比较不同年龄的审批通过率,二是通过贷款中不同年龄的逾期率。
import numpy as np
import matplotlib.pyplot as plt
df2=df1.copy()
df2['Status']=df2['Status'].replace("FAILED",0).replace("REPAYING",1).replace("CLOSED",1).replace("BADDEBT",1).replace("OVERDUE",1)
print(df2['Status'].value_counts())
table2=pd.pivot_table(df2,index=["Age"],values=["Status"],aggfunc=[np.mean])
table2.plot(kind='line',title=u'Status')
plt.show()
用数据透视表,计算出每个年龄的审批通过率:

18岁的客户,申请了105笔,通过了98笔,通过率93.3333%(98/105)。

结论:25岁左右客户通过率最低。
再看,审批通过的客户,逾期率与年龄的关系:
df3=df1.copy()
df3=df3[(df3['Status'] != "FAILED")]
df3['Status']=df3['Status'].replace("REPAYING",0).replace("CLOSED",0).replace("BADDEBT",1).replace("OVERDUE",1)
table3=pd.pivot_table(df3,index=["Age"],values=["Status"],aggfunc=[len,np.sum,np.mean])
print (table3.shape)
print(table3)

30岁的客户,放款量25488笔,逾期量290笔,逾期率1.1378%(290/25488)
通过图片能看的更清楚一些:

的确,30岁左右的客户,逾期率最高。
25岁以下和48岁以上的样本量太少,有一些偶然因素。
看到一则其他样本得出的结论:
芝麻信用根据最高人民法院失信被执行人(老赖)数据,公布了国内首份老赖大数据画像,其中提到:
从年龄分布看,40~49岁的中年人最容易陷入信用危机成为老赖,占35%。
最容易陷入信用危机,到底是不是这个年龄段的人信用差?
有几点疑问:
能够进入最高法院失信平台的是什么样的放贷机构?这类机构代表全体放贷人?就算代表全体,那这些机构的客户总体年龄结构是什么样的?这有对比分析,才能够得出更准确的结论。
例如:40~49岁的正常还款的中年人有比例多少?当然,如果仅仅做一个描述性统计,可以说“占比最大”,但不要讲“最容易陷入”,这容易引起误导。
从多年金融从业经历来看,一个可能的原因是,这些法院公布的失信客户名单来自传统银行类放贷机构(金额较大的贷款,才值得通过诉讼清收,进而进去失信被执行人名单),而传统银行更偏好40多岁的客户,如40多岁的企业老板。在经济下行时,所有客户(无论年轻的还是年龄大的)都失信了。由于40多岁的客户基数大,所以导致了上述结论。
很可能,年龄是中性的,就好比学生时代,每个阶段都有优秀学生和差生。而信贷作业就是筛选每个年龄段中最优秀的那一批。
年龄是用来对比的,横向对比。20来岁的租房年轻人,只要有稳定的工作,月薪两三千,能自食其力,就不错了。而50岁还如此,哪怕四五千,没有房子,只能说明他本身就比较弱势,与同龄人相比。一个30岁的处长可能比50岁的局长还优质。
这些都是数据之外的遐想。
网友评论