我想在不使用for循环的情况下跨两个不同长度/形状的数组运行一个累加和积。为简单起见,假设我有以下两个数组:
x = np.array([1,2,3,4,5,6,7,8,9,10])
y = np.array([0.1,0.4,0.5])
我想创建一个与x长度相同的数组,其中每个值都是y与x中对应的“窗口”的和。例如,结果中的第二个值将是[2,3,4]和[0.1,0.4,0.5]的总和(在这种情况下为3.4)。
“窗口”应仅是前瞻性的,因此对于x中的最后两个项目,窗口分别将分别为2和1。例如,结果数组中的第9个值是[9,10]和[0.1,0.4]的总和(在本例中为4.9)。
我有一个使用for循环的解决方案,但是由于实际数组的长度(〜10000个项)非常耗时,因此我正在寻找更有效的方法。 < / p>