Aplikace okenních funkcí

Analýza časových řad v Power BI

Kevin Barlow

Data Analytics Professional

Kontext a důležitost

Rozšiřující a klouzavé okenní funkce lze použít mnoha různými způsoby!

Na konkrétní časová období lze aplikovat různé výpočty:

- RANK()
- LOOKUPVALUE()
- CHISQ.INV()
- GEOMEAN()
Analýza časových řad v Power BI

SAMEPERIODLASTYEAR vs. PARALLELPERIOD

SAMEPERIODLASTYEAR()

Vrátí tabulku se sloupcem dat posunutých o jeden rok zpět od dat v zadaném sloupci v aktuálním kontextu.

SAMEPERIODLASTYEAR(<dates>)

PARALLELPERIOD()

Vrátí tabulku se sloupcem dat představujícím období paralelní k datům v zadaném sloupci v aktuálním kontextu, přičemž data jsou posunuta o zadaný počet intervalů vpřed nebo vzad.

PARALLELPERIOD(<dates>,
    <number_of_intervals>,
    <interval>)
1 https://learn.microsoft.com/dax
Analýza časových řad v Power BI

Analýza stejného okna jako loni

Může být užitečné vidět, jak vypadalo stejné okno loni.

  • Aplikuje okenní funkci na starší data.
  • Umožňuje zjistit, jaký výsledek přinášel stejný výpočet.
  • Rychle zpracuje výpočty napříč různými časovými body.

Typický postup pro tento typ analýzy:

  1. Výpočet důležité metriky nebo KPI za aktuální rok.
  2. Aplikace stejného výpočtu na jiná srovnatelná časová období.
  3. Výpočet rozdílu mezi hodnotami pro zjištění míry změny.
Analýza časových řad v Power BI

Analýza stejného okna jako loni – příklady

V praxi jsou tyto analýzy velmi běžné. Poskytují dva klíčové datové body:

  1. Jak naše organizace plní konkrétní KPI v kontextu aktuálního roku?
  2. Jak si vedeme ve srovnání se stejným obdobím loňského roku? Zlepšujeme se?
Avg Cost = CALCULATE(
    AVERAGE(stores[cost]),
    stores[date] >= 
        DATEADD(TODAY(), -30, DAY))

LY Avg Cost = CALCULATE([Avg Cost],
    SAMEPERIODLASTYEAR(stores[date]))
Analýza časových řad v Power BI

Výpočet meziročních změn

Přesnou změnu dat oproti loňskému roku lze vypočítat aplikací okna na historická data.

  • Označováno jako výpočet meziročního vývoje (YoY)
  • Poskytuje přehled o pokroku ve srovnání s historií
  • Zpravidla vyjádřeno jako procentní změna
# 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])
Analýza časových řad v Power BI

Pojďme si procvičit!

Analýza časových řad v Power BI

Preparing Video For Download...