Я пытаюсь эффективно суммировать элементы отдельного массива данных по их характеристикам. У меня есть три идентифицирующие характеристики (возраст, год и причина) в данном массиве, и для каждого возраста, года, причины у меня есть 1000 значений. Мне нужно добавить эти значения в другой массив данных, когда характеристики совпадают. Сейчас я делаю что-то вроде этого, где каждый набор данных равен ~ (80000, 1000):
import numpy as np
datasets = np.vstack(dataset1, dataset2)
for a in ages:
for y in years:
for c in causes:
output = np.sum(datasets[(age==a) & (year==y) & (cause==c)], axis = 0)
Однако при 60000 итерациях это невероятно медленно. Проблема в том, что массивы не обязательно имеют одинаковую форму. Какие-нибудь мысли?