l = [OrderedDict([('type', k), (_map[k], [d[_map[k]] for d in g])]) for k,
    g in groupby(lst, lambda x: x['type'])]
print(l)
Объединение нескольких словарей на основе общего значения ключа в один словарь