如何找到今天和未来日期之间的天数?

时间:2019-07-12 17:08:50

标签: python python-3.x pandas

我在数据框中有一个名为“ MATURITY”的字段。一个示例日期如下所示:

2026-05-21

我正在尝试向数据框添加一个新字段,以查找每个到期日与今天之间的差异。我怎样才能做到这一点?我尝试了以下方法:

df['DaysToMaturity'] = pd.to_datetime((df['MATURITY'] - date.today()).days)

这给了我这个错误:

TypeError: unsupported operand type(s) for -: 'DatetimeIndex' and 'datetime.date'

我认为那应该很接近了,但是显然这里有些问题。有想法吗?

2 个答案:

答案 0 :(得分:5)

使用pandas.Timestamp

df['DaysToMaturity'] = (df['MATURITY'] - pd.Timestamp('now')).dt.days

答案 1 :(得分:3)

from datetime import date
f_date = date.today()
l_date = date(2026, 5, 21)
delta = l_date - f_date
print(delta.days)