根据条件 datetime64 合并 DataFrames
Merge DataFrames based on conditioning datetime64
我正在尝试在日期的窗帘条件下合并 2 个 Df。
df 1:
df2:
假设今天是 2015 年 1 月 12 日,我要做的是将 first_activity 日期早于今天 10 天的每个 clienthostid 从 df2 中排除,因此在这里的例子如果 df2 我会留下:
我试图通过首先合并 2 df:
temp = pd.merge(df1, df2, on='clienthostid', how='inner')
然后根据条件尝试删除:
temp = temp[temp.First_activity + 10 < today]
我收到了这个错误:
TypeError: cannot operate on a series without a rhs of a series/ndarray of type datetime64[ns] or a timedelta
First_activity 今天是 datetime64...
我对 sql、python 和 pandas 都不熟悉(我猜是总和 :)),
但是我有一个任务要实现这个,如果这个问题很愚蠢,我很抱歉。
我认为你需要转换 to_timedelta
int value or use offsets:
today = pd.datetime.today().date()
temp = temp[temp.First_activity < today - pd.to_timedelta(10, unit='d')]
或者:
temp = temp[temp.First_activity < today - pd.offsets.Day(10)]
我正在尝试在日期的窗帘条件下合并 2 个 Df。
df 1:
df2:
假设今天是 2015 年 1 月 12 日,我要做的是将 first_activity 日期早于今天 10 天的每个 clienthostid 从 df2 中排除,因此在这里的例子如果 df2 我会留下:
我试图通过首先合并 2 df:
temp = pd.merge(df1, df2, on='clienthostid', how='inner')
然后根据条件尝试删除:
temp = temp[temp.First_activity + 10 < today]
我收到了这个错误:
TypeError: cannot operate on a series without a rhs of a series/ndarray of type datetime64[ns] or a timedelta
First_activity 今天是 datetime64...
我对 sql、python 和 pandas 都不熟悉(我猜是总和 :)), 但是我有一个任务要实现这个,如果这个问题很愚蠢,我很抱歉。
我认为你需要转换 to_timedelta
int value or use offsets:
today = pd.datetime.today().date()
temp = temp[temp.First_activity < today - pd.to_timedelta(10, unit='d')]
或者:
temp = temp[temp.First_activity < today - pd.offsets.Day(10)]