gpt4 book ai didi

Python:将非结构化 JSON 中 'WASHINGTON' 的所有实例更改为 'District of Columbia'

转载 作者:行者123 更新时间:2023-12-01 08:40:31 24 4
gpt4 key购买 nike

我有一些非结构化 JSON,如下所示:

{
"Entities": [{
"BeginOffset": 19, "EndOffset": 32, "Score": 2.0,
"Text": "WASHINGTON", "Type": "LOCATION"
}, {
"BeginOffset": 33, "EndOffset": 35, "Score": 1,
"Text": "Ha", "Type": "LOCATION"
}, {
"BeginOffset": 36, "EndOffset": 39, "Score": 2.2,
"Text": "JAN", "Type": "LOCATION"
}],
"File": "sample.txt",
"Line": 11
}

我将其上传到 Elasticsearch 以在 Kibana 中使用 - 但地理标记功能提供了华盛顿州的坐标,而不是我们尊敬的首都哥伦比亚特区的坐标。我需要 DC 坐标。

上面的 JSON 全部包含 WASHINGTON - 我想将每个 WASHINGTON 更改为 哥伦比亚特区。我正在使用 Google Maps API 对 JSON 中的位置进行地理标记:

if str(json_package['document']['Entities'][0]['Type']) == "LOCATION":
geocode_result = gmaps.geocode(
json_package['document'] ['Entities'][0]['Text'])

lat_long = {
'lat': geocode_result[0]['geometry']['location']['lat'],
'lon': geocode_result[0]['geometry']['location']['lng']
}

# print(lat_long)

我该如何更新这个?上面的示例显示了我如何将 lng 的所有实例更改为 lon,但同样的事情不适用于城市。我已经去了off this link

我还意识到更改文本必须在实际地理编码之前发生

最佳答案

听起来您应该能够查看每个实体并根据需要更新它们:

# Let data = your unstructured JSON object
for entity in data['Entities']:
if entity['Type'] == 'LOCATION' and entity['Text'] == 'WASHINGTON':
entity['Text'] = 'District of Columbia'

demo

关于Python:将非结构化 JSON 中 'WASHINGTON' 的所有实例更改为 'District of Columbia',我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53522937/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com