Reputation: 20302
I have a field named 'MATURITY' in a dataframe. One sample date looks like this:
2026-05-21
I'm trying to add a new field to the dataframe and find the difference between each maturity date and today. How can I do that? I tried the following:
df['DaysToMaturity'] = pd.to_datetime((df['MATURITY'] - date.today()).days)
That gives me this error:
TypeError: unsupported operand type(s) for -: 'DatetimeIndex' and 'datetime.date'
That should be pretty close, I believe, but obviously something is off here. Thoughts?
Upvotes: 3
Views: 985
Reputation: 777
try this:
from datetime import date
f_date = date.today()
l_date = date(2026, 5, 21)
delta = l_date - f_date
print(delta.days)
Upvotes: 2
Reputation: 294248
Use pandas.Timestamp
df['DaysToMaturity'] = (df['MATURITY'] - pd.Timestamp('now')).dt.days
Upvotes: 8