Einen monatlichen Durchschnitt erzeugen
Der Befehl to.period() ist in vielen Kontexten nützlich, für deine Zwecke ist es aber möglicherweise nicht sinnvoll, eine einzelne Zeile als repräsentativ für den ganzen Monat zu wählen.
Stattdessen ergibt es mehr Sinn, durchschnittliche Temperaturwerte pro Monat zu erzeugen. Dafür musst du den monatlichen Durchschnitt manuell mit split() und lapply() berechnen und anschließend mit as.xts() ein neues xts-Objekt erzeugen. Das wirkt vielleicht kompliziert, aber du hast bereits die nötigen Skills!
Das gefilterte xts-Objekt aus der vorherigen Übung, temps_xts_2, ist in deinem Workspace vorab geladen. Ebenfalls vorab geladen ist ein index-Objekt mit einem Vektor von Daten für den ersten Tag jedes im Datensatz abgedeckten Monats.
Diese Übung ist Teil des Kurses
Fallstudie: Zeitreihendaten von Städten in R analysieren
Anleitung zur Übung
- Verwende
split(), um aus dermean-Spalte deines Objektstemps_xts_2monatliche Listen zu erzeugen. Achte darauf,"months"als Zeitraum (das Argumentf) anzugeben. - Verwende
lapply(), um das „mean of means“, also die durchschnittliche mittlere Temperatur pro Monat, zu berechnen. - Verwende
as.xts(), um ein neues xts-Objekt zu erzeugen, das die durchschnittliche monatliche Temperatur in Boston von 2010 bis 2015 enthält. Dazu musst du deine monatlichenmean_of_means-Daten mit deinem monatlichenindex-Objekt kombinieren. - Bestätige zum Schluss, dass dein neues Objekt
temps_monthlydieselbe Dauer und Periodizität wieflights_xtshat.
Interaktive Übung
Vervollständige den Beispielcode, um diese Übung erfolgreich abzuschließen.
# 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(___)