You need to enable JavaScript to run this app. pandas如何将单独的年、月列合并为年月格式的日期新列
优惠活动
大模型
产品
解决方案
定价
更多

pandas如何将单独的年、月列合并为年月格式的日期新列

解决方案

以下是不同需求下的实现方式:

  • 生成标准datetime类型的日期列(最推荐,方便后续做时间筛选、序列运算等操作)
    因为年月日期需要指定一个具体的日才能转为标准日期,我们默认设为每月1号即可:

    df['date'] = pd.to_datetime(df[['year', 'month']].assign(day=1))
    

    运行后date列的格式示例:2011-01-01、2011-02-01

  • 生成YYYY-MM格式的字符串类型年月
    如果你只需要展示用的年月文本,可以用如下写法,自动给个位数的月份补前导0:

    df['date'] = df['year'].astype(str) + '-' + df['month'].astype(str).str.zfill(2)
    

    运行后date列的格式示例:2011-01、2011-02

  • 修正你的原有写法
    你原来的代码里额外加的+1是错误的,会导致月份偏移1位,如果需要生成201101这种数字格式的年月,直接用如下代码即可:

    df['date'] = df['year'] * 100 + df['month']
    

    运行后date列的格式示例:201101、201102

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.21 05:36:09