Применить несколько параметрических функций к одному массиву данных - PullRequest
0 голосов
/ 06 декабря 2018

У меня есть этот код, и он хорошо работает

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 и понимание списка кажется мне очень неэффективной.Я бы знал, что делать, если не было бы функций, но скаляров, но функции и их параметры усложняют процесс.

Это только пример.Данные переменных, параметры и функции - это массивы, которые я получил из предыдущего кода.Здесь приведены только для иллюстрации этого примера.

Буду признателен за любой совет.Спасибо

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...