Использование pd.concat :
result = pd.concat([df[['time', 'bis', 'go']],
pd.DataFrame.from_records(df.details),
pd.DataFrame.from_records(df['as'])], axis=1)
print(result)
Вывод
time bis go direction label media a b
0 01:20 abc yes nord one yes 12 20
1 01:25 def no est one no 2 15
Вы можете изменить порядок столбцов следующим образом:
result = result[['time', 'direction', 'label', 'media', 'bis', 'a', 'b', 'go']]