Füge den BIP-Daten eine diskrete rollierende Summe hinzu
Es ist hilfreich zu wissen, wie stark sich ein Zeitraum zum nächsten verändert, aber vielleicht möchtest du die gesamte Veränderung seit Jahresbeginn kennen. Um diesen Indikator zu erzeugen, kannst du das Muster split-lapply-rbind verwenden. Dieser Ablauf ähnelt dem Verfahren, das im vorherigen Kapitel zur Ermittlung monatlicher Temperaturmittelwerte genutzt wurde.
In dieser Übung kehrst du zu den gdp-Daten zurück, die du früher in diesem Kapitel verwendet hast. Zusätzlich zu den statischen BIP-Werten in jedem Quartal möchtest du eine Messgröße für die BIP-Veränderung von einem Quartal zum nächsten erzeugen (mit diff()) sowie eine rollierende Summe der kumulierten BIP-Veränderung seit Jahresbeginn (mit split(), lapply() und rbind()).
Diese Übung ist Teil des Kurses
Fallstudie: Zeitreihendaten von Städten in R analysieren
Anleitung zur Übung
- Verwende
diff(), um eine einfache quartalsweise Differenz ingdpzu berechnen. Gib unbedingt die Spaltegdpan und setzelagauf1Zeitraum (hier: 1 Quartal). Speichere das Ergebnis alsquarterly_diffin deinemgdp-Objekt. - Da du jetzt eine Kennzahl für die quartalsweise BIP-Veränderung hast, teile als Nächstes deine
quarterly_diff-Daten mitsplit()nach Jahren auf. Achte beim Aufruf vonsplit()darauf, die Spaltequarterly_diffvongdpanzugeben und das Argumentfauf"years"(in Anführungszeichen) zu setzen. - Verwende
lapply()auf den neu aufgeteilten Daten. Um in jedem Jahr eine kumulative Summe zu berechnen, setze das ArgumentFUNaufcumsum(ohne Anführungszeichen). - Verwende
do.call(), um deinegdpchange_ytd-Daten wieder zu einem xts-Objekt zusammenzuführen (rbind). - Untersuche abschließend die Veränderung des BIP seit Jahresbeginn (
gdpchange_xts) mitplot.xts().
Interaktive Übung
Vervollständige den Beispielcode, um diese Übung erfolgreich abzuschließen.
# Add a quarterly difference in gdp
gdp$quarterly_diff <- diff(___$___, lag = ___, differences = ___)
# Split gdp$quarterly_diff into years
gdpchange_years <- split(___$___, f = "___")
# Use lapply to calculate the cumsum each year
gdpchange_ytd <- lapply(___, FUN = ___)
# Use do.call to rbind the results
gdpchange_xts <- do.call(rbind, ___)
# Plot cumulative year-to-date change in GDP
plot.xts(___, type = "h")