Pandas Convert Datatime Column To Timestamp
I am beginner in pandas I have dataframe first column is datatime like '19-Sep-2016 10:30:00' and many records like it. I am trying to convert this column to timestamp and write i
Solution 1:
You can use to_datetime
:
df = pd.DataFrame({'DateTime':['19-Sep-2016 10:30:00','19-Sep-2016 10:30:00']})
print (df)
DateTime
0 19-Sep-2016 10:30:00
1 19-Sep-2016 10:30:00
df['DateTime'] = pd.to_datetime(df['DateTime'])
print (df)
DateTime
0 2016-09-19 10:30:00
1 2016-09-19 10:30:00
If want to specify format:
df['DateTime'] = pd.to_datetime(df['DateTime'], format='%d-%b-%Y %H:%M:%S')
print (df)
DateTime
0 2016-09-19 10:30:00
1 2016-09-19 10:30:00
And for times
add dt.time
:
df['DateTime'] = pd.to_datetime(df['DateTime']).dt.time
print (df)
DateTime
0 10:30:00
1 10:30:00
Then is possible use join
- data are aligned by index values, if length is different get NaT
s as last values:
df1 = pd.DataFrame({'Col':[5, 4, 0, 7]})
print (df1)
Col
0 5
1 4
2 0
df1 = df1.join(pd.to_datetime(df['DateTime']))
print (df1)
Col DateTime
0 5 2016-09-19 10:30:00
1 4 2016-09-19 10:30:00
2 0 NaT
3 7 NaT
df1['DateTime'] = pd.to_datetime(df['DateTime'])
print (df1)
Col DateTime
0 5 2016-09-19 10:30:00
1 4 2016-09-19 10:30:00
2 0 NaT
3 7 NaT
df1 = df1.join(pd.to_datetime(df['DateTime']).dt.time)
print (df1)
Col DateTime
0 5 10:30:00
1 4 10:30:00
2 0 NaN
3 7 NaN
df1['DateTime'] = pd.to_datetime(df['DateTime']).dt.time
print (df1)
Col DateTime
0 5 10:30:00
1 4 10:30:00
2 0 NaN
3 7 NaN
Solution 2:
If you want to convert it to a long
timestamp:
df['DateTime'] = pd.to_datetime(df['DateTime'])
df['TimeStamp'] = df.DateTime.astype('int64') // 10**9
That will give you the timestamp in milliseconds.
Post a Comment for "Pandas Convert Datatime Column To Timestamp"