在线时间:8:00-16:00
迪恩网络APP
随时随地掌握行业动态
扫描二维码
关注迪恩网络微信公众号
全部代码请访问我的Github: 打分卡转换 我们在上一部分,我们已经基本完成了建模相关的工作,并用混淆矩阵验证了模型的预测能力。接下来的步骤,就是将Logistic模型转换为标准打分卡的形式。 在建立标准评分卡之前,我们需要选取几个评分卡参数:基础分值、 PDO(比率翻倍的分值)和好坏比。 这里, 我们取600分为基础分值,PDO为20 (每高20分好坏比翻一倍),好坏比取2.5。;可得下式: 620 = q - p * log(2.5) 600 = q - p * log(2.5/2) p = 20/log(2) q =600-20*log(2.5)/log(2) 其中总评分为基础分+部分得分。基础分可通过: base <- q + p*as.numeric(coe[1]) 算出为597分。 而第一个变量AccountBalance的第一种分箱评分得分为 :
以此类推, 我们可以得到所有变量取值分箱的得分,详细代码如下。AccountBalance变量: p*as.numeric(coe[2])AccountBalancewoe$WOE[1]-1 p*as.numeric(coe[2])AccountBalancewoe$WOE[2]-1 p*as.numeric(coe[2])AccountBalancewoe$WOE[3]-1 p*as.numeric(coe[2])AccountBalancewoe$WOE[4]-1 Duration变量: p*as.numeric(coe[3])Durationwoe$WOE[1]-1 p*as.numeric(coe[3])Durationwoe$WOE[2]-1 p*as.numeric(coe[3])Durationwoe$WOE[3]-1 PaymentStatusofPreviousCredit变量: p*as.numeric(coe[4])PaymentStatusofPreviousCreditwoe$WOE[1]-1 p*as.numeric(coe[4])PaymentStatusofPreviousCreditwoe$WOE[2]-1 p*as.numeric(coe[4])PaymentStatusofPreviousCreditwoe$WOE[3]-1 p*as.numeric(coe[4])PaymentStatusofPreviousCreditwoe$WOE[4]-1 p*as.numeric(coe[4])PaymentStatusofPreviousCreditwoe$WOE[5]-1 Purpose变量: for(i in 1:10){ print(p*as.numeric(coe[5])Purposewoe$WOE[i])-1 } CreditAmount变量 p*as.numeric(coe[6])CreditAmountwoe$WOE[1]-1 p*as.numeric(coe[6])CreditAmountwoe$WOE[2]-1 ValueSavings变量: p*as.numeric(coe[7])ValueSavingswoe$WOE[1]-1 p*as.numeric(coe[7])ValueSavingswoe$WOE[2]-1 p*as.numeric(coe[7])ValueSavingswoe$WOE[3]-1 p*as.numeric(coe[7])ValueSavingswoe$WOE[4]-1 Lengthofcurrentemployment变量: p*as.numeric(coe[8])Lengthofcurrentemploymentwoe$WOE[1]-1 p*as.numeric(coe[8])Lengthofcurrentemploymentwoe$WOE[2]-1 p*as.numeric(coe[8])Lengthofcurrentemploymentwoe$WOE[3]-1 p*as.numeric(coe[8])Lengthofcurrentemploymentwoe$WOE[4]-1 Agewoe变量: p*as.numeric(coe[9])Agewoe$WOE[1]-1 p*as.numeric(coe[9])Agewoe$WOE[2]-1 ForeignWorker变量: p*as.numeric(coe[10])ForeignWorkerwoe$WOE[1]-1 p*as.numeric(coe[10])ForeignWorkerwoe$WOE[2]-1 最终得出的打分卡结果为: R语言建立信用模型部分完结,欢迎分享 |
请发表评论