单列:
""" 判断名企 """ 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)