Een maandelijks gemiddelde genereren
Hoewel het to.period()-commando in veel situaties handig is, is het voor jouw doel misschien niet ideaal om één rij te kiezen als representatief voor de hele maand.
In plaats daarvan is het logischer om gemiddelde temperatuurwaarden per maand te genereren. Hiervoor moet je handmatig het maandgemiddelde berekenen met split() en lapply(), en vervolgens een nieuw xts-object maken met as.xts(). Dit lijkt misschien een ingewikkeld proces, maar je hebt hier al de skills voor!
Het subset van het xts-object uit de vorige oefening, temps_xts_2, is vooraf geladen in je werkruimte. Ook vooraf geladen is een index-object met een vector van datums voor de eerste dag van elke maand die in de data voorkomt.
Deze oefening maakt deel uit van de cursus
Casestudy: Tijdreeksgegevens van een stad analyseren in R
Oefeninstructies
- Gebruik
split()om maandelijkse lijsten te maken uit demean-kolom van jetemps_xts_2-object. Zorg dat je"months"opgeeft als periode (hetf-argument). - Gebruik
lapply()om de "mean of means" te berekenen, oftewel de gemiddeldemean-temperatuur per maand. - Gebruik
as.xts()om een nieuw xts-object te maken met de gemiddelde maandelijkse temperatuur in Boston van 2010 t/m 2015. Combineer hiervoor je maandelijksemean_of_means-gegevens met je maandelijkseindex-object. - Controleer tot slot dat je nieuwe
temps_monthly-object dezelfde duur en periodiciteit heeft alsflights_xts.
Praktische interactieve oefening
Probeer deze oefening eens door deze voorbeeldcode in te vullen.
# Split temps_xts_2 into separate lists per month
monthly_split <- split(___$___ , f = "___")
# Use lapply to generate the monthly mean of mean temperatures
mean_of_means <- lapply(___, FUN = ___)
# Use as.xts to generate an xts object of average monthly temperature data
temps_monthly <- as.xts(as.numeric(___), order.by = ___)
# Compare the periodicity and duration of your new temps_monthly and flights_xts
periodicity(___)
periodicity(___)