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

日期格式转换与新列创建求助:处理'Dec-11'格式日期

日期格式转换与年份提取解决方案

你的问题出在日期格式字符串不匹配:原代码用了format='%Y%m',但你的数据格式是Dec-11(英文月份缩写+两位年份),两者完全不匹配,导致pd.to_datetime无法解析,返回NaT。

正确步骤:

  1. 匹配正确的格式字符串:
    对于Dec-11这种格式,应该用%b-%y:

    • %b:匹配英文月份缩写(如Jan、Dec)
    • %y:匹配两位数字的年份(如11代表2011)

    执行转换代码:

    loan_df['issue_d'] = pd.to_datetime(loan_df['issue_d'], format='%b-%y', errors='coerce')
    

    此时再运行loan_df.issue_d.head(),会返回正确的datetime类型结果(默认补全日期为当月第一天,如2011-12-01)。

  2. 提取年份创建新列:
    利用dt.year属性提取年份:

    loan_df['issue_year'] = loan_df['issue_d'].dt.year
    

验证结果:

转换后你的issue_d列会是datetime类型,issue_year列会显示对应的四位年份(如2011)。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.28 22:57:04