gpt4 book ai didi

python - 如何将字典附加到 Pandas 数据框?

转载 作者:太空狗 更新时间:2023-10-29 18:30:26 27 4
gpt4 key购买 nike

我有一组包含 json 文件的 url 和一个空的 pandas 数据框,其中包含代表 jsnon 文件属性的列。并非所有 json 文件都具有 pandas 数据框中的所有属性。我需要做的是从 json 文件中创建字典,然后将每个字典作为新行附加到 pandas 数据框中,如果 json 文件没有与数据框中的列匹配的属性,则必须是填空。

我设法创建字典:

import urllib2
import json

url = "https://cws01.worldstores.co.uk/api/product.php?product_sku=ULST:7BIS01CF"
data = urllib2.urlopen(url).read()
data = json.loads(data)

然后我尝试创建一个 for 循环,如下所示:

row = -1
for i in links:
row = row + 1
data = urllib2.urlopen(str(i)).read()
data = json.loads(data)
for key in data.keys():
for column in df.columns:
if str(column) == str(key):
df.loc[[str(column)],row] = data[str(key)]
else:
df.loc[[str(column)],row] = None

其中 df 是数据框,links 是一组 url

但是,我收到以下错误:

raise KeyError('%s not in index' % objarr[mask])

KeyError: "['2_seater_depth_mm'] not in index"

其中 ['2_seater_depth_mm'] 是 pandas 数据框的第一列

最佳答案

对我来说,下面的代码有效:

row = -1
for i in links:
row = row + 1
data = urllib2.urlopen(str(i)).read()
data = json.loads(data)
for key in data.keys():
df.loc[row,key] = data[key]

您在 .loc() 中混合了参数的顺序并且有一对多的 []

关于python - 如何将字典附加到 Pandas 数据框?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31695108/

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