2011-05-05 74 views
1

出于好奇+ 1,是有具体numpy的函数来执行以下操作(这将假想更快):平均元件的i和i在numpy的阵列

a = np.array((0,2,4)) 
b = np.zeros(len(a) - 1) 
for i in range(len(b)): 
    b[i] = a[i:i+2].mean() 

print(b) 
#prints [1,3] 

干杯

+1

我不这么认为... – rubik 2011-05-05 14:14:42

回答

7

您可以使用

b = (a[1:] + a[:-1])/2. 

避免Python循环。

+0

OMG python的语法看起来像表情符号.. – codymanix 2011-05-05 14:31:59

+0

整洁,我喜欢它:-)我想我没有用numpy太久了!谢谢! – Ben2209 2011-05-05 14:32:18