【发布时间】:2016-12-20 08:37:50
【问题描述】:
我有以下数据框:
data = pd.DataFrame({'user_id' : ['a1', 'a1', 'a1', 'a2','a2','a2','a3','a3','a3'], 'product_id' : ['p1','p1','p2','p1','p1','p1','p2','p2','p3']})
product_id user_id
p1 a1
p1 a1
p2 a1
p1 a2
p1 a2
p1 a2
p2 a3
p2 a3
p3 a3
在实际情况下可能还有其他一些列,但我需要做的是按 product_id 和 user_id 列按数据框分组,并计算每个组合的数量并将其作为新列添加到新的 dat 框架中
输出应该是这样的:
user_id product_id count
a1 p1 2
a1 p2 1
a2 p1 3
a3 p2 2
a3 p3 1
我已经尝试了以下代码:
grouped=data.groupby(['user_id','product_id']).count()
但结果是:
user_id product_id
a1 p1
p2
a2 p1
a3 p2
p3
实际上对我来说最重要的是有一个包含出现次数的列名计数,我需要稍后使用该列。
【问题讨论】:
标签: python pandas dataframe data-analysis