我有一个数据框,提供它的片段:
Year Result Count
2000 lost 5
2000 won 16
2001 lost 12
2001 won 22
2002 lost 15
2002 won 15
2003 lost 12
2003 tied 1
2003 won 13
2004 lost 8
2004 won 20
我想创建一年的明智赢/输比率列表。我知道如何使用字典和循环来做到这一点。 但是最好的方法是什么呢。
答案 0 :(得分:2)
以下是两个选项:
选项1 :pivot
+ division
,使用pivot
为won
,tie
和{{创建单独的列1}}然后将lost
列除以won
列:
lost
选项2 :df.pivot("Year", "Result", "Count").pipe(lambda x: x.won/x.lost)
#Year
#2000 3.200000
#2001 1.833333
#2002 1.000000
#2003 1.083333
#2004 2.500000
#dtype: float64
+ groupby
,按agg
分组数据框,每年Year
的{{1}}计数值1}} divide
:
won