考虑这个简化的DF:
import pandas as pd
data = { 'Name_Type': ["Primary", "Primary", "AKA", "Primary"],
'Name': ["John", "Daniel", "Dan", "Bob"],
'Surname': ["Green", "Brown", "Brown", "White"],
'Country Type': ["Origin", "Origin", None, "Origin"],
'Country': ["UK", "UK", None, "UK"],
'Other': ["Info", None, None, "Info"]}
df = pd.DataFrame(data)
Name_Type Name Surname Country Type Country Other
0 Primary John Green Origin UK Info
1 Primary Daniel Brown Origin UK None
2 AKA Dan Brown None None None
3 Primary Bob White Origin UK Info
因此,我想在具有Origin而不是无的每一行下添加新值.如果已经生成的行下有"无"(如示例中的第2行),我想将值"公民身份"添加到"国家类型"列中,并将值"英国"添加到该行的"国家"中.如果没有行,我想在当前行下创建一个新行并添加相同的值.所以最终的输出将是这样的:
Name_Type Name Surname Country Type Country Other
0 Primary John Green Origin UK Info
1 None None None Citizenship UK None
2 Primary Daniel Brown Origin UK None
3 AKA Daniel Brown Citizenship UK None
4 Primary Bob White Origin UK Info
5 None None None Citizenship UK None