df1.merge(df2,left_on='name1', right_on='name2').merge(df3,left_on='name1', right_on='name3')
.drop(columns=['name2', 'name3']).rename(columns={'name1':'name'})