gpt4 book ai didi

python - 如何在 Python 中添加具有字典值的列

转载 作者:行者123 更新时间:2023-12-04 09:07:10 27 4
gpt4 key购买 nike

我正在尝试使用字典中的值添加一列。向您展示虚拟数据将很容易。

df = pd.DataFrame({'id':[1,2,3,2,5], 'grade':[5,2,2,1,3]})

dictionary = {'1':[5,8,6,3], '2':[1,2], '5':[8,6,2]}
请注意,并非每个 id 都在字典中,而值则是列表。我想在 df 中找到与字典中的键匹配的行,并将列表添加到一列中。因此,所需的输出将如下所示:
output = pd.DataFrame({'id':[1,2,3,2,5], 'grade':[5,2,2,1,3], 'new_column':[[5,8,6,3],[1,2],[],[1,2],[8,6,2]]})

最佳答案

这是你想要的吗?

df = df.set_index('id')
dictionary = {1:[5,8,6,3], 2:[1,2], 5:[8,6,2]}
df['new_column'] = pd.Series(dictionary)
注意:字典的键需要与数据框索引的类型(int)相同。
>>> print(df)
gender new_column
id
1 0 [5, 8, 6, 3]
2 0 [1, 2]
3 1 NaN
4 1 NaN
5 1 [8, 6, 2]
更新:
如果 'id' 是更好的解决方案列包含重复项(见下面的评论):
df['new_column'] = df['id'].map(dictionary)

关于python - 如何在 Python 中添加具有字典值的列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/63420426/

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