Adaugă o sumă rulantă discretă la datele PIB
Deși este util să știi cât de mult s-a schimbat valoarea de la o perioadă la alta, s-ar putea să vrei să cunoști schimbarea totală față de începutul anului. Pentru a genera acest tip de indicator, poți folosi tiparul split-lapply-rbind. Acest proces este similar cu cel utilizat pentru calcularea mediilor lunare ale temperaturii din capitolul anterior.
În acest exercițiu, vei reveni la datele gdp folosite mai devreme în capitol. Pe lângă valorile statice ale PIB pentru fiecare trimestru, vei genera o măsură a variației PIB de la un trimestru la altul (folosind diff()), precum și o sumă rulantă a variației PIB de la începutul anului (folosind split(), lapply() și rbind()).
Acest exercițiu face parte din cursul
Studiu de caz: Analiza seriilor de timp pentru un oraș în R
Instrucțiuni pentru exercițiu
- Folosește
diff()pentru a calcula o diferență trimestrială simplă îngdp. Asigură-te că specifici coloanagdpși setezilagegal cu1perioadă (în acest caz, 1 trimestru). Salvează rezultatul în obiectulgdpcaquarterly_diff. - Acum că ai o măsură a variației trimestriale a PIB, pasul următor este să împarți datele din
quarterly_diffpe ani folosindsplit(). În apelul lasplit(), asigură-te că specifici coloanaquarterly_diffdingdpși setezi argumentulfegal cu"years"(cu ghilimele). - Folosește
lapply()pe datele proaspăt împărțite. Pentru a calcula o sumă cumulativă în fiecare an, setează argumentulFUNegal cucumsum(fără ghilimele). - Folosește
do.call()pentru a uni datelegdpchange_ytdînapoi într-un obiect xts curbind. - În final, folosește
plot.xts()pentru a examina variația PIB de la începutul anului (gdpchange_xts).
Exercițiu interactiv practic
Încearcă acest exercițiu completând acest cod de exemplu.
# 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")