首页 > 解决方案 > 用熊猫计算比率

问题描述

我有一个这样的数据框:

id-customer      status     
1                 Won
1                 Won
2                 Won
2                 Won
3                 Not won

我想添加一个新列,它是一个计算为:“赢”的数量除以按 id-customer 分组的总数的新列。

所以我应该有一个这样的数据框:

id-customer      status           winrate
1                 Won             1 (2/2)
1                 Won             1  (2/2)
2                 Won             1 (2/2)
2                 Won             1   (2/2)
3                 Not won         0  (0/1)

我尝试这样:

df_winrate=df.groupby(['id-customer'],as_index=False)['status'].sum()

但它没有用

你能帮我计算一下胜率栏吗?

谢谢

标签: pythonpandasdataframe

解决方案


您应该尝试按状态分组,然后得到组 Won 和 Not Won 最后您可以创建一个数学方程式来拉动比率。

data = df.groupby(['status'])
won = data.get_group('Won')
not_won = dic4.get_group('Not Won')

小心你的索引..似乎你有重复


推荐阅读