If you don't care about preserving the indices, you could do something like
>>> df.merge(df2, on=["First", "Last"], how='outer', suffixes=('', '_new'))
First Last Score Score_new
0 Tom Dwan 101.5 103.5
1 Peter Laak 99.0 NaN
2 Phil Ivey 105.0 101.0
[3 rows x 4 columns]
If you do, maybe you could play around with left/right_index
, something like
>>> df.merge(df2, on=["First", "Last"], how='outer', suffixes=('', '_new'), right_index=True)
First Last Score Score_new
a Tom Dwan 101.5 103.5
b Peter Laak 99.0 NaN
c Phil Ivey 105.0 101.0
[3 rows x 4 columns]
but I don't know why those letters would be important.