NumPy配列のインデックス・ファンシーインデックス・スライシングの組み合わせ

NumPyの多次元のndarrayでは、インデックスでの参照ファンシーインデックススライシングを組み合わせて、複雑な参照をすることもできる。

次の2次元配列について、いろいろな参照の例を挙げておく。

ndarr1 = np.array([[1., 2., 3.], [4., 5., 6.], [7., 8., 9.]])

print(ndarr1)
# 出力結果
# [[ 1.  2.  3.]
#  [ 4.  5.  6.]
#  [ 7.  8.  9.]]

インデックスとスライス表記の組み合わせ

print(ndarr1[2, 1:3])
# 出力結果
# [ 8.  9.]

print(ndarr1[1:3, 2])
# 出力結果
# [ 6.  9.]

ファンシーインデックスとスライス表記の組み合わせ

print(ndarr1[[0, 2], 1:3])
# 出力結果
# [[ 2.  3.]
#  [ 8.  9.]]

print(ndarr1[1:3, [0, 2]])
# 出力結果
# [[ 4.  6.]
#  [ 7.  9.]]

インデックスとファンシーインデックスの組み合わせ

print(ndarr1[2, [0, 2]])
# 出力結果
# [ 7.  9.]

print(ndarr1[[0, 2], 2])
# 出力結果
# [ 3.  9.]
このサイトは筆者(hydrocul)の個人メモの集合です。すべてのページは永遠に未完成です。