我被这个问题困扰了很长时间,需要帮助。你知道吗
我在表T1中有400万行的数据。你知道吗
我需要在python中根据以下excel公式计算:
=COUNTIFS(A:A,A2,B:B,"<"&B2,C:C,"<"&C2)
Table Name -T1
User Id Start time End time Count
A1 10-01-2018 10:15 10-01-2018 12:15 0
A2 10-01-2018 10:45 10-01-2018 11:15 0
A1 10-01-2018 10:25 10-01-2018 13:30 1
A2 10-01-2018 11:00 10-01-2018 11:40 1
最终结果是Count列
我试过下面的方法,在这两种情况下,我得到一个内存错误。你知道吗
有什么方法可以做到这一点:
pysqldf("SELECT T1.,count() FROM T1 a left join T1 b on a.user_id=b.user_id and a.start_time>b.start_time and a.end_time>b.end_time group by 1,2,3")
合并然后过滤(python不允许在合并中使用非相等联接)
您可以使用pandas实现这一点
我在下面的数据上运行了这个
这张照片:
如果您想在python
dict
中重新使用它,只需使用:编辑
我的电脑上没有excel,而且我很难破译excel公式。如果上面的代码除了对用户进行约束之外,还做了您想做的事情,那么就把它放在我定义
df1
和df2
的地方。这限制了特定用户。你知道吗然后要获得这些过滤器之后的所有过滤器的计数:
相关问题 更多 >
编程相关推荐