ID = unqID_mask.cumsum() - 1
unq_coo = sorted_coo[unqID_mask]
average_values = np.bincount(ID, values[sortidx]) / np.bincount(ID)
Numpy: среднее значений, соответствующих уникальным координатным позициям