Petr Petrov
Petr Petrov

Reputation: 4432

Pandas: timestamp to datetime

I have dataframe and column with dates looks like

 date
 1476329529    
 1476329530    
 1476329803 
 1476329805 
 1476329805  
 1476329805 

I use df['date'] = pd.to_datetime(df.date, format='%Y-%m-%d %H:%M:%S') to convert that, but I'm get strange result

 date 
 1970-01-01 00:00:01.476329529   
 1970-01-01 00:00:01.476329530   
 1970-01-01 00:00:01.476329803  
 1970-01-01 00:00:01.476329805    
 1970-01-01 00:00:01.476329805   
 1970-01-01 00:00:01.476329805   

Maybe I did anything wrong

Upvotes: 13

Views: 14371

Answers (2)

EdChum
EdChum

Reputation: 393893

This looks look epoch timestamps which is number of seconds since 1st January 1970 :

In [71]:
pd.to_datetime(df['date'], unit='s')
​
Out[71]:
0   2016-10-13 03:32:09
1   2016-10-13 03:32:10
2   2016-10-13 03:36:43
3   2016-10-13 03:36:45
4   2016-10-13 03:36:45
5   2016-10-13 03:36:45
Name: date, dtype: datetime64[ns]

Upvotes: 20

milos.ai
milos.ai

Reputation: 3930

Something like this maybe:

import datetime
date = datetime.datetime.fromtimestamp(1476329529)
date
# gives
# datetime.datetime(2016, 10, 13, 5, 32, 9)

str(date) # '2016-10-13 05:32:09'

Upvotes: 2

Related Questions