I have a dataframe (df) that has a date column (column name : sale_date) that stores data in the below format
dd/mm/yy hh:mm:ss
I am trying to convert it to yyyy-mm-dd hh:mm:ss. Tried with the below but however it still does not convert it to the required format.
df['sale_date'] = pd.to_datetime(df['sale_date'])
Could anyone assist in converting the format of this date column. Thanks
In Pandas, you can convert a column (string/object or integer type) to datetime using the to_datetime() and astype() methods.
If you know you will have a consistent format in your column, you can pass this to to_datetime
:
df['sale_date'] = pd.to_datetime(df['sale_date'], format='%d/%m/%y %H:%M:%S')
If your formats aren't necessarily consistent but do have day before month in each case, it may be enough to use dayfirst=True
though this is difficult to say without seeing the data:
df['sale_date'] = pd.to_datetime(df['sale_date'], dayfirst=True)
You can do so:
df['sale_date'] = pd.to_datetime(df['sale_date'], format='%d/%m/%y %H:%M:%S').dt.strftime('%Y-%m-%d %H:%M:%S')
Input:
sale_date
0 04/12/10 21:12:35
1 04/12/10 21:12:30
Output:
sale_date
0 2010-12-04 21:12:35
1 2010-12-04 21:12:30
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With