在Python中,我想为数组计算一个函数,然而,一个成对的数组(或者更一般的数组)。
我知道我可以对标量数组执行此操作:
def f_test(scalar, pair):
return scalar + pair[0] + pair[1]
result = f_test(numpy.linspace(0, 9, 10), [3, 4])
并得到期望的结果:
[ 7. 8. 9. 10. 11. 12. 13. 14. 15. 16.]
因此,该对是固定的,标量是从数组中获取的。
问题是:可以用另一种方式吗?标量保持不变。。。
是否可以从向量中提取对,以再次获得与结果长度相同的向量?
这是for(类似于,例如,不一定是numpy.array)
scalar = 0
pair = numpy.array([ [1,2], [3,7], [5,8] ])
获得
[ 3, 10, 13 ]
而不是
[4, 9]
注意:为了保持示例的简单性,我简化了需要对数字执行的操作。
如果无法完成或更一般:
最佳实践是什么(在Python中!)要在大量阵列上执行相同的操作?
注意:我在搜索这个主题,甚至发现了一些类似的问题。然而,我不确定他们是否真的一样,更重要的是没有找到答案。在我看来,这是一个普遍需要的手术,我问了一个单独的问题。