Python 大熊猫:统计4天内2次访问的次数

Python 大熊猫:统计4天内2次访问的次数,python,pandas,Python,Pandas,我有一个熊猫数据帧,df,看起来像这样: user_id, date_of_visit 1, 1/5/12 1, 1/6/12 2, 1/6/12 2, 1/11/12 2, 1/27/12 我正在尝试查找user\u ids,其中用户在4天窗口内的两个不同日期访问过。因此,上面的正确输出应该是[1] 从一个相关问题来看,我有: df.groupby('user_id').filter(lambda x : x.set_in

我有一个熊猫数据帧,
df
,看起来像这样:

user_id, date_of_visit
1,        1/5/12
1,        1/6/12
2,        1/6/12
2,        1/11/12
2,        1/27/12
我正在尝试查找
user\u id
s,其中用户在4天窗口内的两个不同日期访问过。因此,上面的正确输出应该是
[1]

从一个相关问题来看,我有:

df.groupby('user_id').filter(lambda x : x.set_index('date_of_visit').rolling('4d').count().gt(1).any()).user_id.unique()
上述代码的问题在于,它没有解决用户在同一天访问多次的可能性。如果我有:

user_id, date_of_visit
1,        1/5/12
1,        1/5/12
上面的代码将输出
[1]
,因为用户1在四天的窗口中访问了两次。但是,我只希望在4天窗口内的两天内访问过的用户。因此,输出中不应包括用户1

知道如何修改以强制执行此约束吗


谢谢

一种可能性是在运行代码之前,根据
用户id
访问日期
删除重复项:

df.drop_duplicates(['user_id', 'date_of_visit']).groupby('user_id').filter(lambda x : x.set_index('date_of_visit').rolling('4d').count().gt(1).any()).user_id.unique()