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

如何有效地将嵌套的 Google 地图高程 JSON 数据转换为 Pandas DataFrame?

Patricia Arquette
发布: 2024-12-22 08:14:13
原创
786 人浏览过

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

将 JSON 高程数据转换为 Pandas DataFrame

目标: 从 Google Maps API 中提取高程数据并将其组织在 Pandas DataFrame 中。

问题:

从以下位置获取的 JSON 数据Google Maps API 高程服务包含以下格式的嵌套信息:

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

将此 JSON 导入 Pandas DataFrame 会直接导致分散的结构。

解决方案:

使用嵌套列表提取:

要手动分离高程,纬度和经度数据:

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
登录后复制

这将创建一个包含纬度、经度和海拔列的 DataFrame。

使用 json_normalize (Pandas v1.01 ):

使用 Pandas 的更简单方法json_normalize:

df = pd.json_normalize(data['results'])
登录后复制

这会将 JSON 数据展平为 DataFrame,其中嵌套结构中每个键都有列。

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

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