标签: python pandas dataframe jupyter-notebook python-3.6
我有一种情况,我在python中有2个数据框
df1 = { 'A':['1','2','3'], 'B':['c','d','e'] }, df2 = { 'X':['2','1'], 'Y':['n','m'] }
现在,如果A列与X列中的任何值匹配,我希望B具有对应的Y值 在这种情况下,输出:
df1 = { 'A':['1','2','3'], 'B':['m','n','e'] }
请提出建议
答案 0 :(得分:0)
使用map系列created中的set_index,用fillna替换缺失值:
map
created
set_index
fillna
df1['B'] = df1['A'].map(df2.set_index('X')['Y']).fillna(df1['B']) print (df1) A B 0 1 m 1 2 n 2 3 e