我有一个多输入函数,比如说:
def bla(a, b):
f = a + b
return f
当我做类似的事情
import numpy as np
bla(np.asarray([0.2,0.4]), np.asarray([2,4]))
结果是:
array([ 2.2, 4.4])
但是,我希望将bla
应用于我的每一对可能的输入(bla(0.2, 2)
,bla(0.2, 4)
,bla(0.4, 2)
,bla(0.4, 4)
),并获得作为二维矩阵的最终结果。在本例中,我希望结果是:
array([[2.2, 4.2],
[2.4, 4.4]
])
我该怎么做? 我最初的问题是,我有一个三个变量和一个输出的函数,然后我想通过输入每个变量的向量来调用这个函数,这样我就得到了一个三维矩阵
不确定是否要在不修改
bla()
的情况下执行此操作,但对于您的示例,至少这是必须进行更改的地方:它对数组
a
进行操作,每个b
的元素,并用结果构建一个数组。你的例子看起来有点随机(你是怎么得到那些.3
分数部分的?),但我猜这就是你想要表达的意思。你知道吗如果函数
bla
可以接受数组而不是标量,则可以使用 meshgrid准备输入,以便bla(A, B)
返回所需的输出:收益率
相关问题 更多 >
编程相关推荐