Verwendung von merge_asof() zur Datensatzerstellung
Die Funktion merge_asof()
kann verwendet werden, um Datensätze zu erstellen, bei denen du eine Tabelle mit Start- und Enddaten hast und diese verwenden möchtest, um Flags in einer anderen Tabelle zu erstellen. Du hast die Tabelle gdp
erhalten, in der sich die vierteljährlichen BIP-Werte der USA aus den 1980er-Jahren befinden. Außerdem hast du die Tabelle recession
erhalten. Sie enthält das Anfangsdatum jeder US-Rezession seit 1980 und das Datum, an dem die Rezession für beendet erklärt wurde. Verwende merge_asof()
, um die Tabellen zu verknüpfen und Flags an den Stellen einzufügen, wo ein Quartal eine Rezession durchlief. Um deine Arbeit zu überprüfen, kannst du die Daten in einem Balkendiagramm darstellen.
Die Tabellen gdp
und recession
wurden für dich geladen.
Diese Übung ist Teil des Kurses
Daten mit pandas verknüpfen
Anleitung zur Übung
- Benutze
merge_asof()
, umgdp
undrecession
anhand vondate
zu verknüpfen, wobeigdp
die linke Tabelle ist. Speichere dies in der Variablengdp_recession
. - Erstelle eine Liste per Listenabstraktion mit einem bedingten Ausdruck namens
is_recession
. Dabei soll für jede Zeile geprüft werden, obgdp_recession['econ_status']
gleich „recession“ ist. Falls ja, wird'r'
eingetragen, anderenfalls'g'
. - Erstelle für
gdp_recession
ein Balkendiagramm mitgdp
unddate
auf den Achsen und setze das Argumentcolor
gleichis_recession
.
Interaktive Übung zum Anfassen
Probieren Sie diese Übung aus, indem Sie diesen Beispielcode ausführen.
# 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()