第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問(wèn)題,去搜搜看,總會(huì)有你想問(wèn)的

使用 Python 從 JSON 嵌套列表和字符串?dāng)?shù)組中提取值

使用 Python 從 JSON 嵌套列表和字符串?dāng)?shù)組中提取值

慕婉清6462132 2023-03-16 17:05:34
我正在嘗試從 JSON 數(shù)據(jù)集中從馬薩諸塞州波士頓的多個(gè)社區(qū)中提取坐標(biāo),但我一直在嘗試獲取每個(gè)城市的第一個(gè)坐標(biāo)對(duì);下面是 Roslindale 坐標(biāo)的縮小版。"features": [{    "type": "Feature",    "properties": {      "Name": "Roslindale",      "Acres": 1605.5682375,      "SqMiles": 2.51,    },    "geometry": {      "type": "MultiPolygon",      "coordinates": [        [          [            [              -71.125927174853857,              42.272013107957406            ],            [              -71.125927174853857,              42.272013107957406            ]          ]        ],        [          [            [              -71.125830766767592,              42.272212845889705            ],            [              -71.125830766767592,              42.272212845889705            ]          ]        ],        [          [            [              -71.125767203228904,              42.272315958536389            ],            [              -71.125767203228904,              42.272315958536389            ]          ]        ]      ]    }  },現(xiàn)在我已經(jīng)提取了我想要使用的數(shù)據(jù)for data in boston_neighborhoods:    neighborhood_name = data['properties']['Name']    neighborhood_id = data['properties']['Neighborhood_ID']    neighborhood_size = data['properties']['SqMiles']    neighborhood_latlon = data['geometry']['coordinates']    neighborhood_lat = neighborhood_latlon    neighborhood_lon = neighborhood_latlon    neighborhoods = neighborhoods.append({'Neighborhood': neighborhood_name,                                          'Neighborhood_ID': neighborhood_id,                                          'SqMiles': neighborhood_size,                                          'Latitude': neighborhood_lat,                                          'Longitude': neighborhood_lon}, ignore_index=True)這將返回多個(gè)坐標(biāo)對(duì),但我只想要第一對(duì),下面是我現(xiàn)在返回的示例輸出:Latitude                   |           Longitude     --------------------------------------------------------[[[[-71.12592717485386,    |    [[[[-71.12592717485386, 42.272013107957406], [...  |    42.272013107957406], [...    
查看完整描述

1 回答

?
qq_遁去的一_1

TA貢獻(xiàn)1725條經(jīng)驗(yàn) 獲得超8個(gè)贊

可能有點(diǎn)矯枉過(guò)正,但是JMESPath查詢嵌套的 JSON 結(jié)構(gòu)真的很容易。

向下遍歷文檔,您首先需要獲取數(shù)組 ( [*]) 中的每個(gè)元素,然后為每個(gè)元素選擇項(xiàng)目并將其放入一個(gè)對(duì)象(Python 字典)中。您將選擇下方的社區(qū)properties,然后選擇Nameproperties.Name)。您對(duì)類似的嵌套屬性執(zhí)行相同的操作。

坐標(biāo)位于其下geometry.coordinates,是坐標(biāo)對(duì)數(shù)組的數(shù)組。

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


查看完整回答
反對(duì) 回復(fù) 2023-03-16
  • 1 回答
  • 0 關(guān)注
  • 258 瀏覽
慕課專欄
更多

添加回答

舉報(bào)

0/150
提交
取消
微信客服

購(gòu)課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)