首页 > 解决方案 > 如何在 Python Pandas 中将日期转换为季度而不重复前 5 年的季度?

问题描述

我想将日期转换为季度。我用过,

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

        date    quarter
0   2013-1-1          1

但是,它也会在明年重复同样的事情。

          date    quarter
366   2014-1-1          1

而不是1我希望(预期结果)季度是5

          date    quarter
366   2014-1-1          5
.
.
.
.
          date    quarter
731   2015-1-1          9

标签: pythonpython-3.xpandasdatetimepython-3.6

解决方案


您可以使用简单的数学运算

starting_year = 2013
df['quarter'] = df.year.dt.quarter + (df.year.dt.year - starting_year)*4

    year        quarter
0   2013-01-01  1
0   2014-01-01  5
0   2015-01-01  9
0   2016-01-01  13

推荐阅读