【例題】 Array[1,2,3,4,5,6,7,8,9]
について「最初から5番目までの要素」を「1つ飛び」で表示する.
以下のコードを読んで実行してみよう.
numpy_l = np.array([1,2,3,4,5,6,7,8,9])
print(numpy_l[0:5:2]) 0から5番目(最後の要素は含まれない)まで 一つ飛ばし→2つごと
[1 3 5]
Array[1,2,3,4,5,6,7,8,9]
の「3番目以降の要素」を「2つ飛び」で表示させてみよう.
numpy_1 = np.array([1,2,3,4,5,6,7,8,9])
print(numpy_1[2::3]) 3番目(0スタートなので2)から、最後(この場合は空欄)で2つ飛び(3つごと)
[3 6 9]
2次元の場合
numpy_l = np.array([[1,2,3], [4,5,6], [7,8,9]])
print(numpy_l[1:3, 0:2]) [([]の位置に対して),([]内の要素について)]
[]は1つしかいらない
[[4 5] [7 8]]
numpy_l = np.array([[1,2], [1,2], [1,2]])
# 2列目を1次元Arrayとして表示
print(numpy_l[:, 1]) [:,]はすべての[]にたいしてのこと
[2 2 2]
stepを用いた参照
2次元Arrayでstep
を使うと特殊な参照ができる.
【例題1】 Array[[1,2,3], [4,5,6], [7,8,9]]
の「奇数行目」を表示させる.
numpy_l = np.array([[1,2,3], [4,5,6], [7,8,9]])
print(numpy_l[::2])
[[1 2 3]
[7 8 9]]
Array[[1,2,3,4], [5,6,7,8]]
の「偶数列目」を表示させよう.
numpy_3 = np.array([[1,2,3,4],[5,6,7,8]])
print(numpy_3[:,1::2])
[[2 4] [6 8]]
step
に負の数を指定すると,参照はインデックスの降順になる.
numpy_l = np.array([[1,2,3], [4,5,6], [7,8,9]])
print(numpy_l[2::-1, :]) 2から最後まで、-1なので逆順で
[[7 8 9] [4 5 6] [1 2 3]]
step
が負のとき,start > stop
にする必要があることに注意しよう.
Array[[1,2,3], [4,5,6], [7,8,9]]
を「列について降順」に表示させよう
numpy_4 = np.array([[1,2,3],[4,5,6],[7,8,9]])
print(numpy_4[:,2::-1])
[[3 2 1] [6 5 4] [9 8 7]]
コメント