Expanderande fönster

Manipulera tidsseriedata i R

Harrison Brown

Graduate Researcher in Geography

Rullande kontra expanderande fönster

Rullande fönster:

  • Rörlig startpunkt
  • Fönstret har fast bredd

Expanderande fönster:

  • Fast startpunkt
  • Fönstret ökar i bredd
Manipulera tidsseriedata i R

Expanderande fönster – processen

Ökande fönsterbredd:

  • Bredd 1 vid observation 1,
  • Bredd 2 vid observation 2,
  • Bredd 3 vid observation 3,
  • ...

Vad är sammanfattningen av tillgängliga data?

Fast startpunkt:

  • Alla fönster börjar vid tidsseriens start.

Konceptuellt diagram över ett expanderande fönster för en tidsserie. Det finns fyra rutor, märkta ett till fyra, placerade horisontellt bredvid varandra och representerar en konceptuell tidsserie. Under tidsserien finns fyra horisontella linjer av ökande längd. Den första linjen börjar i bildens vänstra kant och slutar vid den första rutans slut. Den andra linjen slutar vid den andra rutan och så vidare.

Manipulera tidsseriedata i R

Beräkna ett expanderande fönster

Expanderande fönster i R:

  • zoo::rollapply()!
  • width kan vara ett enskilt tal eller en vektor

Expanderande fönsterbredd:

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

Funktion för talsekvens:

  • base::seq_along()
seq_along(daily_temp)
[1] 1 2 3 4 5 6 7 8 9 ...
    ... 363 364 365
Manipulera tidsseriedata i R

Beräkna ett expanderande fönster

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'
  )
Manipulera tidsseriedata i R

Visualisera expanderande fönster

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 över en tidsserie med dagliga temperaturmätningar. En "brusig" grå linje visar hur temperaturen varierar kraftigt från dag till dag. Ovanpå den grå linjen visas en röd linje som representerar det expanderande medelvärdet för datamängden.

Manipulera tidsseriedata i R

Slutsatser från expanderande fönster

  • Statistiken närmar sig globala sammanfattningar
  • Det expanderande medelvärdet blir mindre känsligt för förändringar
  • Tidigare observationer är mer känsliga för förändringar

Graf över en tidsserie med dagliga temperaturmätningar. En "brusig" grå linje visar hur temperaturen varierar kraftigt från dag till dag. Ovanpå den grå linjen visas en röd linje som representerar det expanderande medelvärdet för datamängden.

Manipulera tidsseriedata i R

Nu kör vi en övning!

Manipulera tidsseriedata i R

Preparing Video For Download...