我正在尝试定义在不同的移动使用会话中使用了哪些应用程序。基本上,会话是由 在很短的时间内(又名。会话增量)。换言之,如果在前一个5分钟内没有任何互动发生 交互,则用户的会话被视为关闭。下一个 互动被认为是一个单独的会议。我想知道数据集中有多少个移动会话。另外,我想知道在每一次会议中都推出了哪些应用程序。 数据框中的所有行都有时间戳。 以下是来自数据集的示例:
timestamp App
6784 2018-04-08 14:31:29.209 Google
6785 2018-04-08 14:58:42.875 Google
6786 2018-04-08 18:18:04.757 Chrome
6787 2018-04-08 21:08:41.368 Google
6788 2018-04-11 10:53:10.744 Google
6789 2018-04-14 19:54:37.441 Google
6790 2018-04-14 19:54:59.833 Google
6791 2018-04-14 19:55:10.844 YouTube
6792 2018-04-14 19:55:34.486 Google
6793 2018-04-14 20:23:00.315 Google
6794 2018-04-15 08:23:44.873 Google
6795 2018-04-15 08:24:07.257 Google
6796 2018-04-16 16:42:35.538 Google
6797 2018-04-16 16:42:48.351 Google
6798 2018-04-17 08:10:54.734 Google
6799 2018-04-17 08:13:28.855 Google
6800 2018-04-17 08:16:49.408 Google
6801 2018-04-17 08:18:55.049 Google
6802 2018-04-17 08:21:04.201 Google
6803 2018-04-17 08:26:14.254 Google
这是期望的输出:
^{pr2}$
可能还有比这更有效的方法,但您可以得到如下值:
(在你有了SessionID之后)
d
^{pr2}$你可以得到的总和是:
^{3}$我想你想要
.shift
+.cumsum()
+1
是因为第一行总是NaT
,对于比较,它的计算结果是False
,否则它总是从0开始{如果您还有
^{pr2}$UserID
,那么您就可以实现这样的逻辑:当时间大于5分钟或userID
发生变化时,您可以在其中增加ID。通过以下方式实现:退货:
^{3}$相关问题 更多 >
编程相关推荐