lambda匿名函数使用if条件语句必须使用if …else…结构。
data = pd.DataFrame({'A':[1,2,3,4],"B":[4,5,6,7],'C':[7,8,9,3]})
data['D']=data['C'].apply(lambda x: x+7 if x<5 else x)
data
结果是:
如果去掉else x,则会报错。
对比直接定义普通函数:
def f(x):
if x<5:
return x+7
data['E']=data['C'].apply(f)
data
结果是: