美文网首页
python评分卡之woe编码

python评分卡之woe编码

作者: 钢能锅 | 来源:发表于2018-12-03 15:27 被阅读0次

    1.连续变量离散化后重新编码

    def replace_woe(series,cut,woe):

        list=[]

        i=0

        while i<len(series):

            value=series[i]

            j=len(cut)-2

            m=len(cut)-2

            while j>=0:  

                if value>cut[j]:   # 有的代码写的是“>=”,但实际转换后发现有的变量出现错误                                           

                    j=-1

             else:

                    j -=1

                    m -= 1

            list.append(woe[m])

            i += 1

    df=df.reset_index(drop=True,inplace=False)  #不能遗忘,否则会出错

    data[变量名']=Series(replace_woe(data['变量名'], cutx1(变量对应的分箱), woex1(变量对应的)))

    -----------------------------------------------------------------------------------------------

    2.分类变量woe转换

    def replace_woe2(series,cut,woe):

        list=[]

        i=0

        while i<len(series):

            value=series[i]

            j=len(cut)-1

            m=len(cut)-1

            while j>=0:

                if value==cut[j]:

                    j=-1

                else:

                    j-=1

                    m-= 1

            list.append(woe[m])

            i+= 1

        return list

    相关文章

      网友评论

          本文标题:python评分卡之woe编码

          本文链接:https://www.haomeiwen.com/subject/eurycqtx.html