AttributeError: 'Series' object has no attribute 'days'

Viewed 65071

I have a column 'delta' in a dataframe dtype: timedelta64[ns], calculated by subcontracting one date from another. I am trying to return the number of days as a float by using this code:

from datetime import datetime
from datetime import date
df['days'] = float(df['delta'].days)

but I receive this error:

AttributeError: 'Series' object has no attribute 'days'

Any ideas why?

2 Answers

DataFrame column is a Series, and for Series you need dt.accessor to calculate days (if you are using a newer Pandas version). You can see docs here

So, you need to change:

df['days'] = float(df['delta'].days)

To

df['days'] = float(df['delta'].dt.days)
Related