在同一数据数组上应用多个参数函数

时间:2018-12-06 15:10:19

标签: numpy

我有此代码,并且效果很好

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和列表理解对我来说似乎无效。如果没有标量,但如果没有函数,但是函数及其参数使我很难做,我会知道该怎么办。

这仅是示例。变量数据,参数和函数是我从先前代码中获得的numpy数组。在这里设置只是为了说明此示例。

我将不胜感激。谢谢

0 个答案:

没有答案