I have two pandas data frames, a and b:
pandas
a
b
a1 a2 a3 a4 a5 a6 a7 1 3 4 5 3 4 5 0 2 0
One way of merge
merge
s=df1.T.reset_index().merge(df2.T.assign(match=lambda x : x.index)) dict(zip(s['index'],s['match'])) {'a1': 'b5', 'a2': 'b7', 'a3': 'b6', 'a4': 'b4', 'a5': 'b1', 'a6': 'b3', 'a7': 'b2'}