gpt4 book ai didi

python - 通过将字典中的值映射到现有列来在数据框中创建新列

转载 作者:行者123 更新时间:2023-11-28 22:18:01 24 4
gpt4 key购买 nike

我有这样一本字典:

dictionary = {100:[1, 2], 110:[3, 4], 
120:[5, 6, 7], 130:[8, 9],
140:[10, 11, 12, 13],
150:[14, 15]}

我已经有一个现有列“A”,我想创建一个新列“B”并将值映射回每个键,但以数据框格式显示它。这是我希望收到的输出:

 #Column A is the existing column. Column B is the new one to be created
A B
4 110
8 130
15 150
7 120
7 120
4 110
9 130
1 100
2 100

如何做到这一点?帮助将不胜感激。提前致谢!

最佳答案

通过理解覆盖你的字典。然后将 pd.Series.map 与您的新词典一起使用:

d = {100:[1, 2], 110:[3, 4], 120:[5, 6, 7], 130:[8, 9], 
140:[10, 11, 12, 13], 150:[14, 15]}

d_rev = {w: k for k, v in d.items() for w in v}

df['B'] = df['A'].map(d_rev)

print(df)

A B
0 4 110
1 8 130
2 15 150
3 7 120
4 7 120
5 4 110
6 9 130
7 1 100
8 2 100

关于python - 通过将字典中的值映射到现有列来在数据框中创建新列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50842580/

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