01. 数据来源及说明
所提供数据来自拍拍贷真实业务数据,从2015-01-01到2017-01-30的所有信用标的10%sample样本。数据集包含LC.csv(标的特征表数据)。
数据来源:kesci.com/home/dataset/58c614aab84b2c48165a262d/files
共计21个字段,21条。具体字段如下:
字段序号 字段名 字段注释
1 ListingId 列表序号,为列表的唯一键。
2 借款金额 列表成交总金额。
3 借款期限 总的期数(按月计)。
4 借款利率 年化利率(百分数)。
5 借款成功日期 列表成交的日期。都在2015年1月1日以后。
6 初始评级 列表成交时的信用评级。AAA为安全标,AA为赔标,A-F为信用等级。
7 借款类型 分为'应收安全标',‘电商’,‘APP闪电’,‘普通’和‘其他’。
8 是否首标 该标是否为借款人首标。
9 年龄 借款人在该列表借款成功时的年龄。
10 性别 该列表借款人性别。
11 手机认证 该列表借款人手机实名认证是否成功。
12 户口认证 该列表借款人户口认证是否成功。
13 视频认证 该列表借款人视频认证是否成功。
14 学历认证 该列表借款人学历认证是否成功。成功则表示有大专及以上学历。
15 征信认证 该列表借款人征信认证是否成功。成功则表示有人行征信报告。
16 淘宝认证 该列表借款人淘宝认证是否成功。成功则表示为淘宝店主。
17 历史成功借款次数 借款人在该列表成交之前的借款成功次数。
18 历史成功借款金额 借款人在该列表成交之前的借款成功金额。
19 总待还本金 借款人在该列表成交之前待还本金金额。
20 历史正常还款期数 借款人在该列表成交之前的按期还款期数。
21 历史逾期还款期数 借款人在该列表成交之前的逾期还款期数。。
02. 提出问题
1.用户分析
2.借贷相关业务分析
03. 数据清洗
1. 导入数据
# 1、导入数据
# 创建lc 表
CREATE TABLE roma.lc (
`ListingId` bigint(20) NULL PRIMARY KEY,
借款金额 bigint(20) NULL,
借款期限 bigint(20) NULL,
借款利率 int(11) NULL,
借款成功日期 char(20) CHARACTER SET utf8 COLLATE utf8_general_ci NULL,
初始评级 char(20) CHARACTER SET utf8 COLLATE utf8_general_ci NULL,
借款类型 char(20) CHARACTER SET utf8 COLLATE utf8_general_ci NULL,
是否首标 char(20) CHARACTER SET utf8 COLLATE utf8_general_ci NULL,
年龄 int(11) NULL,
性别 char(10) CHARACTER SET utf8 COLLATE utf8_general_ci NULL,
手机认证 char(20) CHARACTER SET utf8 COLLATE utf8_general_ci NULL,
户口认证 char(20) CHARACTER SET utf8 COLLATE utf8_general_ci NULL,
视频认证 char(20) CHARACTER SET utf8 COLLATE utf8_general_ci NULL,
学历认证 char(20) CHARACTER SET utf8 COLLATE utf8_general_ci NULL,
征信认证 char(20) CHARACTER SET utf8 COLLATE utf8_general_ci NULL,
淘宝认证 char(20) CHARACTER SET utf8 COLLATE utf8_general_ci NULL,
历史成功借款次数 int(11) NULL,
历史成功借款金额 bigint(20) NULL,
总待还本金 float NULL,
历史正常还款期数 int(11) NULL,
历史逾期还款期数 int(11) NULL
)
ENGINE=InnoDB
DEFAULT CHARSET=utf8
COLLATE=utf8_general_ci
COMMENT='';
#导入数据
load data infile 'C:/ProgramData/MySQL/MySQL Server 8.0/Uploads/LC.csv' into table lc
fields terminated by ','
enclosed by '"'
lines terminated by '\n';
ignore 1 lines;
2.数据清洗
2.1完整性处理
本数据无重复值,但是在gender/age/province/tags/comments KeyWords这几列中有部分缺失值,其中年龄的缺失值较多,数据不太具有代表性。
2.2全面性处理
在4个表中,actionTime、oerderTime都是以时间戳形式存储,先将时间戳改为日期格式。
2.3唯一性处理
04. 构建模型和分析问题
1.用户分析
1.1用户性别分析
select 性别
,count(Listingid) as '用户数量'
,sum(借款金额) as '借款总额'
,sum(case when 历史逾期还款期数>0 then 1 end) as '逾期数量'
,concat(round(sum(借款金额)*100/(select sum(借款金额) from lc),2),'%')as '借款占比'
from lc
group by 性别
从借款用户群体看,男性居多,无论是用户数量还是借款金额都是是女性用户两倍,但在逾期数量上女性稍高于男性群体。
1.2用户年龄分析
判断年龄区间值
select max(年龄) as '最大年龄',
min(年龄)as '最小年龄'
from lc ;
对年龄进行细化分组,观察
select case when 年龄>=17 and 年龄<25 then '17-24岁'
when 年龄>=25 and 年龄<33 then '25-32岁'
when 年龄>=33 and 年龄<40 then '33-40岁'
when 年龄>=40 and 年龄<48 then '40-47岁'
else '48-56岁' end as '年龄分组'
,count(Listingid) as '用户数量'
,sum(case when 历史逾期还款期数>0 then 1 end) as '逾期数量'
,sum(借款金额) as '借款总额'
,concat(round(sum(借款金额)*100/(select sum(借款金额) from lc),2),'%')as '借款占比'
from lc
group by 年龄分组
order by 年龄分组;;
25-32岁用户数量最多,高达50.24%,为主要用户,另外也表明25-32岁这个年龄段经济压力最大
1.3 用户借款区间维度分析
判断借款金额区间值
select max(借款金额) as '最大借款金额',
min(借款金额)as '最小借款金额'
from lc ;
观察金额分布情况
select 借款金额,count(*)
from lc
group by 借款金额
order by 借款金额 DESC;
select case when 借款金额>=100 and 借款金额<10000 then '100-10000'
when 借款金额>=10000 and 借款金额<20000 then '10000-20000'
when 借款金额>=20000 and 借款金额<30000 then '20000-30000'
when 借款金额>=30000 and 借款金额<40000 then '30000-40000'
when 借款金额>=40000 and 借款金额<50000 then '40000-50000'
when 借款金额>=50000 and 借款金额<60000 then '50000-60000'
else '60000-500000' end as '借款区间'
,count(Listingid) as '用户数量'
,sum(借款金额) as '总体借款金额'
,avg(借款金额)as '平均借款金额'
,concat(round(sum(借款金额)*100/(select sum(借款金额) from lc),2),'%')as '借款占比'
from lc
group by 借款区间
order by 借款区间;
拍拍贷借款人借款金额主要集中在100-10000元区间,超过10万元的大额借款不足1%。拍拍贷是小额贷款,针对的目标人群应该是一般白领以下人群。
进一步分析100-10000的借款区间各类分布情况
select case when 借款金额>=100 and 借款金额<1000 then '100-999'
when 借款金额>=1000 and 借款金额<2000 then '1000-1999'
when 借款金额>=2000 and 借款金额<3000 then '2000-2999'
when 借款金额>=3000 and 借款金额<4000 then '3000-3999'
when 借款金额>=4000 and 借款金额<5000 then '4000-4999'
when 借款金额>=5000 and 借款金额<6000 then '5000-5999'
when 借款金额>=6000 and 借款金额<7000 then '6000-6999'
when 借款金额>=7000 and 借款金额<8000 then '7000-7999'
when 借款金额>=8000 and 借款金额<9000 then '8000-8999'
when 借款金额>=9000 and 借款金额<=10000 then '9000-10000'
end as '借款区间'
,count(Listingid) as '用户数量'
,sum(借款金额) as '总体借款金额'
,avg(借款金额)as '平均借款金额'
from lc
where 借款金额 between 100 and 10000
group by 借款区间
order by 借款区间;
在100-10000借款区间内,49%是借款2000-5000,借款5000元及以下是72%,大部分人群借款在5000元及以下
1.4 用户初始信用等级分析
select 初始评级
,count(ListingId) as '用户数量'
from lc
group by 初始评级;
初始评级主要集中在C、D评级,初始评级不高,可能是由于渠道认证信息不完善导致。
1.5 用户借款期限分析
select max(借款期限)as '最大借款期限'
,min(借款期限)as '最小借款期限'
,avg(借款期限)as '平均借款期限'
from lc;
select case when 借款期限>=1 and 借款期限<=4 then '1-4'
when 借款期限>=5 and 借款期限<=8 then '5-8'
when 借款期限>=9 and 借款期限<=12 then '9-12'
else '13-24' end as '借款期限类型'
,count(Listingid) as '用户数量'
,sum(借款金额)as '借款总额'
,concat(round(sum(借款金额)*100/(select sum(借款金额) from lc),2),'%')as '借款占比'
,concat(round(sum(case when 历史逾期还款期数>0 then 1 end)*100/count(Listingid),2),'%') as '区间逾期率'
,concat(round(sum(case when 历史逾期还款期数>0 then 1 end)*100/(select count(*) from lc),2),'%') as '总体逾期率'
from lc
group by 借款期限类型
order by 借款期限类型;
绝大多数用户借款期限在5-12月,可以看一看5-12月每个月的具体情况:
select 借款期限
,count(Listingid) as '用户数量'
,sum(借款金额)as '借款总额'
,concat(round(sum(借款金额)*100/(select sum(借款金额) from lc),2),'%')as '借款占比'
,concat(round(sum(case when 历史逾期还款期数>0 then 1 end)*100/count(Listingid),2),'%') as '区间逾期率'
,concat(round(sum(case when 历史逾期还款期数>0 then 1 end)*100/(select count(*) from lc),2),'%') as '总体逾期率'
from lc
where 借款期限 BETWEEN 5 and 12
group by 借款期限
order by 借款期限;
借款期限为6个月和12个月较多,一方面这可能跟拍拍贷的借贷产品有关,另一方面也跟用户的习惯有关系
1.6 用户借款利率分析
select max(借款利率)
,min(借款利率)
,avg(借款利率)
from lc;
select case when 借款利率>=7 and 借款利率<=9 then '7-9'
when 借款利率>=10 and 借款利率<=12 then '10-12'
when 借款利率>=13 and 借款利率<=15 then '13-15'
when 借款利率>=16 and 借款利率<=18 then '16-18'
when 借款利率>=19 and 借款利率<=21 then '19-21'
when 借款利率>=22 then '22-24'
else 0 end as '借款利率类别'
,count(Listingid) as '用户数量'
,sum(case when 历史逾期还款期数>0 then 1 end) as '逾期量'
,sum(借款金额)as '借款总额'
,avg(借款金额)as '平均借款金额'
,concat(round(sum(借款金额)*100/(select sum(借款金额) from lc),2),'%')as '借款占比'
,concat(round(sum(case when 历史逾期还款期数>0 then 1 end)*100/count(Listingid),2),'%') as '逾期率'
from lc
group by 借款利率类别
order by 借款利率类别;
96%用户借贷利率都在16%年利息上,50%的用户通过拍拍贷获得贷款的利息都在20%以上,小贷贷款只要还款金额能覆盖逾期坏账就是暴利
** 2 借贷相关业务分析 **
** 2.1 时间维度下的客户数量、放款金额、逾期率等 **
select date_format(借款成功日期,'%Y-%m') as '月份'
,count(Listingid) as '用户数量'
,sum(借款金额) as '借款金额'
,avg(借款金额)as '平均金额'
,concat(round(sum(借款金额)*100/(select sum(借款金额) from lc),2),'%')as '借款占比'
,concat(round(sum(case when 历史逾期还款期数>0 then 1 end)*100/count(Listingid),2),'%') as '逾期率'
from lc
group by 月份
order by 月份;
随着用户量增长,总借款金额也随着上升,但是在16年11月后,借款金额增长放缓。
平均借贷金额从15年8000-10000到16年3月逐渐稳定在4000元上下,在16年11月平均借贷金额缓慢下降。
月度逾期率在15年12月后维持在15%,但在16年10月开始攀升,到17年1月份约为19%。
** 2.2 逾期率分析 **
** 2.2.1 逾期类型分析 **
select 借款类型
,count(Listingid) as '用户数量'
,sum(借款金额) as '借款总额'
,avg(借款金额)as '平均金额'
,sum(case when 历史逾期还款期数>0 then 1 end) as '逾期量'
,concat(round(sum(case when 历史逾期还款期数>0 then 1 end)*100/count(Listingid),2),'%') as 逾期率
from lc
group by 借款类型
order by 逾期率;
电商借款类型逾期率相对较高,应引起足够重视,关注电商客户经营状况以及造成逾期的具体原因。
借款类型为APP闪电和普通,这两类占据逾期用户群体87%,应关注这两类客户使用资金的用途及资金去向。
其他类型是一个特殊的群体,该类客户逾期量跟逾期率都是较高的,应关注该类用户群体深挖原因
** 2.2.2 初始评级逾期率分析**
select 初始评级
,count(Listingid) as '用户数量'
,sum(借款金额) as '借款总额'
,avg(借款金额)as '平均金额'
,sum(case when 历史逾期还款期数>0 then 1 end) as '逾期量'
,concat(round(sum(case when 历史逾期还款期数>0 then 1 end)*100/count(Listingid),2),'%') as 逾期率
from lc
group by 初始评级
order by 初始评级;
用户主要初始评级集中在CD两种类型,逾期率相对较高,应重点关注评级CD的客群,需要加以辅助手段,降低逾期率水平
05. 结论
(一)用户维度分析
1、贷款客户男性居多,维护并抓住好男性客户群体
2、平台客户贷款年龄主要集中在25-32岁,可以针对该群体特征,有选择性的进行渠道推广,与此同时,应关注该类群体逾期率较高问题
3、借款金额范围应该5000元以下为主要产品,5000-10000为次要产品推广
4、应该重点关注初始信用等级为C和D的用户群体,降低这类客户的逾期率
5、用户偏好的借款期限在6个月和12个月,但是逾期率较高,9个月的借款量较少,但是逾期率偏低,可以推广三个季度的借贷产品。
6、拍拍贷借款利率多说超过20%,利率超过16%在96%以上
(二)业务分析
1、随着用户量增长,总借款金额也随着上升,但是在16年11月后,借款金额增长放缓,逾期率却在上升,应加大了风控措施。
2、平均借贷金额从15年8000-10000到16年3月逐渐稳定在4000元上下,在16年11月平均借贷金额缓慢下降,应收缩借贷金额规模,提高甄别等级。
3、借款类型应可重点推广APP闪电和普通类型的借款,但是要提高风控水平。电商借款类型,要关注用户经营状况。
4、对初始信用评级在C、D的,应多拆出几个更新维度的信用评级,用于有针对性进行风控,降低逾期率。