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

标签 python pandas

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

有人有什么想法吗?如果有任何帮助/指点,我将不胜感激。

最佳答案

为我工作to_datetime使用 utc=True 将所有值转换为 UTCerrors='coerce' 将不可解析的值转换为 NaT(缺少日期时间):

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

关于python - 将 Python 数据框列转换为日期格式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59214276/

相关文章:

Python编程初学者难点

python - 导入 sklearn 时出现段错误

python - 尽管格式正确, Pandas 仍无法推断时间序列频率?

python - 截断 Pandas 中的列宽

python - 如何在 Python 中替换(或去除)文件名的扩展名?

python - 有没有更简洁的方法来查找字典中最高的 5 个值?

Python - 使用 "astype"的 Pandas 列类型转换不起作用

Python 更新字典值以引用具有相同名称的数据帧

python - 模拟打开以在 python 中进行单元测试

python - 为什么 int 和 NaN 列是 float 类型