key를 이용한 배열의 합산

2023. 5. 8. 00:05python

from collections import defaultdict

a = [{'key': '050101', 'data_array': [2.0, 0.0, 2.0, 2.0, 0.0, 0.0, 0.0]}, {'key': '050101', 'data_array': [1.6, 0.0, 1.6, 1.6, 0.0, 0.0, 0.0]}, {'key': '050101', 'data_array': [1.0, 0.0, 1.0, 1.0, 0.0, 1.0, 0.0]}, {'key': '050101', 'data_array': [0.0, 0.0...

cumulative_sums = defaultdict(list)

for d in a:
    key = d['key']
    data_array = d['data_array']
    cumulative_sums[key].append(data_array)

for key in cumulative_sums:
    cumulative_sums[key] = [sum(x) for x in zip(*cumulative_sums[key])]

print(dict(cumulative_sums))

 

 

{
  '050101': [13.2, 0.0, 13.2, 11.2, 3.6, 4.0, 6.2], 
  '050201': [0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0]
}