繁体   English   中英

在给定日期范围的情况下过滤 dataframe 记录。 Python

[英]Filtering dataframe records given a date range. Python

我的 df 字段是“用户 ID” (字符串)、 “上次登录” (%Y-%m-%d %H:%M:%S)。 我想知道过去 3 个月未登录的用户 ID “上次登录”字段包含 12 个月的登录历史记录,但只有每个用户的最后一次登录。 我需要保留用户 ID字段,以便与 scope 中的用户 ID列表进行比较以进行分析。

我已经尝试了一些使用日期时间的代码变体,但正在努力获得结果。

获取今天日期和上次登录之间的差异,然后在 dataframe 上应用掩码以获得最终结果。

import datetime as dt

current_date = dt.datetime.today()
df['Last Login Days'] = abs(df['Last Login'] - current_date)
absent_users_df = df[df['Last Login Days'] > 90]

import time
import pandas as pd
import numpy as np

now = pd.to_datetime(time.ctime())
idx = (now - df['Last Login']) / np.timedelta64(1, 'M') <= 3
df2 = df[idx]

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM