我有一个这样的数据框,
df
col1 col2
A [1,2]
B [3,4]
C [1,4,5]
another dataframe,
df1
col3 col4
1 X
2 Y
3 Z
4 W
现在,我想使用df的col2和df1的col3合并/合并这两个数据帧,因此数据帧应如下所示:
col1 col2 col4
A [1,2] [X,Y]
B [3,4] [Z,W]
C [1,4,5] [X,W]
寻找一些熊猫捷径。
仅当匹配值时,才将列表推导与按字典映射一起使用:
d = df1.set_index('col3')['col4'].to_dict()
df['col4'] = df['col2'].map(lambda x: [d[y] for y in x if y in d])
print (df)
col1 col2 col4
0 A [1, 2] [X, Y]
1 B [3, 4] [Z, W]
2 C [1, 4, 5] [X, W]
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句