使用'groupby.count'和agg

时间:2017-04-07 17:27:38

标签: pandas group-by aggregate

df.head

                Populous        Continents
Australia   2.331602e+07        Australia
Brazil      2.059153e+08        South America
Canada      3.523986e+07        North America
China      1.367645e+09         Asia
France     6.383735e+07         Europe

以上是我的数据帧的前5个条目。 我想按大陆对它们进行分组,然后我想进行一些统计分析。我想创建一个新的数据框,其中包含每个组人口众多的Avg,Sum,STD以及每个组中count个国家/地区的列。

new_df =df.groupby('Continents')['Populous'].agg({ 'Avg': np.average, 'Sum':np.sum, 'STD': np.std}),负责三列,但我不知道如何获得count。我尝试在'Size': count方法中加入agg,但却导致错误。

谢谢。

2 个答案:

答案 0 :(得分:2)

你可能也觉得这很有用:

{{1}}

如果您想要更多统计数据,请参阅this answer

答案 1 :(得分:1)

您可以使用'Size': len'Size': 'count'来实现此目的。但是,正如@DSM指出的那样,len确实计算了缺失值,而'count'没有计算。