我正在学习 Pandas,我偶然发现了一个练习,该练习希望我在酒精消费者数据集中创建一个新列(称为合法饮酒者)并用值 True / False 填充它:如果消费者年龄超过 17 岁,则为 True,False如果不。
我无法弄清楚为什么一个版本的代码有效,而另一个版本会引发错误。请问你能帮帮我吗?:)
# Works just fine:
def majority(x):
if x > 17:
return True
else:
return False
df["legal_drinker"] = df["age"].apply(majority) # new col created
# Doesn't work:
def majority(x):
if x["age"] > 17:
return True
else:
return False
df["legal_drinker"] = df.apply(majority)