中国统计网|1」,Python实战:信用评分模型开发「Part( 三 )


针对我们将使用最优分段对于数据集中的RevolvingUtilizationOfUnsecuredLines、
age、DebtRatio和MonthlyIncome进行分类 。
RevolvingUtilizationOfUnsecuredLines分箱情况
中国统计网|1」,Python实战:信用评分模型开发「Part
文章图片
age分箱情况
DebtRatio分箱情况
MonthlyIncome分箱情况
针对不能最优分箱的变量 , 分箱如下:
2.WOE
WoE分析 , 是对指标分箱、计算各个档位的WoE值并观察WoE值随指标变化的趋势 。 其中WoE的数学定义是:
woe=ln(goodattribute/badattribute)
在进行分析时 , 我们需要对各指标从小到大排列 , 并计算出相应分档的WoE值 。
其中正向指标越大 , WoE值越小;反向指标越大 , WoE值越大 。
正向指标的WoE值负斜率越大 , 反响指标的正斜率越大 , 则说明指标区分能力好 。
WoE值趋近于直线 , 则意味指标判断能力较弱 。
若正向指标和WoE正相关趋势、反向指标同WoE出现负相关趋势 , 则说明此指标不符合经济意义 , 则应当予以去除 。
3.相关性分析和IV筛选
接下来 , 我们会用经过清洗后的数据看一下变量间的相关性 。
注意:这里的相关性分析只是初步的检查 , 进一步检查模型的VI(证据权重)作为变量筛选的依据 。相关性图我们通过Python里面的seaborn包 , 调用heatmap绘图函数进行绘制 , 实现代码如下:
中国统计网|1」,Python实战:信用评分模型开发「Part
文章图片
数据集各变量的相关性
由上图可以看出 , 各变量之间的相关性是非常小的 。 NumberOfOpenCreditLinesAndLoans和NumberRealEstateLoansOrLines的相关性系数为0.43 。
接下来 , 我进一步计算每个变量的InfomationValue(IV) 。 IV指标是一般用来确定自变量的预测能力 。 其公式为:
IV=sum((goodattribute-badattribute)*ln(goodattribute/badattribute))
通过IV值判断变量预测能力的标准是:
<0.02:unpredictive
0.02to0.1:weak
0.1to0.3:medium
0.3to0.5:strong
>0.5:suspicious
IV的实现放在mono_bin函数里面 , 代码实现如下:
输出图像:
中国统计网|1」,Python实战:信用评分模型开发「Part
文章图片
输出的各变量IV图
可以看出 , 以下几个变量:
DebtRatio
MonthlyIncome
NumberOfOpenCreditLinesAndLoans
NumberRealEstateLoansOrLines
NumberOfDependents
【中国统计网|1」,Python实战:信用评分模型开发「Part】变量的IV值明显较低 , 所以予以删除 。


推荐阅读