0
点赞
收藏
分享

微信扫一扫

pandas 处理函数

源码之路 2022-01-13 阅读 46

单列:

"""
    判断名企
"""
def get_c_isFamousCompany_clear(x):
    x = str(x)
    strlist = x.split(',')
    for  name in  strlist:
        for s in famousSet:
            if  x.find(s) != -1:
                return 1
    return 0

多列:计算年限

def get_c_workyear(x,y):
    x = str(x)
    y = str(y)
    xlist = x.split(',')
    ylist = y.split(',')
    if len(xlist) != len(ylist):
        return 0;
    days =0
    for i in range(0, len(xlist)):
        if ylist[i] =='2888-08-08':
            ylist[i]=datetime.now().strftime('%Y-%m-%d')
        days = days + (pd.Period(ylist[i], freq="D") - pd.Period(xlist[i], freq="D")).n
        

    days = (int)(days /365) +1
    return days

 df["isFamous"] =df["company"].fillna(-1).apply(lambda x: get_c_isFamousCompany_clear(x))
 df["workyear"] = df.apply(lambda row: get_c_workyearnew(row.c_work_startdate, row.c_work_enddate), axis=1)

举报

相关推荐

0 条评论