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

如何在Pandas中将年月格式日期转换为季度末日期?

问题修复方案

错误根源是你先把datetime类型转成了字符串,而pd.offsets.QuarterEnd偏移量只能和pandas的datetime类型数据运算,字符串无法与偏移量执行加法操作。

以下两种方法可以解决问题:

方法一:先处理偏移量再转字符串

保留datetime类型完成偏移量计算,最后再转成目标字符串格式:

# 第一步仅转为datetime类型,不转字符串
df6['Date'] = pd.to_datetime(df6['Date'], format="%Y%m")
# 给日期加上季度末偏移量
df6['Date'] = df6['Date'] + pd.offsets.QuarterEnd(0)
# 最后转换为需要的字符串格式
df6['Date'] = df6['Date'].dt.strftime('%Y-%m-%d')

方法二:利用周期特性直接取季度末

通过dt.to_period('Q')将日期转为季度周期,直接提取周期结束时间:

df6['Date'] = pd.to_datetime(df6['Date'], format="%Y%m")
# 转为季度周期 → 提取周期结束时间 → 转为目标字符串格式
df6['Date'] = df6['Date'].dt.to_period('Q').dt.end_time.dt.strftime('%Y-%m-%d')

两种方法都能生成你需要的2020-03-31、2020-06-30这类季度末日期,可根据习惯选择使用。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.10 04:55:17