Closed 994218208yhl closed 1 year ago
给个例子
这个是我使用woebin分箱后计算输出的woe,以及我自己按照公式计算的woe,对比下来发现:当Missing箱中的y = 1(bad)这个类别为计数0时,woe计算值不符合源代码中使用0.9代替频率0的计算公式,且对该变量其他分箱的woe计算值和自己用公式计算的值不一样。
你这里只在计算第一行时,用0替换为0.9了。包里是先将0替换成0.9之后,再统一计算所有的woe。
import numpy as np
bad = [0.9, 3, 13, 25, 37, 26]
good = [12, 97, 169, 304, 246, 125]
np.log(bad/np.sum(bad)) - np.log(good/np.sum(good))
使用woebin分箱后,当Missing箱中的y = 1(bad)这个类别为计数0时,woe计算值不符合源代码中使用0.9代替频率0的计算公式,且对该变量其他分箱的woe计算值和自己用公式计算的值不一样;当Missing箱中的y = 1(bad)这个类别为计数不为0时,woe计算正确