Angus
Angus

Reputation: 167

Calculate difference between 2 dates in python dataframe

I've looked through python advice and worked out how to calculate the difference between two dates, e.g. Difference between two dates?. That works, but ... I'm working with variables in a dataframe. I'm sure I'm following the advice I've read but I'm getting:

TypeError: strptime() argument 1 must be str, not Series 

Here's the code:

df['DAYSDIFF'] = (datetime.datetime.strptime(df['SDATE'],"%d/%m/%Y") - datetime.datetime.strptime(df['QDATE'],"%d/%m/%Y"))

Thanks again for help!

Upvotes: 0

Views: 2558

Answers (1)

Simon Kirsten
Simon Kirsten

Reputation: 2577

Use pandas.to_datetime:

df["SDATE"] = pd.to_datetime(df["SDATE"], format="%d/%m/%Y")
df["QDATE"] = pd.to_datetime(df["QDATE"], format="%d/%m/%Y")

df["DAYSDIFF"] = df["SDATE"] - df["QDATE"]

Because datetime.strptime does not recognize the pandas Series and is expecting a string.

Upvotes: 1

Related Questions