我有一个这样的熊猫数据框:
CustomerId Timestamp
0. a 01-09-2018 00:08:00
1. a 01-09-2018 00:09:00
2. b 01-09-2018 00:11:00
3. b 01-09-2018 00:15:00
我需要计算每个客户的连续时间戳之间以分钟为单位的差异,以便最终获得类似于以下内容的东西:
CustomerId Timestamp Difference
0. a 01-09-2018 00:08:00 -
1. a 01-09-2018 00:09:00 1
2. b 01-09-2018 00:11:00 -
3. b 01-09-2018 00:15:00 4
我一直在尝试一些循环,但似乎没有任何效果。如果有人可以帮助我,我将非常感激:)
答案 0 :(得分:3)
将groupby
与diff
一起使用
df.groupby('CustomerId').Timestamp.diff().dt.total_seconds()/60
Out[10]:
0.0 NaN
1.0 1.0
2.0 NaN
3.0 4.0
Name: Timestamp, dtype: float64
df['Different']=df.groupby('CustomerId').Timestamp.diff().dt.total_seconds()/60