【发布时间】:2018-04-29 10:55:25
【问题描述】:
我有一个这样的数据框
>>> df = pd.DataFrame({'user_id':['a','a','s','s','s'],
'session':[4,5,4,5,5],
'revenue':[-1,0,1,2,1]})
>>> df
revenue session user_id
0 -1 4 a
1 0 5 a
2 1 4 s
3 2 5 s
4 1 5 s
而session和receiver的每一个值都代表一种类型,我想统计每种类型的个数,比如user_id=a的revenue=-1和session=4的个数是1。
我发现groupby()之后的简单调用count()函数无法输出我想要的结果。
>>> df.groupby('user_id').count()
revenue session
user_id
a 2 2
s 3 3
我该怎么做?
【问题讨论】:
-
从 pandas 1.1 这可以通过
df.value_counts实现,让您避免分组步骤。
标签: python pandas pandas-groupby