gpt4 book ai didi

python - 如何将键映射到多个值到数据框列?

转载 作者:太空狗 更新时间:2023-10-30 00:01:04 24 4
gpt4 key购买 nike

我有一个看起来像这样的 df 列:

col1
Non Profit
Other-501c3
501c3
Sole Proprietor

我如何创建一个字典对象或映射层(对所有建议开放),如果它符合条件并更改键值,我可以在其中传递任何值?

例如,如果值为 Other-501c3,则将其更改为 non-profit

示例(等号后的所有内容都需要更改为等号前的值):

1. non-profit = (Non Profit, Other-501c3, 501c3,NON-Profit, Not-for-profit).

2. Sole Proprietor = (Sole Proprietor,Sole Proprietorship)

解决方案应该是可扩展的,我可以添加更多的“键值”对

提前致谢。

最佳答案

key 创建字典,合并它们并 map :

L1 = ['Non Profit', 'Other-501c3', '501c3','NON-Profit', 'Not-for-profit']
d1 = dict.fromkeys(L1, 'non-profit')

L2 = ['Sole Proprietor','Sole Proprietorship']
d2 = dict.fromkeys(L2, 'Sole Proprietor')

d = {**d1, **d2}
print (d)
{'Non Profit': 'non-profit',
'Other-501c3': 'non-profit',
'501c3': 'non-profit',
'NON-Profit': 'non-profit',
'Not-for-profit': 'non-profit',
'Sole Proprietor': 'Sole Proprietor',
'Sole Proprietorship': 'Sole Proprietor'}

df['new'] = df['col1'].map(d)
print (df)
col1 new
0 Non Profit non-profit
1 Other-501c3 non-profit
2 501c3 non-profit
3 Sole Proprietor Sole Proprietor

关于python - 如何将键映射到多个值到数据框列?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52761376/

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