Python 熊猫:在4天内找到具有2次交互的用户
我有一个熊猫数据帧,Python 熊猫:在4天内找到具有2次交互的用户,python,pandas,Python,Pandas,我有一个熊猫数据帧,df,包含以下列: 用户id、访问日期 我要查找在任何4天窗口中至少访问过两次的所有用户ids。如果我有: 用户id、访问日期 1,1/4/15 1,1/6/15 2,1/4/15 2,1/12/15 2,1/23/15 然后我的函数将返回[1] 我可以浏览每一行,但我想知道是否有更好的方法来利用熊猫。也许是关于: df.groupby('user_id')… 谢谢 您可以在filter #df.date_of_visit=pd.to_datetime(df.date_of_
df
,包含以下列:
用户id、访问日期
我要查找在任何4天窗口中至少访问过两次的所有用户id
s。如果我有:
用户id、访问日期
1,1/4/15
1,1/6/15
2,1/4/15
2,1/12/15
2,1/23/15
然后我的函数将返回[1]
我可以浏览每一行,但我想知道是否有更好的方法来利用熊猫。也许是关于:
df.groupby('user_id')…
谢谢 您可以在
filter
#df.date_of_visit=pd.to_datetime(df.date_of_visit)
df.groupby('user_id').filter(lambda x : x.set_index('date_of_visit').rolling('4d').count().gt(1).any()).user_id.unique()
Out[525]: array([1], dtype=int64)
你能举个例子吗?谢谢你的帮助。我使用了您的方法,但get
TypeError:filter函数返回了一个序列,但需要一个标量bool
。如果有帮助,很乐意提供一个可复制的例子