pandas:使用聚合时计算非重复元素

时间:2017-02-07 01:13:30

标签: python-3.x pandas group-by aggregate aggregate-functions

我有以下代码:

data_agg_df = data_df.groupby("team", as_index=False).player.agg({"player_set": lambda x: set(list(x)), "player_count": "count"})

data_agg_df

然后我注意到player_count的输出是list(x)的值,而不是set(list(x))。我如何计算未复制的玩家,即set(list(x))?非常感谢!

1 个答案:

答案 0 :(得分:1)

如果我理解正确,您可以使用nunique来计算独特玩家的数量:

dialog.show();

如果您想要一系列独特的玩家,请以与上述相同的方式使用unique代替data_agg_df = data_df.groupby("team", as_index=False).player.agg({"player_set": "nunique", "player_count": "count"})