numpyのリストにおいてこの様な点々(コロン、ピリオド)の意味 [1,:] [1, ..., 1]
numpyリストにおいて、コロン(:)やピリオド(.)の意味を説明する。
コロン
コロンはよく[1, :]の様な形で見かける。
:は言い換えればすべて、という意味だ。
よって[1, :]では[1,0]、[1,1]、[1,2]などを返す。
以下の様なプログラムを実行する。
import numpy as np
my_list = np.array([[0,1,0],[2,3,0],[4,5,0]])
print(my_list[1,:])
すると以下の結果を得る。
[2 3 0]
ピリオド
ピリオドは例えば b = a[..., 0] の様に使われる。
これも実は全てという意味で、途中のカンマ(,)を書かなくても良いsyntaxとなっている。
以下のサイトを参照
[ , …, ] (ellipsis) — Python Reference (The Right Way) 0.1 documentation
サイトには以下の様な例も挙げられており、分かりやすい
>>> n = numpy.arange(16).reshape(2, 2, 2, 2) >>> n array([[[[ 0, 1], [ 2, 3]], [[ 4, 5], [ 6, 7]]], [[[ 8, 9], [10, 11]], [[12, 13], [14, 15]]]]) >>> n[1,...,1] # equivalent to n[1,:,:,1] array([[ 9, 11], [13, 15]]) >>> # also Ellipsis object can be used interchangeably >>> n[1, Ellipsis, 1] array([[ 9, 11], [13, 15]])