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

如何将DataFrame中object类型的datetime列转换为datetime类型?

Pandas将object类型日期列转换为datetime类型方法

使用pandas内置的pd.to_datetime()方法即可完成转换,适配绝大多数场景,不需要额外安装第三方依赖。

  • 基础转换
    对于格式规整、无脏数据的日期列,替换为自身代码中的DataFrame变量名和对应列名即可执行:
    import pandas as pd
    
    # 示例:将df中名为target_col的object类型列转为datetime类型
    df['target_col'] = pd.to_datetime(df['target_col'])
    
    转换完成后执行print(df.dtypes),对应列显示datetime64[ns]即为转换成功。
  • 非标准格式转换
    如果日期列是自定义非通用格式(比如31/12/2023 23:59这类日/月/年排序的结构),可以手动指定format参数匹配格式,转换速度比自动识别快数倍:
    # 根据实际日期格式修改format字符串即可
    df['target_col'] = pd.to_datetime(df['target_col'], format="%d/%m/%Y %H:%M")
    
    常用格式符说明:%Y对应4位年份、%m对应2位月份、%d对应2位日期、%H对应24小时制小时、%M对应分钟。
  • 含脏数据的容错转换
    如果列中混入了无法解析的非法值,添加errors="coerce"参数即可,无法解析的内容会被转成pandas内置的空时间值NaT,不会直接抛出异常中断代码运行:
    df['target_col'] = pd.to_datetime(df['target_col'], errors="coerce")
    
  • 多列批量转换
    存在多个object类型日期列需要统一转换时,不需要逐列编写代码,可直接批量处理:
    # 将所有需要转换的日期列名放入列表
    date_col_list = ['create_time', 'update_time', 'pay_time']
    df[date_col_list] = df[date_col_list].apply(pd.to_datetime, errors="coerce")
    

参考截图:
参考截图1
参考截图2

内容的提问来源于stack exchange,提问作者Ghofran Gogy

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.27 21:27:47