Rong360 icon indicating copy to clipboard operation
Rong360 copied to clipboard

最优分箱

Open maocy1991 opened this issue 7 years ago • 11 comments

大神,您好,请问你们有用到最优分箱吗?Python怎样实现最优分箱?

maocy1991 avatar Aug 23 '17 05:08 maocy1991

你好,最优分箱这部分是我队友做的,他用的应该是R里面的smbinning,https://cran.r-project.org/web/packages/smbinning/index.html。 python的刚搜了一下:https://statcompute.wordpress.com/2012/12/08/monotonic-binning-with-python/

hczheng avatar Aug 23 '17 05:08 hczheng

我采用:https://statcompute.wordpress.com/2012/12/08/monotonic-binning-with-python/里面的分箱函数,但是得不出分箱结果; 请问你们项目主要是用pythonn ,那R的最优分箱是怎么运用到项目里的呢? 我也有用R来做,但是项目最终要求用python出最终结果

maocy1991 avatar Aug 23 '17 07:08 maocy1991

是这样的,因为我们是参加比赛,我用的python,队友习惯用R,他把我们的特征数据集分箱后存成csv再分享出来,我再跑模型,所以不影响。

hczheng avatar Aug 23 '17 16:08 hczheng

谢谢大神

maocy1991 avatar Aug 24 '17 02:08 maocy1991

Statcompute的分箱算法是我写的了。我在GitHub里又加了几个改进版。大家不妨试一下。如果有改进建议,希望告诉我。谢谢。

statcompute avatar Mar 02 '19 14:03 statcompute

Statcompute的分箱算法是我写的了。我在GitHub里又加了几个改进版。大家不妨试一下。如果有改进建议,希望告诉我。谢谢。

你好,请问下你写的分享算法原理是什么呢?我看到有的mono_bin的分箱算法要计算spearman相关系数,这是为什么呢?

lancexiong avatar Jul 29 '19 02:07 lancexiong

这不是挺明显的吗?单调的必要条件就是SPEARMAN的绝对值必为一。

statcompute avatar Jul 30 '19 02:07 statcompute

这不是挺明显的吗?单调的必要条件就是SPEARMAN的绝对值必为一。

那为什么不用pearson相关系数要用spearman相关系数,这里的单调指的是随着预测变量比如年龄的增加,违约率(bad_rate)是要单调上升或者下降,但是最后不是要保证woe值是单调的吗?如果保证bad_rate单调就一定能使得woe值也是单调的吗? 尝试了下对逾期数据中的年龄进行分箱,发现一个问题就是当我用mono_bin设定箱数是20和10开始缩小分箱数量的时候,发现一个分箱是17,一个分箱是9。那究竟分箱是多少才算正确?

lancexiong avatar Jul 30 '19 09:07 lancexiong

我要的是单调而不是线性单调,Pearson太严格了,所以不是我要的。 你关于WOE和BAD_RATE单调的问题,建议你自己动手做一下。 至于你最后的那个问题,我已经有个升级版了。看一下 https://github.com/statcompute/MonotonicBinning 。 谢谢。

statcompute avatar Jul 30 '19 11:07 statcompute

我要的是单调而不是线性单调,Pearson太严格了,所以不是我要的。 你关于WOE和BAD_RATE单调的问题,建议你自己动手做一下。 至于你最后的那个问题,我已经有个升级版了。看一下 https://github.com/statcompute/MonotonicBinning 。 谢谢。

请问您实现的那4种分箱方法,manual_bin,qtl_bin,bad_bin,iso_bin的具体原理是什么呢?有没有相关资料参考下,因为R代码没有注释,不怎么能看懂,不知是否有python版本的?

lancexiong avatar Jul 31 '19 03:07 lancexiong

您说的完全对,的确有很多需要提高的地方。实在是太忙了,请您多担待。

statcompute avatar Jul 31 '19 17:07 statcompute