Для анализа пользователя у меня есть база данных с событиями и отметкой времени для каждого.
Timestamp | user | event code
13:30:23 | user1 | event123
13:30:45 | user1 | event123
13:30:56 | user3 | event123
13:40:15 | user2 | event123
13:55:20 | user1 | event123
Теперь я хочу определить «сеансы» для каждого пользователя, пометив события с помощью идентификатора сеанса.
Каждый сеанс должен идентифицироваться группой событий для пользователя, между которыми нет промежутка в X секунд (или минут). Это означает, что X второй промежуток после события закрывает сессию.
Идентификаторы сеанса не обязательно должны начинаться с 0 для каждого пользователя, но позже используются только для каждого пользователя. Здесь установлено X = 5 минут.
Timestamp | user | event code | session_id
13:30:23 | user1 | event123 | 1
13:30:45 | user1 | event123 | 1
13:30:56 | user3 | event123 | 2
13:40:15 | user2 | event123 | 3
13:55:20 | user1 | event123 | 4
Возможно ли это с кадрами данных?