python pandas: получить финансовый квартал от финансового года и месяца (для Великобритании)

У меня есть dataframe с двумя полезными столбцами 1) финансовый год, 2) дата. Я хочу добавить новый столбец, который показывает финансовый квартал.

FYI – UK Финансовый год проходит с 1 апреля по 31 марта

мои данные выглядят так:

fiscal year date FY15/16 2015-11-01 FY14/15 2014-10-01 FY15/16 2016-02-01 

Я хочу, чтобы это выглядело так:

  fiscal year date Quarter FY15/16 2015-11-01 q3 FY14/15 2014-10-01 q3 FY15/16 2016-02-01 q4 

Надеюсь, я добрался до квартала!

Код ниже работает, но я верю, что он возвращает американские финансовые кварталы, но я хочу Великобритании.

 df['Quater'] = df['Date'].dt.quarter 

 import pandas as pd df = pd.DataFrame({'date': ['2015-11-01', '2014-10-01', '2016-02-01'], 'fiscal year': ['FY15/16', 'FY14/15', 'FY15/16']}) df['Quarter'] = pd.PeriodIndex(df['date'], freq='Q-MAR').strftime('Q%q') print(df) 

доходность

  date fiscal year Quarter 0 2015-11-01 FY15/16 Q3 1 2014-10-01 FY14/15 Q3 2 2016-02-01 FY15/16 Q4 

Квартальная частота Q умолчанию эквивалентна Q-DEC .

 In [60]: pd.PeriodIndex(df['date'], freq='Q') Out[60]: PeriodIndex(['2015Q4', '2014Q4', '2016Q1'], dtype='int64', freq='Q-DEC') 

Q-DEC определяет квартальные периоды, последний квартал которых заканчивается в последний день декабря. Q-MAR указывает квартальные периоды, последний квартал которых заканчивается в последний день марта.

 In [86]: pd.PeriodIndex(df['date'], freq='Q-MAR') Out[86]: PeriodIndex(['2016Q3', '2015Q3', '2016Q4'], dtype='int64', freq='Q-MAR')