Platta ut nästlade JSON-strukturer
En egenskap hos JSON-data är att den kan vara nästlad: värdet på ett attribut kan i sin tur bestå av attribut-värdepar. Sådan nästlad data är mer användbar om den packas upp, eller plattas ut, till egna kolumner i en dataram. Submodulen pandas.io.json innehåller funktionen json_normalize(), som gör just detta.
Yelp API:ets svarsdata är nästlad. Din uppgift är att platta ut nästa nivå av data i kolumnerna coordinates och location.
pandas (som pd) och requests har redan importerats. Resultaten från API-anropet är lagrade i response.
Den här övningen är en del av kursen
Effektiv datainläsning med pandas
Övningsinstruktioner
- Importera funktionen
json_normalize()från submodulenio.jsonipandas. - Isolera JSON-datan från
responseoch tilldela den tilldata. - Använd
json_normalize()för att platta ut och läsa in affärsdata till en dataram,cafes. Sätt argumentetseptill understreck (_) i stället för punkter. - Visa de första raderna i
data.
Interaktiv övning med praktiskt arbete
Testa den här övningen genom att slutföra den här exempelkoden.
# 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())