我有一个数据框,在其中,我正在创建一个布尔测试,然后是一个 if 语句/函数,然后是一个 lambda 函数来利用布尔值和一个函数来写入另一列,然后删除布尔测试列。有没有办法至少将布尔测试与 if 语句/函数结合起来?必须有一种更有效的方法来做到这一点。
代码:
df['note1'] = df['child'].isnull()
df['note2'] = df['parent'].isnull()
def b(row):
if row['note1'] == True:
return 'check1'
elif row['note2'] == True:
return 'check2'
else:
return
df['check status'] = df.apply(lambda row: b(row), axis=1)
del df['note1']
del df['note2']
上面的代码达到了它的目的并实现了我的目标,但我想看看是否有一种方法可以更有效地编写它,并且至少将布尔测试与函数结合起来。
谢谢,
约翰