Pandas 基于日期列筛选数据框

Pandas 基于日期列筛选数据框,pandas,datetime,pandas-groupby,Pandas,Datetime,Pandas Groupby,我有一个熊猫数据框,如下所示 Unit_ID Added_Date Status 105 2019-10-02 07:18:18 Rented 106 2020-15-01 07:18:17 Rented 105 2019-10-02 07:18:19 Rented 108 2020-15-01 07:18:18

我有一个熊猫数据框,如下所示

Unit_ID    Added_Date                   Status         
105        2019-10-02 07:18:18          Rented
106        2020-15-01 07:18:17          Rented
105        2019-10-02 07:18:19          Rented
108        2020-15-01 07:18:18          Vacant
根据以上内容,我想了解在过去10天内根据日期列添加的单位ID

预期产出:

Unit_ID    Added_Date                   Status         
106        2020-15-01 07:18:17          Rented
108        2020-15-01 07:18:18          Vacant
以下是一种方法:

today = pd.to_datetime('today')
n = 10 # last n days

filter_criteria = df['Added_Date'].sub(today).abs().apply(lambda x: x.days <= n)

df.loc[filter_criteria]

     Unit_ID Added_Date           Status
106      106 2020-01-15 07:18:17  Rented
108      108 2020-01-15 07:18:18  Vacant
today=pd.to\u datetime('today'))
n=10#最后n天

filter_criteria=df['Added_Date'].sub(today).abs().apply(lambda x:x.days您还可以使用
.dt.days
访问器并与10:



这里有另一种使用
pd.DateOffset

from datetime import datetime
df.loc[df['Added_Date'] >= (datetime.today() - pd.DateOffset(days=10))]

   Unit_ID          Added_Date  Status
1      106 2020-01-15 07:18:17  Rented
3      108 2020-01-15 07:18:18  Vacant
from datetime import datetime
df.loc[df['Added_Date'] >= (datetime.today() - pd.DateOffset(days=10))]
   Unit_ID          Added_Date  Status
1      106 2020-01-15 07:18:17  Rented
3      108 2020-01-15 07:18:18  Vacant