ÎncepețiÎncepe gratuit

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

Vezi cursul

Instrucțiuni pentru exercițiu

  • Folosește diff() pentru a calcula o diferență trimestrială simplă în gdp. Asigură-te că specifici coloana gdp și setezi lag egal cu 1 perioadă (în acest caz, 1 trimestru). Salvează rezultatul în obiectul gdp ca quarterly_diff.
  • Acum că ai o măsură a variației trimestriale a PIB, pasul următor este să împarți datele din quarterly_diff pe ani folosind split(). În apelul la split(), asigură-te că specifici coloana quarterly_diff din gdp și setezi argumentul f egal cu "years" (cu ghilimele).
  • Folosește lapply() pe datele proaspăt împărțite. Pentru a calcula o sumă cumulativă în fiecare an, setează argumentul FUN egal cu cumsum (fără ghilimele).
  • Folosește do.call() pentru a uni datele gdpchange_ytd înapoi într-un obiect xts cu rbind.
  • Î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")
Editează și rulează codul