我有每个玩家行,每个结果行,每个试验行,类似数据:

    player  coin
0    Alice heads
1    Alice tails
2    Alice heads
3    Alice tails
4    Alice tails
5      Bob heads
6      Bob heads
7      Bob heads
8      Bob tails
9      Bob heads


我想要每名球员每列结果数数据:

    player heads tails
0    Alice     2     3
1      Bob     4     1


使用熊猫执行此转换的最简单方法是什么?

可以通过按(玩家,硬币)分组,获取每个组的大小,将正面和背面数据过滤到单独的数据框中,然后将这些数据框进行外部连接来实现。但这最终变得很冗长。

最佳答案

这是crosstab

pd.crosstab(df.player, df.coin)




coin    heads  tails
player
Alice       2      3
Bob         4      1

关于python - 将分组结果统计到 Pandas 的单独列中,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/58313613/

10-12 23:29