out = np.zeros_like(array)
for f, start, end in zip(func_table, func_ranges, func_ranges[1:]):
    ix = func_argsort[start:end]
out[ix] = f(array[ix])
return out
Эффективный алгоритм для оценки одномерного массива функций в одномерном массиве numpy одинаковой длины