Применение оконных функций

Анализ временных рядов в Power BI

Kevin Barlow

Data Analytics Professional

Контекст и значимость

Расширяющиеся и скользящие оконные функции применяются самыми разными способами!

К конкретным периодам времени можно применять несколько вычислений:

- RANK()
- LOOKUPVALUE()
- CHISQ.INV()
- GEOMEAN()
Анализ временных рядов в Power BI

SAMEPERIODLASTYEAR и PARALLELPERIOD

SAMEPERIODLASTYEAR()

Возвращает таблицу со столбцом дат, сдвинутых на один год назад относительно дат в указанном столбце, в текущем контексте.

SAMEPERIODLASTYEAR(<dates>)

PARALLELPERIOD()

Возвращает таблицу со столбцом дат, соответствующих периоду, параллельному датам в указанном столбце, в текущем контексте, со сдвигом на заданное количество интервалов вперёд или назад.

PARALLELPERIOD(<dates>,
    <number_of_intervals>,
    <interval>)
1 https://learn.microsoft.com/dax
Анализ временных рядов в Power BI

Анализ того же окна за прошлый год

Иногда полезно посмотреть, как выглядело то же самое окно год назад.

  • Применяет оконную функцию к историческим данным.
  • Позволяет понять, каким было то же самое вычисление раньше.
  • Быстро обрабатывает вычисления по различным точкам во времени.

Типичные шаги такого анализа:

  1. Рассчитайте важный показатель или KPI за текущий год.
  2. Примените то же вычисление к другим аналогичным периодам.
  3. Вычислите разницу между значениями, чтобы оценить величину изменения.
Анализ временных рядов в Power BI

Примеры анализа того же окна за прошлый год

В индустрии подобные анализы очень распространены. Они дают два ключевых показателя:

  1. Как организация выполняет определённый KPI в контексте текущего года?
  2. Как мы справляемся в контексте того же периода и KPI за прошлый год? Есть ли улучшения?
Avg Cost = CALCULATE(
    AVERAGE(stores[cost]),
    stores[date] >= 
        DATEADD(TODAY(), -30, DAY))

LY Avg Cost = CALCULATE([Avg Cost],
    SAMEPERIODLASTYEAR(stores[date]))
Анализ временных рядов в Power BI

Расчёт изменения год к году

Можно точно рассчитать, как данные изменились за год, применив окно к историческим данным.

  • Называется расчётом «год к году» (YoY)
  • Даёт представление о прогрессе по сравнению с историей
  • Обычно выражается в процентах изменения
# Assuming current month is February

CY Jan Revenue = CALCULATE(
    SUM(sales[revenue]),
    PREVIOUSMONTH(sales[date]))

LY Jan Revenue = CALCULATE(
    [CY Jan Revenue],
    SAMEPERIODLASTYEAR(sales[date]))

Jan Revenue YoY = (
    ([CY Jan Revenue]-[LY Jan Revenue])
        / [LY Jan Revenue])
Анализ временных рядов в Power BI

Давайте потренируемся!

Анализ временных рядов в Power BI

Preparing Video For Download...