Objectif : Extraire les données d'élévation de l'API Google Maps et les organiser dans un Pandas DataFrame.
Une donnée JSON obtenue à partir de l'API Google Maps Le service d'élévation contient des informations imbriquées au format :
{ "results" : [ { "elevation" : 243.3462677001953, "location" : { "lat" : 42.974049, "lng" : -81.205203 }, "resolution" : 19.08790397644043 }, ... ], "status" : "OK" }
L'importation de ce JSON dans un Pandas DataFrame mène directement à une structure dispersée.
Utilisation Extraction de liste imbriquée :
Pour séparer manuellement l'élévation, la latitude et la longitude data :
data = json.loads(elevations) lat, lng, el = [], [], [] for result in data['results']: lat.append(result[u'location'][u'lat']) lng.append(result[u'location'][u'lng']) el.append(result[u'elevation']) df = pd.DataFrame([lat, lng, el]).T
Cela crée un DataFrame avec les colonnes latitude, longitude et altitude.
Utilisation de json_normalize (Pandas v1.01) :
Une approche plus simple utilisant json_normalize de Pandas :
df = pd.json_normalize(data['results'])
Cela aplatit les données JSON dans un DataFrame avec des colonnes pour chaque clé dans la structure imbriquée.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!