Verschachtelte JSONs entpacken
Ein Merkmal von JSON-Daten ist, dass sie verschachtelt sein können: Der Wert eines Attributs kann wiederum aus Attribut-Wert-Paaren bestehen. Diese verschachtelten Daten sind entpackt, also in eigenen DataFrame-Spalten, oft hilfreicher. Das pandas.io.json-Submodul hat dafür die Funktion json_normalize().
Die Antworten der Yelp-API sind verschachtelt. Deine Aufgabe ist es, die nächste Ebene der Daten in den Spalten coordinates und location zu entpacken.
pandas (als pd) und requests wurden importiert. Die Ergebnisse des API-Aufrufs sind in response gespeichert.
Diese Übung ist Teil des Kurses
Vereinfachte Datenaufnahme mit pandas
Anleitung zur Übung
- Lade die Funktion
json_normalize()aus demio.json-Submodul vonpandas. - Isoliere die JSON-Daten aus
responseund weise siedatazu. - Verwende
json_normalize(), um die Unternehmensdaten in einen DataFramecafeszu entpacken. Setze das Argumentsepso, dass Unterstriche (_) statt Punkten verwendet werden. - Zeige den Kopf von
dataan.
Interaktive Übung
Vervollständige den Beispielcode, um diese Übung erfolgreich abzuschließen.
# Load json_normalize()
____
# Isolate the JSON data from the API response
data = ____
# Flatten business data into a dataframe, replace separator
cafes = ____(data["businesses"],
____)
# View data
print(cafes.head())