我正在写一个使用辛普森法则进行积分的代码。由于辛普森积分的过程非常类似于2个向量的点积,我在我的项目中使用了np.dot
。问题是,如果我想找到“点积”,我需要编写另一个由多个for
循环组成的“丑陋”代码。因为我所有的数据都保存在多个2D数组中。我的意思是对于向量,
A = [1, 3, 5]
B = [2, 1, 5]
C = [5, 8, 6]
字符串
我希望结果是1x2x5 + 3x1x8 + 5x5x6 = 184,假设是
result = np.dot(A, B, C)
型
我正在寻找的是我上面提到的过程的函数。
4条答案
按热度按时间nkcskrwz1#
简单地将数组元素相乘并计算结果数组的总和:
字符串
8ulbf1ek2#
你可以使用
numpy.multiply.reduce
,然后sum
:字符串
输出:
184
作为一个功能:
型
A
/B
/C
是列表,这也有效。*bxjv4tth3#
直接使用
np.prod
字符串
9w11ddsr4#
字符串
这将解决你的问题。
在这里,您的数字沿沿着“轴= 0”相乘,您将得到
[10 24 150]
然后计算这个数组的和,因此输出为184。
希望这解决了你的问题!