Python 将年龄分类为另一列年龄组
我有这个数据集Python 将年龄分类为另一列年龄组,python,pandas,dataframe,dataset,Python,Pandas,Dataframe,Dataset,我有这个数据集 age 24 32 29 23 23 31 25 26 34 我想使用python进行分类,并将结果保存到一个新的列AGEGOUP中,以便 年龄介于; 23到26在年龄组列中返回1, 27-30返回年龄组列中的值2 和31-34在年龄组列中返回3,您可以使用 鉴于: >>> df age 0 24 1 32 2 29 3 23 4 23 5 31 6 25 7 26 8 34 解决方案: >>> d
age
24
32
29
23
23
31
25
26
34
我想使用python进行分类,并将结果保存到一个新的列AGEGOUP中,以便
年龄介于;
23到26在年龄组列中返回1,
27-30返回年龄组列中的值2
和31-34在年龄组列中返回3,您可以使用
鉴于:
>>> df
age
0 24
1 32
2 29
3 23
4 23
5 31
6 25
7 26
8 34
解决方案:
>>> df.assign(agegroup=pd.cut(df['age'], bins=[23, 27, 31, 35], right=False, labels=[1, 2, 3]))
age agegroup
0 24 1
1 32 3
2 29 2
3 23 1
4 23 1
5 31 3
6 25 1
7 26 1
8 34 3
你可以用
鉴于:
>>> df
age
0 24
1 32
2 29
3 23
4 23
5 31
6 25
7 26
8 34
解决方案:
>>> df.assign(agegroup=pd.cut(df['age'], bins=[23, 27, 31, 35], right=False, labels=[1, 2, 3]))
age agegroup
0 24 1
1 32 3
2 29 2
3 23 1
4 23 1
5 31 3
6 25 1
7 26 1
8 34 3
你也可以用字典来做这件事。键值对。键将是不同的年龄范围,特定键的值将是该特定年龄组的计数 groupDict={'23-26':0,'27-30':0,'31-34':0}
for i in ages:
if i>=23 and i<=26:
groupDict['23-26']+=1
elif i>=27 and i<=30:
groupDict['27-30']+=1
elif i>=31 and i<=34:
groupDict['27-30']+=1
你也可以用字典来做这件事。键值对。键将是不同的年龄范围,特定键的值将是该特定年龄组的计数 groupDict={'23-26':0,'27-30':0,'31-34':0}
for i in ages:
if i>=23 and i<=26:
groupDict['23-26']+=1
elif i>=27 and i<=30:
groupDict['27-30']+=1
elif i>=31 and i<=34:
groupDict['27-30']+=1
df.assignagegroup=df['agegroup']=@DavidErickson df.assignagegroup=.的值是多少。。。提供新的df,但df['agegroup']在原地变异原始df。@DavidErickson前者返回一个新的df并可以链接,后者在原地工作。谢谢!我也很快读到了:我将开始使用df.assign,df.assignagegroup=的值是多少。。。提供新的df,但df['agegroup']在原地变异原始df。@DavidErickson前者返回一个新的df并可以链接,后者在原地工作。谢谢!我也很快读到了:我将开始使用df.assign