我有一个非常大的包含竞选财务数据的数据框-该数据框有一列代表候选人的委员会名称,但没有一个代表候选人名称的列。
如何根据委员会名称自动为候选人名称添加新列?我希望代码读取每行中的委员会名称,然后分配适当的候选人名称。
答案 0 :(得分:2)
假设委员会名称和候选人名称之间存在一对一的映射(可以在词典中描述),则只需使用map函数。
示例代码:
>>> import pandas as pd
>>> data = pd.DataFrame([["A"], ["B"], ["A"], ["C"]], columns=["Committee Name"])
>>> data
Committee Name
0 A
1 B
2 A
3 C
>>> committee_name_mapping = {"A": "AName", "B": "BName", "C": "CName"}
>>> data["Candidate Name"] = data["Committee Name"].map(committee_name_mapping)
>>> data
Committee Name Candidate Name
0 A AName
1 B BName
2 A AName
3 C CName