1. 程式人生 > >評分卡模型開發-定性指標篩選

評分卡模型開發-定性指標篩選

定量指標是數值型的,我們還可以用迴歸的方法來篩選,那麼定性的指標怎麼辦呢?
R裡面給我們提供了非常強大的IV值計算演算法,通過引用R裡面的informationvalue包,來計算各指標的IV值,即可得到各定性指標間的重要性度量,選取其中的high predictive指標即可。
有很多小夥伴不知道informationvalue是什麼:
我大概說一下,IV值衡量兩個名義變數(其中一個是二元變數)之間關聯性的常用指標。

library(InformationValue)
library(klaR)
credit_risk<-ifelse(train_kfolddata[,"credit_risk"
]=="good",0,1) #將違約狀態變數用0和1表示,1表示違約。 tmp<-train_kfolddata[,-21] data<-cbind(tmp,credit_risk) data<-as.data.frame(data) factor_vars<-c("status","credit_history","purpose","savings","employment_duration", "personal_status_sex","other_debtors","property", "other_installment_plans"
,"housing","job","telephone","foreign_worker") #獲取所有名義變數 all_iv<-data.frame(VARS=factor_vars,IV=numeric(length(factor_vars)), STRENGTH=character(length(factor_vars)),stringsAsFactors = F) #初始化待輸出的資料框 for(factor_var in factor_vars) { all_iv[all_iv$VARS==factor_var,"IV"]<-InformationValue
::IV(X= data[,factor_var],Y=data$credit_risk) #計算每個指標的IV值 all_iv[all_iv$VARS==factor_var,"STRENGTH"]<-attr(InformationValue::IV(X= data[,factor_var],Y=data$credit_risk),"howgood") #提取每個IV指標的描述 } all_iv<-all_iv[order(-all_iv$IV),] #排序IV

由結果可知,可選擇的定性入模指標,如表3.12所示。
這裡寫圖片描述

綜上所述,模型開發中定量和定性的入模指標如表3.13所示。
這裡寫圖片描述

對入模的定量和定性指標,分別進行連續變數分段(對定量指標進行分段),以便於計算定量指標的WOE和對離散變數進行必要的降維。對連續變數的分段方法通常分為等距分段和最優分段兩種方法。等距分段是指將連續變數分為等距離的若干區間,然後在分別計算每個區間的WOE值。最優分段是指根據變數的分佈屬性,並結合該變數對違約狀態變數預測能力的變化,按照一定的規則將屬性接近的數值聚在一起,形成距離不相等的若干區間,最終得到對違約狀態變數預測能力最強的最優分段。