gpt4 book ai didi

Pandas :计算每个类的列百分比

转载 作者:行者123 更新时间:2023-12-04 02:54:41 24 4
gpt4 key购买 nike

我有一个这样的数据框:

   Class   Boolean  Sum
0 1 0 10
1 1 1 20
2 2 0 15
3 2 1 25
4 3 0 52
5 3 1 48

我想计算每个类的 0/1 的百分比,因此例如输出可能是:

   Class   Boolean  Sum  %
0 1 0 10 0.333
1 1 1 20 0.666
2 2 0 15 0.375
3 2 1 25 0.625
4 3 0 52 0.520
5 3 1 48 0.480

最佳答案

Sum 列除以 GroupBy.transform对于与由聚合值填充的原始 DataFrame 长度相同的返回系列:

df['%'] = df['Sum'].div(df.groupby('Class')['Sum'].transform('sum'))
print (df)
Class Boolean Sum %
0 1 0 10 0.333333
1 1 1 20 0.666667
2 2 0 15 0.375000
3 2 1 25 0.625000
4 3 0 52 0.520000
5 3 1 48 0.480000

详细信息:

print (df.groupby('Class')['Sum'].transform('sum'))
0 30
1 30
2 40
3 40
4 100
5 100
Name: Sum, dtype: int64

关于 Pandas :计算每个类的列百分比,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53578019/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com