gpt4 book ai didi

python - 将数据框中的嵌套列表列更改为字典?

转载 作者:行者123 更新时间:2023-12-01 08:56:04 27 4
gpt4 key购买 nike

我的问题有两个:

我有一个 pandas 数据框,其中一列是以下形式的嵌套列表:

[['linkedin', '...'], ['country', '...'], ['location', 'United Kingdom London London'], ['city', 'London'], ['state', 'London']...]

我想将列中的每个条目更改为字典,以便我实际上可以使用键访问这些项目:

{'linkedin': '...', 'country': 'United Kingdom', 'location': 'United Kingdom London London', 'city': 'London', 'state': 'London'..}

虽然这似乎可以通过使用 dict 对单个条目进行类型转换来完全实现,但实际上我在设法对所有列条目执行此操作时遇到困难。例如,我尝试了以下方法以及 for 循环,但遇到了困难:

df['graphResults']=df['graphResults'].astype(dict)

df['graphResults']=dict(df['graphResults'])

for(x in range(0,df.shape[0])):
df.graphResults[x] = dict(df.graphResults[x])

这是如何完成的?

其次,在实现此目标后,我想实际获取一些字段并将它们添加为数据框中自己的列。有没有简单的方法?

最佳答案

将我的评论作为答案。在 graphResults 上使用 apply 来转换为 dict。根据这些值,您可以创建一个新的 DataFrame 并与原始 DataFrame 连接。

df.join(pd.DataFrame.from_records(df['graphResults'].apply(dict).values))

要仅选择某些字段,您可以执行以下操作:

df.join(pd.DataFrame.from_records(df['graphResults'].apply(dict).values)[['country', 'location']])

上面只会添加 locationcountry 字段。

关于python - 将数据框中的嵌套列表列更改为字典?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52760195/

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