df1 = df1.apply(closest, axis=1)
cols = ['date_start_time', 'employee_id', 'session_id']
print(df1.merge(df2, on=cols, how='outer')[cols])
слияние панд на основе временной метки, которая не совпадает точно