2 回答

TA貢獻(xiàn)1817條經(jīng)驗(yàn) 獲得超6個(gè)贊
您可以創(chuàng)建一個(gè)字典,to_dict然后使用replace:
df.replace(ndf.set_index('A').to_dict()['B'])
輸出:
A
1 apple
2 b
3 apple
4 d
5 duck
詳情:
print(ndf.set_index('A'))
A
a apple
2 pen
6 sky
e duck
print(ndf.set_index('A').to_dict())
{'B': {'a': 'apple', '2': 'pen', '6': 'sky', 'e': 'duck'}}
print(ndf.set_index('A').to_dict()['B'])
{'a': 'apple', '2': 'pen', '6': 'sky', 'e': 'duck'}
print(df.replace(ndf.set_index('A').to_dict()['B']))
A
1 apple
2 b
3 apple
4 d
5 duck

TA貢獻(xiàn)1842條經(jīng)驗(yàn) 獲得超21個(gè)贊
dict從創(chuàng)建ndf,將其映射到df。combine_first將結(jié)果用于df.A。
df.A.map(dict(zip(ndf.A,ndf.B))).combine_first(df.A)
1 apple
2 b
3 apple
4 d
5 duck
Step by Step
`d= dict(zip(ndf.A,ndf.B))`#Create dict
df['C']= df.A.map(d)# map dict to df.A
df.A=df.C.combine_first(df.A)#Update df.A
添加回答
舉報(bào)