我试图在pandas中生成一个新列,它依赖于数据帧中其他两个系列的值。我想知道最有效的方法是什么
我有一个包含3列的数据框:Tasks、Primary User、Secondary User
df = pd.DataFrame({'Task':list('ABC'),
'Primary User':['Alan','Ben','Christine'],
'Secondary User':['Dan','Eve','Fran']})
print (df)
Task Primary User Secondary User
0 A Alan Dan
1 B Ben Eve
2 C Christine Fran
我想在数据中生成一个名为“Username”的附加序列
用户名应来自以下列表:
userNames = [('Alan','alan123'), ('Ben', None), ('Christine', None), ('Dan', 'dan789'), ('Eve', 'Eve234'), ('Christine', None)]
username列只有一个用户名,并且将采用主要用户的用户名,除非主要用户的username = None
,否则它将提取次要用户的用户名。如果两个users =None
,则填充“Error”
输出应为:
我一直在努力创建这个if站
首先用元组列表创建字典,第一列为^{} ,第二列与^{} 相似,如果值与
Primary User
不匹配,则替换nan:细节:
相关问题 更多 >
编程相关推荐