【发布时间】:2018-09-10 02:31:41
【问题描述】:
我有这个数据框:
dic = {'users' : ['A','A','B','A','A','B','A','A','A','A','A','B','A'],
'product' : [1,1,2,2,1,2,1,2,1,1,2,1,1],
'action' : ['see', 'see', 'see', 'see', 'buy', 'buy', 'see', 'see', 'see', 'see', 'buy', 'buy', 'buy']
}
df = pd.DataFrame(dic, columns=dic.keys())
df
users product action
0 A 1 see
1 A 1 see
2 B 2 see
3 A 2 see
4 A 1 buy
5 B 2 buy
6 A 1 see
7 A 2 see
8 A 1 see
9 A 1 see
10 A 2 buy
11 B 1 buy
12 A 1 buy
我需要一个列来计算每个用户在购买产品之前看到了多少次。
结果应该是这样的:
dic = {'users' : ['A','A','B','A','A','B','A','A','A','A','A','B','A'],
'product' : [1,1,2,2,1,2,1,2,1,1,2,1,1],
'action' : ['see', 'see', 'see', 'see', 'buy', 'buy', 'see', 'see', 'see', 'see', 'buy', 'buy', 'buy'],
'see_before_buy' : [1,2,1,1,2,1,1,2,2,3,2,0,3]
}
users product action see_before_buy
0 A 1 see 1
1 A 1 see 2
2 B 2 see 1
3 A 2 see 1
4 A 1 buy 2
5 B 2 buy 1
6 A 1 see 1
7 A 2 see 2
8 A 1 see 2
9 A 1 see 3
10 A 2 buy 2
11 B 1 buy 0
12 A 1 buy 3
有人可以帮我吗?
【问题讨论】:
标签: python pandas group-by pandas-groupby cumsum