I have two dataframe df1 and df2.
df1
df2
df1 = pd.DataFrame ({\'Name\': [\'Adam Smith\', \'Anne Kim\', \'John Weber\', \'Ian Ford\'],
Not sure if fuzzy match is what you are looking for. Maybe make every name a proper name?
df1.Name = df1.Name.apply(lambda x: x.title()) df2.Name = df2.Name.apply(lambda x: x.title()) pd.merge(df1, df2, how='inner', on='Name')