У меня есть список dicts, который определяет потоки (источник для перехода к удалению с соответствующим объемом). Теперь я хочу разделить эти потоки на ссылку (например, (источник для прыжка с громкостью, прыжок в пункт назначения с объемом) и объединить все повторяющиеся ссылки вместе, суммируя их тома.Python Reduce List of Dicts на основе совпадающих пар ключ/значение
Поскольку я новичок в python, я думаю, что будет хорошим подходом. Мой первый подход состоял бы в том, чтобы пересечь все потоки и вложить петлю через все ссылки внутри и проверить, существуют ли ссылки уже.
Но если у меня есть миллионы потоков, которые могут стать довольно неэффективен и медленный, я думаю.
Мои исходные данные выглядят так:
flows = [
{
'source': 1,
'hop': 2,
'destination': 3,
'volume': 100,
},{
'source': 1,
'hop': 2,
'destination': 4,
'volume': 50,
},{
'source': 2,
'hop': 2,
'destination': 4,
'volume': 200,
},
]
Что мой результат должен быть:
links = [
{
'source': 1,
'hop': 2,
'volume': 150,
},{
'hop': 2,
'destination': 3,
'volume': 100,
},{
'hop': 2,
'destination': 4,
'volume': 250,
},{
'source': 2,
'hop': 2,
'volume': 200,
},
]
Большое спасибо за вашу помощь!
[python pandas] (http://pandas.pydata.org/) - ваш друг – Craicerjack