[英]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.