PART 3.2 风控建模卡方分箱前期数据处理篇

本文聚焦于风控建模中卡方分箱的前期数据处理,强调建模服务于业务的重要性。内容包括:单一变量比重检测、缺失值处理(超50%缺失值的变量弃用,填充为-1)、变量分类与类型检测,以及后续的单调性检测和Bad_Rate检测,旨在确保评分卡的灵魂——业务关联性。

最重要的事情开始都会讲:建模是始终服务于业务的,没有业务的评分卡就没有灵魂

  • 单一变量比重检测 通常是设置比例的
#drop_list不满足条件列表
drop_list=[]
#对变量单一值进行检测,比例大于等于0.95,放入不满足条件列表,最后扔掉
for col in adata.columns:
    percent = adata[col].value_counts().max()/float(len(adata))
    if percent>=0.95:
        print( ("The {} is not useful, please delete".format(col)))
        drop_list.append(col)
adata.drop(drop_list,axis =1,inplace=True)  
  • 缺失值检测
    一般我默认如果缺失值超过50%,该变量弃用
#查看缺失值比例
check_null = adata.isnull().sum(axis=0).sort_values(ascending=False)/float(len(adata))

#设置非缺失值比例
thresh_count=0.5
#如果非缺失值大于0.5,则保留,否则,该比例按量其中
#需要注意的是,这是指非缺失值,如果非缺失值thresh_count 为 0.6,则如果非缺失(0.6)也就是缺失小于0.4,才会保留
adata = adata.dropna(thresh=thresh_count, axis=1)
  • 缺失值填充
    一般风控建模的时候都会将缺失值填充为 -1,单独一箱,不参与分组和单调性检测
def MakeupMissing(x):
    if np.isnan(x):
      
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值