You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何将Pandas列转换为datetime类型?已尝试代码未生效求解决

解决Pandas DateTime列转换失败的问题

针对你的示例值06/01/2022 12:00:06 AM,你用的格式字符串%m/%d/%Y %I:%M:%S %p本身是匹配的,转换失败可以试试下面几种方案:

  • 直接去掉str.strip()尝试转换
    有时候str.strip()可能误处理掉格式内的必要空格,直接执行:

    odu1['DateTime'] = pd.to_datetime(odu1['DateTime'], format='%m/%d/%Y %I:%M:%S %p')
    
  • 让Pandas自动推断格式
    移除format参数,让Pandas自行识别格式,同时用errors='coerce'把转换失败的行标记为NaT,方便排查异常值:

    odu1['DateTime'] = pd.to_datetime(odu1['DateTime'], errors='coerce')
    # 查看转换失败的原始数据
    print(odu1[odu1['DateTime'].isna()])
    
  • 清理隐藏特殊字符
    如果原始数据里有全角空格、制表符这类隐藏字符,先做清理再转换:

    import re
    # 把所有连续空白字符替换成单个空格并清理首尾
    odu1['DateTime'] = odu1['DateTime'].apply(lambda x: re.sub(r'\s+', ' ', x.strip()))
    odu1['DateTime'] = pd.to_datetime(odu1['DateTime'], format='%m/%d/%Y %I:%M:%S %p')
    

内容的提问来源于stack exchange,提问作者Janzaib M Baloch

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.12 23:01:13