def test_sequence(npseq):
    n = npseq.shape[0]

def f(i):
    pre = np.sum(npseq[:i]) / i
post = np.sum(npseq[i + 1:]) / (n - i - 1)
return pre - post
out = np.array([f(i) for i in range(1, n - 1)])
return out
test_sequence(a)
array([-22.375, -0.35714286, 6.33333333, -10.7, -18.0, -14.66666667, 
    -24.57142857, -26.5])
Средние значения срезов в массиве 1d np: как сделать его более NumPy-тонным?