慕桂英4014372
2023-04-18 17:24:37
我有一個(gè)包含兩列的數(shù)據(jù)框column_1 column_2["apple","orange"] ["orange", "apple"]["banana"] ["apple"]我想要一個(gè)結(jié)果列,它會(huì)column_2告訴column_1. 如果不存在則返回 -1。例如:輸出將是output_column[1,0][-1]
1 回答

慕尼黑8549860
TA貢獻(xiàn)1818條經(jīng)驗(yàn) 獲得超11個(gè)贊
如果您的子列表很小:
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]
添加回答
舉報(bào)
0/150
提交
取消