1 回答
TA贡献1725条经验 获得超7个赞
可能有点矫枉过正,但是JMESPath
查询嵌套的 JSON 结构真的很容易。
向下遍历文档,您首先需要获取数组 ( [*]
) 中的每个元素,然后为每个元素选择项目并将其放入一个对象(Python 字典)中。您将选择下方的社区properties
,然后选择Name
( properties.Name
)。您对类似的嵌套属性执行相同的操作。
坐标位于其下geometry.coordinates
,是坐标对数组的数组。
import jmespath
import pandas as pd
query = """
[*].{
Neighborhood: properties.Name,
Neighborhood_ID: properties.Neighborhood_ID,
SqMiles: properties.SqMiles,
Latitude: geometry.coordinates[0][0][0][0],
Longitude: geometry.coordinates[0][0][0][1]
}
"""
compiled = jmespath.compile(query)
result = compiled.search(boston_neighborhoods)
df = pd.DataFrame.from_records(result)
# Neighborhood Neighborhood_ID SqMiles Latitude Longitude
# 0 Roslindale None 2.51 -71.125927 42.272013
添加回答
举报