中国统计网|Python实战:信用评分模型开发「Part 1」( 二 )
这种情况在现实问题中非常普遍 , 这会导致一些不能处理缺失值的分析方法无法应用 , 因此 , 在信用风险评级模型开发的第一步我们就要进行缺失值处理 。
缺失值处理的方法 , 包括如下几种:
- 直接删除含有缺失值的样本
- 根据样本之间的相似性填补缺失值
- 根据变量之间的相关关系填补缺失值
NumberOfDependents变量缺失值比较少 , 直接删除 , 对总体模型不会造成太大影响 。 对缺失值处理完之后 , 删除重复项 。
2.异常值处理
缺失值处理完毕后 , 我们还需要进行异常值处理 。 异常值是指明显偏离大多数抽样数据的数值 。
比如个人客户的年龄为0时 , 通常认为该值为异常值 。 找出样本总体中的异常值 , 通常采用离群值检测的方法 。
首先 , 我们发现变量age中存在0 , 显然是异常值 , 直接剔除:
对于以下三个变量:
NumberOfTime30-59DaysPastDueNotWorse
NumberOfTimes90DaysLate
NumberOfTime60-89DaysPastDueNotWorse
这三个变量 , 由下面的箱线图可以看出 , 均存在异常值 , 且由unique函数可以得知均存在96、98两个异常值 , 因此予以剔除 。 同时会发现剔除其中一个变量的96、98值 , 其他变量的96、98两个值也会相应被剔除 。
本文插图
箱形图
剔除变量这三个变量的异常值:
NumberOfTime30-59DaysPastDueNotWorse ,
NumberOfTimes90DaysLate ,
NumberOfTime60-89DaysPastDueNotWorse
另外 , 数据集中好客户为0 , 违约客户为1 , 考虑到正常的理解 , 能正常履约并支付利息的客户为1 , 所以我们将其取反 。
3.数据切分
为了验证模型的拟合效果 , 我们需要对数据集进行切分 , 分成训练集和测试集 。
4
探索性分析
在建立模型之前 , 我们一般会对现有的数据进行探索性数据分析(Exploratory Data Analysis) 。
EDA是指对已有的数据(特别是调查或观察得来的原始数据)在尽量少的先验假定下进行探索 。 常用的探索性数据分析方法有:直方图、散点图和箱线图等 。
本文插图
客户年龄分布如上图所示 , 可以看到年龄变量大致呈正态分布 , 符合统计分析的假设 。
本文插图
客户年收入分布如上图所示 , 月收入也大致呈正态分布 , 符合统计分析的需要 。
5
【中国统计网|Python实战:信用评分模型开发「Part 1」】 变量选择
特征变量选择(排序)对于数据分析、机器学习从业者来说非常重要 。 好的特征选择能够提升模型的性能 , 更能帮助我们理解数据的特点、底层结构 , 这对进一步改善模型、算法都有着重要作用 。 在本文中 , 我们采用信用评分模型的变量选择方法 , 通过WOE分析方法 , 即是通过比较指标分箱和对应分箱的违约概率来确定指标是否符合经济意义 。 首先我们对变量进行离散化(分箱)处理 。
1.分箱处理
变量分箱(binning)是对连续变量离散化(discretization)的一种称呼 。
信用评分卡开发中一般有常用的等距分段、等深分段、最优分段 。
- 等距分段(Equval length intervals):分段的区间是一致的 , 比如年龄以十年作为一个分段;
推荐阅读
- 今日经济|华星酷娱荣获中国文化产业“十大影响力品牌 ”
- 星魂国|特斯拉V3超级充电桩进入中国,可节约一半充电时间
- 中年|全球饮茶风尚兴起 你真的了解袋泡茶吗?
- |办公场景无处不在的黑科技,MAXHUB凭什么征服超一半中国500强?
- 新机发布|三星试图挽回中国市场,从S21系列就能看出决心有多大
- 中国新闻网|70余人团队耗时3年 中国医生助“云放疗”走进非洲马里
- 柏铭007|中国又一家芯片企业崛起,累计芯片出货量超100亿颗
- 小暖男石头哥|荷兰人:中国人不可怕!可怕的是永远搞不懂他们为何不在乎血统
- 行业互联网|移远通信携手中国移动举办5G行业终端扬帆计划闭门会
- 放疗|70余人团队耗时3年 中国医生助“云放疗”走进非洲马里