Python 因此,我有一个年龄列,年龄范围从10-70岁不等,我需要创建新的年龄组列,如18-25、25-40、40-55和55+;
我创建了这样一个函数Python 因此,我有一个年龄列,年龄范围从10-70岁不等,我需要创建新的年龄组列,如18-25、25-40、40-55和55+;,python,pandas,dataframe,function,Python,Pandas,Dataframe,Function,我创建了这样一个函数 def age_group(age): if age >= 18 & age <= 25: return '18-25' elif age > 25 & age <= 40: return '25-40' elif age > 40 & age <= 55: return '40-55 ' else: return '
def age_group(age):
if age >= 18 & age <= 25:
return '18-25'
elif age > 25 & age <= 40:
return '25-40'
elif age > 40 & age <= 55:
return '40-55 '
else:
return '55+'
age_group(20)
def age_组(年龄):
如果年龄>=18岁&25岁&40岁&age你只需要使用和而不是&
:
def age_group(age):
if age >= 18 and age <= 25:
return '18-25'
elif age > 25 and age <= 40:
return '25-40'
elif age > 40 and age <= 55:
return '40-55'
else:
return '55+'
def age_组(年龄):
如果年龄>=18岁和25岁以及40岁和40岁使用pd.cut
:
survey['age_group'] = pd.cut(survey['age'],
bins=[18,25,40,55, 70],
labels=['18-25', '25-40', '40-55', '55+',
include_lowest=True)
age
在本例中是一个int
,因此我相信您想要的是和,而不是&
。您将和拼错为&
。
survey['age_group'] = pd.cut(survey['age'],
bins=[18,25,40,55, 70],
labels=['18-25', '25-40', '40-55', '55+',
include_lowest=True)