#用woe代替defreplace_woe(series,cut,woe):list=[]
i=0while i<len(series):
value=series[i]
j=len(cut)-2
m=len(cut)-2while j>=0:if value>=cut[j]:
j=-1else:
j -=1
m -=1list.append(woe[m])
i +=1returnlist#计算分数函数defget_score(coe,woe,factor):
scores=[]for w in woe:
score=round(coe*w*factor,0)
scores.append(score)return scores
#根据变量计算分数defcompute_score(series,cut,score):list=[]
i =0while i <len(series):
value = series[i]
j =len(cut)-2
m =len(cut)-2while j >=0:if value >= cut[j]:
j =-1else:
j -=1
m -=1list.append(score[m])
i +=1returnlist