首页 > 解决方案 > 熊猫:无法将对象转换为日期时间

问题描述

这是我的数据框:

               dt_object      Lng
1    2020-01-01 00:00:00  1.57423
2    2020-01-01 01:00:00  1.57444
3    2020-01-01 02:00:00  1.57465
4    2020-01-01 03:00:00  1.57486
5    2020-01-01 04:00:00  1.57506

dt_object 用 python 经典的 datetime 函数编写。但

print (df.columns) 

给我:

索引(['dt_object', 'Lng'], dtype='object'),

所以它们都是对象类型。

我尝试:

df_candles['dt_object'] = df_candles['dt_object'].astype('datetime64')

但这无济于事。

它仍然是对象。如何将此列转换为 pandas 'datetime64'?

标签: pythonpandas

解决方案


为此,您将使用to_datetime函数对其进行转换

df_candles['dt_object'] = pd.to_datetime(df_candles['dt_object'])

请注意,如果需要,您还可以将字符串对象的格式指定为

df_candles['dt_object'] = pd.to_datetime(df_candles['dt_object'], format='%Y-%m-%d %H:%M:%S')

还要检查 https://docs.python.org/3/library/datetime.html#strftime-and-strptime-format-codes


推荐阅读