У меня есть два фрейма данных df1 и df2
ID Range(US) Count(US) Mean(US)
0 690 1-3 266 4.0
1 4-7 277 NaN
2 354 1-3 233 2.0
3 4-7 85 NaN
4 947 1-3 156 4.0
и
ID Range(UK) Count(UK) Mean(UK)
0 690 1-3 186 4.0
1 4-7 25 NaN
2 354 1-3 44 1.0
3 947 1-3 213 3.0
4 4-7 33 NaN
Я слился с использованием кода:
In:df=df1.merge(df2, left_on='deviceid',right_on='deviceid', how='left')
df
ID Range(US) Count(US) Mean(US) Range(UK) Count(UK) Mean(UK)
0 690 1-3 266 4.0 1-3 186 4.0
1 4-7 277 NaN 4-7 25 NaN
2 4-7 277 NaN 4-7 33 NaN
3 354 1-3 233 2.0 1-3 44 1.0
4 4-7 85 NaN 4-7 25 NaN
5 4-7 85 NaN 4-7 33 NaN
6 947 1-3 156 4.0 1-3 213 3.0
Из вышесказанного мы видим, что значения повторяются снова для некоторых значений, если они отсутствуют
Но ожидаемый результат равен
ID Range(US) Count(US) Mean(US) Range(UK) Count(UK) Mean(UK)
0 690 1-3 266 4.0 1-3 186 4.0
1 4-7 277 NaN 4-7 25 NaN
2 354 1-3 233 2.0 1-3 44 1.0
3 4-7 85 NaN Nan NaN NaN
4 947 1-3 156 4.0 1-3 213 3.0
5 4-7 Nan Nan 4-7 33 Nan