如何根据数据框中另一列的值将数据输入到新列中?

时间:2019-12-18 19:19:48

标签: python pandas dataframe

我有一个非常大的包含竞选财务数据的数据框-该数据框有一列代表候选人的委员会名称,但没有一个代表候选人名称的列。

如何根据委员会名称自动为候选人名称添加新列?我希望代码读取每行中的委员会名称,然后分配适当的候选人名称。

1 个答案:

答案 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