我的数据帧中有一些日期,如:
0 2015-02-09 12:40:59+00
1 2015-02-09 12:44:32+00
2 2015-02-09 12:43:05+00
3 2015-02-09 12:49:11+00
4 2015-02-09 12:52:49+00
...
1923657 2021-04-08 07:45:32+00
1923658 2021-04-08 05:40:12+00
1923659 2021-04-08 08:44:08+00
1923660 2021-04-08 00:34:37+00
1923661 2021-04-08 04:53:31+00
我把它们转换成一个ms,就像:
col0='startingtimestamp'
df[col0] = df[col0].apply(lambda x: datetime.strptime(x[:19], "%Y-%m-%d %H:%M:%S").timestamp())
它是有效的,但有没有更快、更短的解决方案?
如果能给我一个提示,我将不胜感激。感谢
import pandas as pd
只需使用rstrip()
方法、to_datetime()
方法和total_seconds()
方法:
df['col0']=df['col0'].astype(str).str.rstrip('+00')
df['col0']=pd.to_datetime(df['col0'])
df['col0']=(df['col0'] - pd.to_datetime('1970-1-1')).dt.total_seconds()