Aan de slagGa gratis aan de slag

merge_asof() gebruiken om een gegevensset te maken

De functie merge_asof() kun je gebruiken om gegevenssets te maken wanneer je een tabel met begin- en einddatums hebt en die wilt gebruiken om een vlag in een andere tabel te zetten. Je hebt gdp gekregen, een tabel met kwartaalcijfers van het Amerikaanse bbp in de jaren tachtig. Daarnaast is de tabel recession gegeven. Die bevat voor elke recessie in de VS sinds 1980 de begindatum en de datum waarop de recessie officieel voorbij was. Gebruik merge_asof() om de tabellen samen te voegen en een statusvlag te maken als een kwartaal tijdens een recessie viel. Plot tot slot de gegevens in een staafdiagram om je werk te controleren.

De tabellen gdp en recession zijn voor je geladen.

Deze oefening maakt deel uit van de cursus

Data samenvoegen met pandas

Cursus bekijken

Oefeninstructies

  • Gebruik merge_asof() om gdp en recession te mergen op date, met gdp als linkertabel. Sla het op in de variabele gdp_recession.
  • Maak een list met een list comprehension en een voorwaardelijke expressie, genaamd is_recession, waarbij je voor elke rij 'r' invoert als de waarde van gdp_recession['econ_status'] gelijk is aan 'recession', anders 'g'.
  • Gebruik gdp_recession om een staafdiagram te plotten van gdp tegen date, en stel het argument color in op is_recession.

Praktische interactieve oefening

Probeer deze oefening eens door deze voorbeeldcode in te vullen.

# Merge gdp and recession on date using merge_asof()
gdp_recession = ____

# Create a list based on the row value of gdp_recession['econ_status']
is_recession = ['____' if s=='recession' else '____' for s in gdp_recession['econ_status']]

# Plot a bar chart of gdp_recession
gdp_recession.plot(kind=____, y=____, x=____, color=____, rot=90)
plt.show()
Code bewerken en uitvoeren