gpt4 book ai didi

python - 使用 GroupBy 计算 Pandas 数据框中的自定义汇率函数

转载 作者:行者123 更新时间:2023-12-01 06:23:54 24 4
gpt4 key购买 nike

我有一个 Pandas 数据框,其中 COLOR 列包含分类数据和 NaN 值 -

  ZIP    YEAR    COLOR
11111 1990 0
11111 1990 1
11111 1990 NaN
11111 1990 1
22222 2000 0
22222 2000 NaN
22222 2000 NaN
22222 2000 1

如何按 ZIPYEAR 列聚合数据 (df.groupby(['ZIP', 'YEAR'])) 并将分类数据计算为速率,以便结果类似于下面的数据框?该比率应计算为零的数量除以每个聚合的记录总数。例如,[11111, 1990]df.groupby(['ZIP', 'YEAR']) 的比率是通过将零的总数相加来计算的(1) 将该数字除以 0 和 1 的总数 (3),结果 1/3 为 0.33。

  ZIP    YEAR    COLOR
11111 1990 0.33
22222 2000 0.50

最佳答案

首先,我们将您的 0 转换为 1 以及其他方式。

然后我们使用GroupBy.sumGroupBy.count:

df['COLOR'] = df['COLOR'].sub(1).abs()

grps = df.groupby(['ZIP', 'YEAR'])
dfn = grps.sum().div(grps.count()).reset_index()

ZIP YEAR COLOR
0 11111 1990 0.333333
1 22222 2000 0.500000

关于python - 使用 GroupBy 计算 Pandas 数据框中的自定义汇率函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60254374/

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