LoslegenKostenlos loslegen

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

Kurs anzeigen

Anleitung zur Übung

  • Verwende diff(), um eine einfache quartalsweise Differenz in gdp zu berechnen. Gib unbedingt die Spalte gdp an und setze lag auf 1 Zeitraum (hier: 1 Quartal). Speichere das Ergebnis als quarterly_diff in deinem gdp-Objekt.
  • Da du jetzt eine Kennzahl für die quartalsweise BIP-Veränderung hast, teile als Nächstes deine quarterly_diff-Daten mit split() nach Jahren auf. Achte beim Aufruf von split() darauf, die Spalte quarterly_diff von gdp anzugeben und das Argument f auf "years" (in Anführungszeichen) zu setzen.
  • Verwende lapply() auf den neu aufgeteilten Daten. Um in jedem Jahr eine kumulative Summe zu berechnen, setze das Argument FUN auf cumsum (ohne Anführungszeichen).
  • Verwende do.call(), um deine gdpchange_ytd-Daten wieder zu einem xts-Objekt zusammenzuführen (rbind).
  • Untersuche abschließend die Veränderung des BIP seit Jahresbeginn (gdpchange_xts) mit plot.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")
Code bearbeiten und ausführen