将Python数据框列转换为日期格式

时间:2019-12-06 13:38:39

标签: python pandas

我在数据框中有一个要转换为日期的列。该列的值为DDMONYYYDD Month YYYY 00:00:00.000 GMT。例如,数据帧中的一行可能具有值31DEC2002,而下一行可能具有31 December 2015 00:00:00.000 GMT。我认为这就是为什么在尝试使用pd.to_datetime或datetime.strptime将列转换为日期时出现错误的原因。

有人有什么想法吗?对于任何帮助/指针,我将深表感谢。

1 个答案:

答案 0 :(得分:3)

对于我来说,to_datetimeutc=True一起用于将所有值都转换为UTC,而errors='coerce'则是将不可解析的值转换为NaT(缺少日期时间):< / p>

df = pd.DataFrame({'date':['31DEC2002','31 December 2015 00:00:00.000 GMT','.']})

df['date'] = pd.to_datetime(df['date'], utc=True, errors='coerce')
print (df)
                       date
0 2002-12-31 00:00:00+00:00
1 2015-12-31 00:00:00+00:00
2                       NaT