2012-04-05 191 views

回答

3

大概是這樣的:

y = numpy.ones((10, 20)) 
y[0:5] = 2 
psum = y[0:3].sum(axis=0) 

一個簡單的例子:

y = numpy.array([2, 6, 7, 3, 4]) 
print y[1:4].sum() 

打印16,中間的三個要素的總和。

+0

不完全; Matlab程序返回所有六個(至少在Octave中)。 – 2012-04-05 13:44:52

+0

@larsmans:那麼關於Matlab和NumPy中索引的順序有所不同。我添加了一個更簡單的例子,以清楚如何總結一個數組切片。 – 2012-04-05 13:46:27

+0

@Bago:我明白了,但我以不同的方式搞砸了,與Matlab和NumPy之間的差異無關。現在應該基本修復。 – 2012-04-05 14:11:07

3

這應該做的伎倆:

>>> y = np.ones((10, 20)) 
>>> y[0:5, :] = 2 
>>> psum = y[0:3, 0:10].sum(axis=0) 

注意的是Python,指數是零基礎,最終指數不包括在內。

相關問題