计算python中新记录的滚动计数

Posted

技术标签:

【中文标题】计算python中新记录的滚动计数【英文标题】:calculate rolling count of new records in python 【发布时间】:2021-11-27 09:02:48 【问题描述】:

我不确定这是否可能,但让我暴露问题

示例数据:

        date  users
     0  2012-09-29  A
     1  2012-09-29  B      
     2  2012-09-30  A     
     3  2012-09-30  C     
     4  2012-10-01  B      
     5  2012-10-01  C

我想计算每天的新用户数量,但只是与前一天相比。 这意味着例如访问 29/9 而不是 30/9 的用户 B 将被视为 1/10 的新用户

在这种情况下,结果看起来像这样

        date  users
     1  2012-09-30  1         
     2  2012-10-01  1

非常感谢

【问题讨论】:

更具体地说明要尝试的内容、遇到的问题、拥有的数据(列表、csv、...)! 每天创建一组用户。然后计算不属于前一天集合的用户。最初的前一天集合当然是空的。如果您不是每天都有用户,则需要从列表中检测缺失的天数 【参考方案1】:

您可以重复set 并跟踪大小:

prev_users = set("AB")
for crnt_users in whatever:
    value = len(set(crnt_users) - prev_users)  # this is your value
    prev_users = crnt_users

【讨论】:

以上是关于计算python中新记录的滚动计数的主要内容,如果未能解决你的问题,请参考以下文章

在Linearlayout中新增ScrollView支持滚动

在Azure中新建Linux

Day029 JDK8中新日期和时间API

使用循环计算数组中新推送的数据

为 hive 表中新添加的记录更新唯一 id 列

Win10系统中新增的快捷键,做个记录