我有一个数据框,只想计算每组中元素的数量。我知道,我可以使用 groupby().count() 来获取所有列的所有计数,但这对我来说太多了,我只想要每个组中的元素数。我该怎么做?
例子如下:
mydf = pd.DataFrame({"fruit":["apple","banana","apple"],"weight":[7,8,3],"price":[4,5,6]})
mydf
>> fruit price weight
>> 0 apple 4 7
>> 1 banana 5 8
>> 2 apple 6 3
如果我使用 groupby("fruit").mean(),我将获得每一列的值。
mydf.groupby("fruit").mean()
>> price weight
>> fruit
>> apple 2 2
>> banana 1 1
但我期望的输出是:
>> number_of_fruit
>> fruit
>> apple 2
>> banana 1
我该怎么做?
最佳答案
你想要size
来计算每个水果的数量:
In [102]:
mydf.groupby('fruit').size()
Out[102]:
fruit
apple 2
banana 1
dtype: int64
关于python - 如何用pandas统计组元素的个数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38187777/