ShichenXie / scorecardpy

Scorecard Development in python, 评分卡
http://shichen.name/scorecard
MIT License
725 stars 301 forks source link

关于WOE的计算方式问题 #28

Closed lyyqtvrc15 closed 5 years ago

lyyqtvrc15 commented 5 years ago

源码包里计算Woe时将频率0替换成0.9或者其他值的0.99的以方便计算IV合理性的依据来源是什么,为什么不直接合并成频率大于1为止,会不会对真实的iv影响很大,有没有证明过程,因为其他地方没看到过iv 值这么计算的?

ShichenXie commented 5 years ago

这个需要看你计算的是分箱之前还是分箱之后的iv。通常分箱之后就不会存在为0的情况了。iv的计算本身不应该涉及分箱的过程。

ShichenXie commented 5 years ago

如果是数值变量或者有序的类别变量,合并相邻的知道没有0值是可行的。不过对于类别变量可能合并就不是很好的选择了。

替换0为0.9,其实并没有高估了iv值,而是低估了。因为如果某一个箱存在0,那么区分度是非常高的,基于公式也是无穷大。

lyyqtvrc15 commented 5 years ago

博士,我想问下为什么对于类别变量可能合并就不是很好的选择了,是因为因为类别的无序导致合并不合理吗?

ShichenXie commented 5 years ago

对啊。

iv主要也是在前期筛选变量,这个时候偏大一点的iv不影响变量的筛选。然后分箱之后再计算下iv,这时候也不会存在0分箱导致无法计算的问题。

ShichenXie commented 5 years ago

如果你找到其他参考资料可以发给我