Финансовый год – Определение финансового года в Pandas
Last updated
Last updated
Узнайте всё о фискальном году в Pandas! Библиотека Pandas делает получение информации о датах достаточно простым процессом — однако определение финансового года требует чуть больше усилий и не всегда интуитивно понятно. В этой статье я постараюсь объяснить этот процесс простым языком.
К концу этой статьи вы узнаете, как:
Использовать метод .to_period()
из Pandas для преобразования дат в разные временные периоды,
Использовать метод .qyear()
из Pandas для расчёта годов на основе разных стартовых месяцев,
Форматировать фискальные годы в Pandas различными способами.
Кратко говоря, можно написать:
Содержание
Начнём с загрузки набора данных, содержащего различные временные периоды. Мы импортируем библиотеку Pandas и выведем первые пять записей, чтобы понять, что представляет собой данные:
По умолчанию, мы можем получить доступ к календарному году с помощью аксессора .dt.year
. Давайте посмотрим, как это сделать — извлечём календарный год и поместим его в отдельный столбец. Создадим новый столбец с названием Year
и присвоим ему значение года:
Ознакомьтесь с другими уроками Python на сайте datagy, включая наше полное руководство по оформлению таблиц в Pandas и подробный обзор сводных таблиц (Pivot Tables) в Pandas!
.to_period()
— преобразование дат в разные временные периодыБиблиотека Pandas позволяет легко преобразовывать данные типа дата и время в различные временные периоды. С помощью метода .to_period()
можно переводить значения дат в кварталы, месяцы, годы и другие периоды. Давайте рассмотрим это на примере.
Преобразуем значения дат в кварталы, считая первым месяцем года апрель (это означает, что мы будем использовать строку 'Q-MAR'
, где Q
обозначает квартал, а MAR
указывает, что финансовый год заканчивается в марте):
Мы создали новый столбец ("Quarter"
), который использует апрель в качестве первого месяца года и объединяет значения по кварталам, где период с апреля по июнь считается первым кварталом.
.qyear()
— расчёт годов на основе разных стартовых месяцевТеперь, когда мы преобразовали данные с помощью метода .to_period()
, давайте извлечём только год. Может возникнуть желание воспользоваться аксессором .dt.year
, но в этом случае будет возвращаться календарный год. Вместо этого Pandas предоставляет удобный метод .qyear()
, который возвращает год на основе заданного начального квартала. Если бы мы не выполняли преобразование данных с помощью .to_period()
, результаты методов .year
и .qyear()
совпадали бы.
Рассмотрим это на примере:
Обратите внимание, что мы можем записать всё это в одну строку, объединив методы:
По умолчанию Pandas извлекает только первый год фискального года. Если ваш фискальный год не совпадает с календарным (январь–декабрь), он всегда будет охватывать два календарных года. Для лучшей идентификации может быть полезно включить оба года в названии. Давайте создадим новый столбец, в котором годы будут отображаться в формате: 2021-2022:
В этой статье вы узнали, как рассчитывать пользовательские фискальные годы в Pandas с помощью преобразования временных рядов методом .to_period()
и извлечения года с помощью метода .qyear()
. Также вы научились форматировать годы в различные виды для удобства отображения.
Чтобы узнать больше по смежным темам, ознакомьтесь со следующими материалами:
Для получения дополнительной информации ознакомьтесь с официальной документацией по методам и .