我有两个数据帧df1和df2。在两列_a和_b中。在df1中,两列都被填充。
import numpy as np
import pandas as pd
df1 = pd.DataFrame({'_a':[1,1,1,2,2,3,3],'_b':[3,4,5,3,3,3,9]})
df1
_a _b
0 1 4
1 3 9
2 4 3
3 2 5
在df2中,只有列_a以另一个顺序填充。我需要填充列_b与df1类似。最后,它应该是这样的:
_a _b
0 4 3
1 3 9
2 1 4
3 2 5
提前谢谢。
答案 0 :(得分:1)
我认为有两种方式可以完成
首先。使用索引
temp_df = df1.set_index('_a')
df2['_b'] = temp_df.loc[df2['_a'], '_b']
二。加入数据框
df2 = pd.merge(df2['_a'], df1, on='_a', how='left')