首页 > 解决方案 > 如何处理具有可变日期时间格式的数据框列?

问题描述

我对 pandas 很陌生,我在列中苦苦挣扎。

我有一个数据框列,其中包含多种格式的日期,例如“2021-08-21T06:34:34.909Z”和“2021-08-21T06:34:34Z”

有没有一种优雅的方法来删除所有毫秒?

提前致谢

标签: python-3.xpandasdatetime

解决方案


您可以尝试转换为datetime64[s]

>>> df['Datetime']
0    2021-08-21T06:34:34.909Z
1        2021-08-21T06:34:34Z
Name: Datetime, dtype: object


>>> df['Datetime'].astype('datetime64[s]')
0   2021-08-21 06:34:34
1   2021-08-21 06:34:34
Name: Datetime, dtype: datetime64[ns]

# OR

>>> pd.to_datetime(df['Datetime']).dt.floor(freq='S')
0   2021-08-21 06:34:34+00:00
1   2021-08-21 06:34:34+00:00
Name: Datetime, dtype: datetime64[ns, UTC]

推荐阅读