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

如何在Python中使用Pandas生成指定年份范围的季度列表

Pandas生成指定年份区间季度列表的实现方法

场景1:直接指定起止年份生成季度列表

你可以直接使用pd.period_range()方法指定时间范围和季度频率,再格式化输出即可:

import pandas as pd

start_year = 2018
end_year = 2020
# 生成指定区间的季度列表
quarter_list = pd.period_range(
    start=f"{start_year}-01-01",
    end=f"{end_year}-12-31",
    freq="Q"
).strftime("%Y-q%q").tolist()

输出结果示例:['2018-q1', '2018-q2', '2018-q3', '2018-q4', '2019-q1', '2019-q2', '2019-q3', '2019-q4', '2020-q1', '2020-q2', '2020-q3', '2020-q4']

场景2:从已有DataFrame的日期列提取覆盖的季度列表

对应你给出的参考代码场景,你可以对PeriodIndex结果做格式化和去重处理,得到需要的列表:

# df为包含date日期列的DataFrame对象
quarter_list = pd.PeriodIndex(df['date'], freq="Q")\
    .strftime("%Y-q%q")\
    .drop_duplicates()\
    .tolist()

补充说明

  • freq="Q"默认使用自然年季度(1-3月为Q1,以此类推),如果需要适配财年规则,可以修改为Q-DEC(财年12月结束,和自然年一致)、Q-MAR(财年3月结束,3-5月为Q1)等参数
  • %Y-q%q为格式化规则,你可以根据需要调整输出格式,比如换成%Y年第%q季度就能得到2018年第1季度类的输出

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.07 12:30:05