numpy数组元素的累积积分
Cumulative integration of elements of numpy arrays
我想要以下类型的集成:
假设我有 2 个数组
a = np.array[1,2,3,4]
b = np.array[2,4,6,8]
我知道如何使用类似的东西来整合这些:
c = scipy.integrate.simps(b, a)
其中 c = 15
以上数据集。
我想做的是将每个数组的第一个元素相乘并添加到名为 d
的新数组中,即 a[0]*b[0]
然后将前 2 个元素与数组相乘,然后对前 3 个元素进行积分等等。所以最终对于这个数据集,我会得到
d = [2 3 8 15]
我尝试了一些方法,但没有成功;我对编写代码还很陌生。
如果我没有正确理解您的需求,您可以执行以下操作:
import numpy as np
from scipy import integrate
a = np.array([2,4,6,8])
b = np.array([1,2,3,4])
d = np.empty_like(b)
d[0] = a[0] * b[0]
for i in range(2, len(a) + 1):
d[i-1] = integrate.simps(b[0:i], a[0:i])
print(d)
我想要以下类型的集成:
假设我有 2 个数组
a = np.array[1,2,3,4]
b = np.array[2,4,6,8]
我知道如何使用类似的东西来整合这些:
c = scipy.integrate.simps(b, a)
其中 c = 15
以上数据集。
我想做的是将每个数组的第一个元素相乘并添加到名为 d
的新数组中,即 a[0]*b[0]
然后将前 2 个元素与数组相乘,然后对前 3 个元素进行积分等等。所以最终对于这个数据集,我会得到
d = [2 3 8 15]
我尝试了一些方法,但没有成功;我对编写代码还很陌生。
如果我没有正确理解您的需求,您可以执行以下操作:
import numpy as np
from scipy import integrate
a = np.array([2,4,6,8])
b = np.array([1,2,3,4])
d = np.empty_like(b)
d[0] = a[0] * b[0]
for i in range(2, len(a) + 1):
d[i-1] = integrate.simps(b[0:i], a[0:i])
print(d)