Začněte nyníZačněte zdarma

Zploštění vnořených JSONů

JSON data mohou být vnořená: hodnota atributu se může skládat z dalších párů atribut–hodnota. Taková vnořená data je užitečnější rozbalit, neboli zploštit, do samostatných sloupců dataframu. Submodul pandas.io.json obsahuje funkci json_normalize(), která přesně tohle zajistí.

Data z odpovědi Yelp API jsou vnořená. Tvým úkolem je zploštit další úroveň dat ve sloupcích coordinates a location.

pandas (jako pd) a requests jsou již naimportované. Výsledky volání API jsou uloženy jako response.

Toto cvičení je součástí kurzu

Streamlined Data Ingestion with pandas

Zobrazit kurz

Pokyny k cvičení

  • Načti funkci json_normalize() ze submodulu io.json knihovny pandas.
  • Izoluj JSON data z response a ulož je do proměnné data.
  • Pomocí json_normalize() zplošti data o podnicích a načti je do dataframu cafes. Nastav argument sep tak, aby se jako oddělovač používalo podtržítko (_) místo tečky.
  • Zobraz prvních několik řádků data.

Interaktivní cvičení na vyzkoušení si v praxi

Vyzkoušejte si toto cvičení dokončením tohoto ukázkového kódu.

# 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())
Upravit a spustit kód