配列の基本操作

NumPy入門③ 配列の基本操作

配列の要素参照(インデックス)

NumPy配列の要素は、Pythonリストと同様にインデックスで参照できます。インデックスは0から始まります。

import numpy as np

a = np.array([10, 20, 30, 40, 50])

print(a[0])   # 10
print(a[2])   # 30
print(a[-1])  # 50(末尾)

二次元配列では、行と列を指定します。

b = np.array([[1, 2, 3], [4, 5, 6]])

print(b[0, 0])  # 1
print(b[1, 2])  # 6

スライス(部分配列の取得)

配列の一部を取り出すときはスライスを使います。

print(a[1:4])    # [20 30 40]
print(a[:3])     # [10 20 30]
print(a[::2])    # [10 30 50] (ステップ2)

二次元配列のスライス例:

print(b[:, 1])   # 2列目の全行 → [2 5]
print(b[0, :])   # 1行目の全列 → [1 2 3]

形状(shape)の確認と変更

配列の行・列の数を確認したり、並べ替えができます。

c = np.array([[1, 2, 3], [4, 5, 6]])

print(c.shape)   # (2, 3) → 2行3列

形状を変更する例:

d = np.arange(12)       # 0〜11の配列
reshaped = d.reshape(3, 4)
print(reshaped)
# [[ 0  1  2  3]
#  [ 4  5  6  7]
#  [ 8  9 10 11]]

転置(transpose)

行と列を入れ替える操作も簡単です。

print(reshaped.T)
# [[ 0  4  8]
#  [ 1  5  9]
#  [ 2  6 10]
#  [ 3  7 11]]

データ型(dtype)の確認と変換

NumPy配列は同じ型の要素で構成されます。データ型を確認・変換することが可能です。

arr = np.array([1, 2, 3], dtype=np.int32)
print(arr.dtype)   # int32

float_arr = arr.astype(np.float64)
print(float_arr.dtype)  # float64

まとめ

  • 配列の要素はインデックスで参照、スライスで部分取得できる
  • shapereshape で配列の形状を操作可能
  • 転置は .T を利用する
  • dtype でデータ型を確認・変換できる