如何根据时间差为用户设置会话

2024-04-26 09:54:09 发布

您现在位置:Python中文网/ 问答频道 /正文

我有一个这样结构的数据帧(按用户id、事件时间排序):

用户id
事件时间(毫秒)
每个用户id的上一个事件和当前事件之间的时间差(秒)

例如
用户1 1550844324011-
用户1 1550844504351 180

用户2 1550807681932-
用户2 155080778002 98
用户2 155080980005 2020
用户2 1550819800005 10000

然后我要为新列中的每个用户设置会话id。接下来的逻辑是:如果事件之间的时间差超过900秒,那么我应该为用户设置新的会话id。所以结果应该是:

用户1 1550844324011-1
用户1 1550844504351 180 1

用户2 1550807681932-1
用户2 155080778002 98 1
用户2 155080980005 2020 2
用户2 1550819800005 10000 3

我怎样才能正确地做到这一点?请帮帮我。 谢谢


Tags: 数据用户id排序时间事件逻辑结构