请帮我找出一次会话中某些事件之间的平均时间。
例如,有一个数据框:
data = {
'id': [1, 1, 1, 2, 2, 2, 3, 3, 3, 4, 4, 4, 5],
'event': ['login', 'news', 'comment', 'login', 'news', 'advt', 'login', 'like', 'comment', 'login', 'news', 'comment', 'login'],
'data': ['2023-03-15 10:00:00', '2023-03-15 10:05:00', '2023-03-15 10:10:00', '2023-03-15 10:15:00',
'2023-03-16 11:00:01', '2023-03-16 11:05:06', '2023-03-16 11:10:10',
'2023-03-17 12:00:02', '2023-03-17 12:05:00', '2023-03-17 12:10:30',
'2023-03-18 13:00:05', '2023-03-18 13:05:11', '2023-03-18 13:10:00', '2023-03-18 13:10:00']}
id 是会话 ID。如何找到每个会话 ID 登录之间以及新闻或广告事件之间的平均时间?步骤顺序严格,第一步是登录,第二步是选择事件。有时在会话中似乎登录较晚。另外,如何优化代码以便尽快处理大型数据帧?
代码中的注释
好吧,我将向您展示一个大致的行动方案,然后根据您的任务自行调整:
结论: