为了账号安全,请及时绑定邮箱和手机立即绑定

从另一列列表中获取一列列表中的项目索引

从另一列列表中获取一列列表中的项目索引

慕桂英4014372 2023-04-18 17:24:37
我有一个包含两列的数据框column_1                column_2["apple","orange"]      ["orange", "apple"]["banana"]              ["apple"]我想要一个结果列,它会column_2告诉column_1. 如果不存在则返回 -1。例如:输出将是output_column[1,0][-1]
查看完整描述

1 回答

?
慕尼黑8549860

TA贡献1818条经验 获得超11个赞

如果您的子列表很小:


df['output_column'] = df.apply(lambda x:[x.column_1.index(item) if item in x.column_1 else -1 for item in x.column_2],axis=1)

如果您的子列表很大:


df['output_column'] = df.apply(lambda x:[dict((value,idx) for idx,value in enumerate(x.column_1)).get(item,-1) for item in x.column_2],axis=1)

输出:


          column_1         column_2 output_column

0  [apple, orange]  [orange, apple]        [1, 0]

1         [banana]          [apple]          [-1]


查看完整回答
反对 回复 2023-04-18
  • 1 回答
  • 0 关注
  • 104 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信