首页 > 后端开发 > Python教程 > 如何将 Google 地图高程 JSON 数据转换为 Pandas DataFrame?

如何将 Google 地图高程 JSON 数据转换为 Pandas DataFrame?

Susan Sarandon
发布: 2024-12-09 14:58:09
原创
925 人浏览过

How to Convert Google Maps Elevation JSON Data to a Pandas DataFrame?

JSON 到 Pandas DataFrame:转换海拔数据

本文解决了将从 Google Maps API 获取的 JSON 海拔数据转换为表格的问题Pandas DataFrame。

JSON 数据类似于以下内容格式:

{
   "results" : [
      {
         "elevation" : 243.3462677001953,',
         "location" : {
            "lat" : 42.974049,',
            "lng" : -81.205203',
         },
         "resolution" : 19.08790397644043',
      },
      {
         "elevation" : 244.1318664550781,',
         "location" : {
            "lat" : 42.974298,',
            "lng" : -81.19575500000001',
         },
         "resolution" : 19.08790397644043',
      }',
   ],
   "status" : "OK"',
}
登录后复制

目标是将海拔、纬度和经度数据提取到 DataFrame 中,其中包含标题为“海拔”、“纬度”和“经度”的列。

最初尝试的 pd.read_json(elevations) 方法无法产生所需的结果。然而,一种改进的方法利用 Pandas 的 json_normalize() 函数,它将 JSON 数据扁平化为 DataFrame。代码如下:

from urllib2 import Request, urlopen
import json

import pandas as pd    

path1 = '42.974049,-81.205203|42.974298,-81.195755'
request=Request('http://maps.googleapis.com/maps/api/elevation/json?locations='+path1+'&sensor=false')
response = urlopen(request)
elevations = response.read()
data = json.loads(elevations)
df = pd.json_normalize(data['results'])
登录后复制

此操作生成所需的 DataFrame 格式,包含三列:“海拔”、“纬度”和“经度”。

以上是如何将 Google 地图高程 JSON 数据转换为 Pandas DataFrame?的详细内容。更多信息请关注PHP中文网其他相关文章!

来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
作者最新文章
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板