2016-05-31 4 views
2

私は、括弧の間に、特に一部、このPythonの文に出くわしたが、それが何を意味するのか理解できませんでした:このナンシーの形は何を意味しますか?

np.zeros(1+x.shape[1]) 

私は簡単な例でその動作を模倣しようとしましたが、tuple index out of rangeエラーが発生しました。

上記の配列のパラメータの意味を明確にすることはできますか?例は非常に高く評価されるでしょう。

ありがとうございました。

答えて

3

意味:numpy配列xの列数よりも1だけ長いゼロで1D numpy配列を作成します。

>>> a = np.array([[1,2,1],[3,4,5]]) 
>>> print a.shape 
(2L, 3L) 
>>> b = np.zeros(1+a.shape[1]) 
>>> print b 
[ 0. 0. 0. 0.] 

b1+(number of cols in a) = 1+3 = 4

4

に等しいサイズは、ここでは、タプル(no of rows, no of columns)として配列の形状を返す

>>> x = np.array([[1, 2, 3], [4, 5, 6]]) 
>>> x.shape 
(2, 3) 
>>> x.shape[1] 
3 
>>> np.zeros(1+x.shape[1]) 
array([ 0., 0., 0., 0.]) 

x.shape

よりよく理解するのを助けることができるおもちゃのコードですがありますこの場合 (2, 3)。したがって、 x.shape[1]は配列内の列の数です。指定された次元を使用して、0で埋められた新しい配列( np.zeros(...))が作成されます。 1+3

関連する問題