问题描述
在训练二进制分类器之前,我已经使用Pandas进行数据处理。我找不到的一件事是一个函数,该函数告诉我给定某个功能的值,假设年龄(例如60岁的人)中此人的百分比分为1或0(在二进制数据列)。这是针对“年龄”列中所有不同年龄段的。
一个简单的例子来说明我的想法。我有以下DataFrame:
import pandas as pd
data = pd.DataFrame({'Age': [23,24,23,25,20],'label': [0,1,0]})
并且我想要一个函数,该函数可以为我提供被标记为0或1的各个年龄段的人口百分比。
Age Percentage
0 20 0.0
1 23 0.5
2 24 1.0
3 25 0.0
已经有实现该功能的功能了吗?因为我找不到一个,所以我发现二进制分类问题中的数据分析非常普遍。
谢谢!
解决方法
只需按以下方式进行分组即可
:>>> data.groupby('Age').mean()
label
Age
20 0.0
23 0.5
24 1.0
25 0.0
重置索引以准确获取发布预期输出的方式
>>> data.groupby('Age').mean().reset_index()
Age label
0 20 0.0
1 23 0.5
2 24 1.0
3 25 0.0