【发布时间】:2019-09-30 12:38:16
【问题描述】:
我有一个 pandas 数据框,在数据框中我有两个系列/列,我希望将它们组合成一个新的系列/列。我已经有一个 for 循环可以满足我的需要,但我宁愿它在列表理解中,但我无法弄清楚。我的代码也需要相当长的时间来执行。我读到列表推导运行得更快,也许有更快的方法?
如果“lead_owner”中的值与“agent_final”中的不同/唯一值匹配,则使用该值。否则使用'agent_final'中的值
for x, y in zip(list(df['lead_owner']), list(df['agent_final'])):
if x in set(df['agent_final']):
my_list .append(x)
else:
my_list .append(y)
【问题讨论】:
-
你试过了吗
df['concatenated_col'] = df['lead_owner'] + df['agent_final'] -
看起来您希望交叉点添加代理列表。看看这个:SO Answer
-
我不希望它们串联。如果“lead_owner”中的值与“agent_final”中的不同/唯一值匹配,则使用该值。否则使用“agent_final”中的值。
-
你能发布一些示例数据吗?