У меня есть этот код, и он хорошо работает
data = np.array([1, 2, 3, 4, 5, 6])
parameters = np.array([[2, 0.5], [2]])
functions = np.array([lambda x, p: x + p[0]*p[1], lambda x, p: x * p[0]])
def f(data, parameters, functions):
return np.array([f(data, p) for f, p in zip(functions, parameters)])
print(f(r))
Это результат
[[ 2. 3. 4. 5. 6. 7.]
[ 2. 4. 6. 8. 10. 12.]]
Но я думаю, что должен быть лучший способ, как написать внутри функцииf()
.Функция zip и понимание списка кажется мне очень неэффективной.Я бы знал, что делать, если не было бы функций, но скаляров, но функции и их параметры усложняют процесс.
Это только пример.Данные переменных, параметры и функции - это массивы, которые я получил из предыдущего кода.Здесь приведены только для иллюстрации этого примера.
Буду признателен за любой совет.Спасибо