使用Pandas进行变量衍生

import pandas as pd
import numpy as np
dic={
   'delq1':[0,0,1],
'delq2':[1,1,2],
'delq3':[2,0,3],
'delq4':[0,1,4],
'delq5':[1,2,5],
'delq6':[1,3,0],
'delq7':[1,0,1],
'delq8':[0,0,2],
'delq9':[0,1,3],
'delq10':[0,2,0]}
df1=pd.DataFrame(data=dic,index=['cust1','cust2','cust3'])

  上图是一个记录客户近10期的逾期记录的数据框,基于逾期行为数据进行变量的衍生。比如cust1客户,最近1期状态为M0,最近2期状态为M1,还款历史字段应为“0001110210”。

1.计算近p期总逾期次数
方法一:

def month_count(df, p):
    auto_value=np.where(df>0,1,0).sum(axis=1)
    return auto_value
auto_value=month_count(df1,10)

方法二:

def delqcnt(x,term):
    result=0 
    j=term+1
    for i in range(1,j): 
        result=result+(1 if (x['delq'+str(i)]
  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值