<强> 更多大数据分析,建模等内容请关注公众号《bigdatamodeling》 强>
在对变量分箱后,需要计算变量的重要性,第四是评估变量区分度或重要性的统计量之一,python计算IV值的代码如下:
<代码> def CalcIV (Xvar Yvar): N_0=np.sum (Yvar==0) N_1=np.sum (Yvar==1) N_0_group=np.zeros (np.unique (Xvar) .shape) N_1_group=np.zeros (np.unique (Xvar) .shape) 因为我在范围(len (np.unique (Xvar))): N_0_group[我]=Yvar [(Xvar==np.unique (Xvar)[我]),(Yvar==0)] .count () N_1_group[我]=Yvar [(Xvar==np.unique (Xvar)[我]),(Yvar==1) .count () 4=np。sum ((N_0_group/N_0 - N_1_group/N_1) * np.log ((N_0_group/N_0)/(N_1_group/N_1))) 返回四世 def caliv_batch (df,千乏,Yvar): df_Xvar=df。下降([千乏,Yvar],轴=1) ivlist=[] df_Xvar.columns坳的: 4=CalcIV (df (col), df [Yvar]) ivlist.append (iv) 名称=列表(df_Xvar.columns) iv_df=pd。DataFrame ({“Var”:名字,“四”:ivlist},列=[' Var ', ' 4 ']) 返回iv_df 代码>
其中,df是分箱后的数据集,千乏是主键,Yvar是y变量(0是好,1是坏)。代码运行结果如下:
python计算IV值及使用