假设我有以下numpy数组
A = [1,2,3,4,5,6]
问题是否有一种快速的方法可以将a中的每N个元素相乘或相加,从而生成以下数组
B = [3*1, 2*4, 3*5, 4*6]
C = [3+1, 2+4, 3+5, 4+6]
我可以通过滚动A,然后将其与原始A相加或相乘来实现这一点
T = np.roll(A,-2)
B = (A*T)[0:4]
C = (A*T)[0:4]
只是想知道是否有一种更为通灵/高效的方法来实现这一点?我还研究了np.add.reduceat和np.multiply.reduceat,但它们似乎不允许跳过值
您可以通过以下方式执行此操作:
输出
干杯
相关问题 更多 >
编程相关推荐