首页 > 解决方案 > 使用Python中的自定义字符串从数据框日期列返回财政季度

问题描述

    quarter = pd.Timestamp(dt.date(2020, 1, 1)).quarter
    assert quarter == 1

    df['quarter'] = df['date'].dt.quarter

根据 df['date'] 列中的日期,这将返回 df['quarter'] 中的 1、2、3 或 4。

我想要的是 df['quarter'] 列中的这种格式:

Qx-2019 或 Qx-2020 取决于年份,其中 x 是使用上述脚本找到的季度。

如何从季度中获取特定年份并添加格式 Qx-year?

谢谢你。

标签: pythonpandasdatetime

解决方案


尝试to_period

s.dt.to_period('Q')
Out[159]: 
0    2020Q4
1    2019Q1
dtype: period[Q-DEC]

更新

'Q' + df['date'].dt.quarter.astype(str) + '-' + df['date'].dt.year.astype(str)

推荐阅读