import pandas as pd from io import StringIO #df1 = pd.DataFrame({'Teilenummer': ['709000031_A', '825304002', '825304003', '825304004', '825304006', '825304007', '825304008', '0_A3000020'], #'Laufende Materialkosten': [43.22, 26.19, 30.49, 25.85, 32.35, 23.99, 19.25, 0] }) #df2 = pd.DataFrame({'Teilenummer':['825304002', '709000031_A']}) df1 = pd.read_json( '''{"Teilenummer":{"0":"709000031_A","1":"825304002","2":"825304003","3":"825304004","4":"825304006","5":"825304007","6":"825304008","7":"0_A3000020"}, "Laufende Materialkosten":{"0":43.22,"1":26.19,"2":30.49,"3":25.8547,"4":32.3574812376,"5":23.99,"6":19.25,"7":null}}''' ) df2 = pd.read_json( '''{"Teilenummer":{"0":825304002,"1":"709000031_A"}}''' ) print(df1.dtypes) print(df2.dtypes) df1['Teilenummer'] = df1['Teilenummer'].astype(str) df2['Teilenummer'] = df2['Teilenummer'].astype(str) print(df1.dtypes) print(df2.dtypes) #print(df1) #print(df2) #print(df1.to_json()) #print(df2.to_json()) newdf = df1.merge(df2, on='Teilenummer', how='inner') print(newdf)