Pandas 用于二进制分类
Pandas for binary classification
在训练二元分类器之前,我已经使用 Pandas 进行数据处理。我找不到的一件事是一个函数,它告诉我给定某个特征的值,比如说年龄(例如 60 岁的人),这个人的百分比被归类为 1 或 0(在二进制数据列)。这适用于年龄列中的所有不同年龄。
一个简单的例子来说明我的想法。我有以下数据框:
import pandas as pd
data = pd.DataFrame({'Age': [23, 24, 23 ,25 ,24 ,24 ,20], 'label': [0, 1, 1, 0, 1, 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
在训练二元分类器之前,我已经使用 Pandas 进行数据处理。我找不到的一件事是一个函数,它告诉我给定某个特征的值,比如说年龄(例如 60 岁的人),这个人的百分比被归类为 1 或 0(在二进制数据列)。这适用于年龄列中的所有不同年龄。
一个简单的例子来说明我的想法。我有以下数据框:
import pandas as pd
data = pd.DataFrame({'Age': [23, 24, 23 ,25 ,24 ,24 ,20], 'label': [0, 1, 1, 0, 1, 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