如何从datafram中找到今天的日期和一列日期之间的差异

2024-04-27 03:13:56 发布

您现在位置:Python中文网/ 问答频道 /正文

我试图根据duedates(我的dataframe中的一列)和今天的日期之间的差异来子集一个dataframe

我首先使用today = datetime.now()设置今天的日期 我想找到从今天起不到3天的duedates记录。在

以下是我的尝试:

DueIn3Days= data.loc[(["Deadline"]-today).days<=3]

这将返回错误:"unsupported operand type(s) for -: 'list' and 'datetime.datetime'"

DueIn3Days= data[("lDeadline"-today).days<=3]

这将返回错误:'Series' object has no attribute 'days'


Tags: dataframedatatodaydatetime错误记录差异days
1条回答
网友
1楼 · 发布于 2024-04-27 03:13:56

您可能需要使用dt time accessor函数

import pandas as pd
rng = pd.date_range('3/28/2017', periods=12, freq='D')
df = pd.DataFrame(rng, columns = ['Deadline'])
print df

timedelta = (df["Deadline"]-pd.datetime.now().date()).dt.days
DueIn3Days  = df[(timedelta <=3) & (timedelta>0)]
print DueIn3Days

结果

^{pr2}$

以及

    Deadline
7 2017-04-04
8 2017-04-05
9 2017-04-06

相关问题 更多 >