Rozšiřující se okna

Manipulace s časovými řadami v R

Harrison Brown

Graduate Researcher in Geography

Klouzavé versus rozšiřující se okno

Klouzavé okno:

  • Pohyblivý počáteční bod
  • Okno má pevnou šířku

Rozšiřující se okno:

  • Pevný počáteční bod
  • Šířka okna se zvětšuje
Manipulace s časovými řadami v R

Princip rozšiřujícího se okna

Rostoucí šířka okna:

  • Šířka 1 u pozorování 1,
  • Šířka 2 u pozorování 2,
  • Šířka 3 u pozorování 3,
  • ...

Jaký je souhrn dostupných dat?

Pevný počáteční bod:

  • Okna vždy začínají na začátku časové řady.

Schéma rozšiřujícího se okna časové řady. Čtyři rámečky označené 1 až 4 jsou seřazeny horizontálně. Pod nimi jsou čtyři vodorovné čáry rostoucí délky, každá začínající vlevo.

Manipulace s časovými řadami v R

Výpočet rozšiřujícího se okna

Rozšiřující se okna v R:

  • zoo::rollapply()!
  • width může být číslo nebo vektor

Šířka rozšiřujícího se okna:

  • 1, 2, 3, 4, ...

Funkce pro posloupnost čísel:

  • base::seq_along()
seq_along(daily_temp)
[1] 1 2 3 4 5 6 7 8 9 ...
    ... 363 364 365
Manipulace s časovými řadami v R

Výpočet rozšiřujícího se okna

exp_widths <- seq_along(daily_temp)

exp_widths
[1] 1 2 3 4 5 ... 363 364 365
temp_expand <- 
  rollapply(
    data = daily_temp,
    FUN = mean,
    width = exp_widths,
    # Alignment must be 'right'
    align = 'right'
  )
Manipulace s časovými řadami v R

Vizualizace rozšiřujících se oken

ggplot() + 
# Original data
  geom_line(data = daily_temp,
            aes(x = Index,
            y = daily_temp),
            color = 'grey50') +

# Expanding window plot geom_line(data = temp_expand, aes(x = Index, y = temp_expand), color = 'red') + theme_light() + labs(y = 'Degrees Celsius')

Graf časové řady denních teplot. Šedá čára znázorňuje výrazně proměnlivé denní teploty. Červená čára zobrazuje rozšiřující se průměr datové sady.

Manipulace s časovými řadami v R

Závěry z rozšiřujících se oken

  • Statistiky se blíží globálním souhrnům
  • Rozšiřující se průměr je méně citlivý na změny
  • Dřívější pozorování jsou citlivější na změny

Graf časové řady denních teplot. Šedá čára znázorňuje výrazně proměnlivé denní teploty. Červená čára zobrazuje rozšiřující se průměr datové sady.

Manipulace s časovými řadami v R

Pojďme si procvičit!

Manipulace s časovými řadami v R

Preparing Video For Download...