df_a = pd.DataFrame([{'a': 1, 'b': 4}, {'a': 2, 'b': 5}, {'a': 3, 'b': 6},
    {'a': 4, 'b': 8}, {'a': 1, 'b': 7}])
как выполнить внутреннее или внешнее соединение DataFrames с Pandas по непростому критерию