У меня есть Pandas DataFrame вроде этого:
Firm Date Quarter
A 2019-06-30 0
A 2019-06-30 1
A 2019-06-30 2
A 2019-06-30 3
B 2017-06-30 0
B 2017-06-30 1
B 2017-06-30 2
B 2017-06-30 3
Я хотел бы создать новый столбец QDate
путем вычитания количества кварталов в столбце Quarter
(Дата конца квартала ) к каждой из дат в столбце Date
, поэтому я получаю следующую таблицу:
Firm Date Quarter QDate
A 2019-06-30 0 2019-06-30
A 2019-06-30 1 2019-03-31
A 2019-06-30 2 2018-12-31
A 2019-06-30 3 2018-09-30
B 2017-06-30 0 2017-06-30
B 2017-06-30 1 2017-03-31
B 2017-06-30 2 2016-12-31
B 2017-06-30 3 2016-09-30
с учетом того, что у меня большое количество компаний и разные значения в столбце Date
, я бы хотел бы знать, как создать функцию, которую я мог бы использовать, чтобы делать это автоматически, я знаю, что есть функция: pd.tseries.offsets.QuarterEnd()
, поэтому, по сути, я предполагаю, что он будет применять следующий код к каждой из строк набора данных, но с параметр 'n' основан на столбце «Квартал»:
df["QDate"] = df["Date"] - pd.tseries.offsets
.QuarterEnd(n = 0, 1, 2, 3...)
Был бы очень признателен, если бы вы мне помогли с этим! Спасибо!