我刚刚开始使用python进行编码,而我的一般编码技能相当生锈:(所以请耐心等待
它大约有300万行。年龄单位共有3种:Y,D,W(年),天和周。任何1岁以上的人的年龄单位均为Y,而我想要的第一个分组年龄小于2岁,因此我要测试的所有年龄单位均为Y ...
我想创建一个新列AgeRange并填充以下范围:
<2
2-18
18-35
35-65
65岁以上
所以我写了一个函数
def agerange(values):
for i in values:
if complete.Age_units == 'Y':
if complete.Age > 1 AND < 18 return '2-18'
elif complete.Age > 17 AND < 35 return '18-35'
elif complete.Age > 34 AND < 65 return '35-65'
elif complete.Age > 64 return '65+'
else return '< 2'
我以为如果整体传入数据框,我会得到所需的信息,然后可以创建需要以下内容的列:
agedetails['age_range'] = ageRange(agedetails)
但是,当我尝试运行第一个代码来创建所得到的功能时:
File "<ipython-input-124-cf39c7ce66d9>", line 4
if complete.Age > 1 AND complete.Age < 18 return '2-18'
^
SyntaxError: invalid syntax
显然,它不接受AND-但我想我在课堂上听说可以使用AND这样?我一定弄错了,但是这样做的正确方法是什么?
因此,在收到该错误后,我什至不确定传入数据帧的方法是否也会引发错误。我猜大概是。在这种情况下-我也将如何使它工作?
我想学习最好的方法,但是对我来说,最好的方法的一部分就是使它保持简单,即使这意味着要分几个步骤来做...
杨魅力
暮色呼如
相关分类