【初心者向け】NumPyで始めるデータ操作入門|Pythonでの効率的な配列処理

Python

Pythonでデータ分析や数値計算を行う際に、必ず登場するのが NumPy(ナムパイ) というライブラリです。

この記事では、「NumPyってなに?」「どうやってデータを扱えばいいの?」という初心者の方に向けて、NumPyの基本操作をステップごとに紹介していきます。

スポンサーリンク
スポンサーリンク

NumPy配列の作り方(基本)

① リストから配列を作成

import numpy as np

arr = np.array([1, 2, 3, 4, 5])
print(arr)

結果

[1 2 3 4 5]

② 2次元配列(行列)

import numpy as np

matrix = np.array([[1, 2], [3, 4]])
print(matrix)

結果

[[1 2]
 [3 4]]

データの操作(基本)

1. 配列の形を確認・変更

print(arr.shape)       # 配列の形(要素数や行列サイズ)
print(arr.reshape(5, 1))  # 5行1列に変換

2. 要素の抽出(スライシング)

print(arr[0])      # 先頭の要素
print(arr[1:4])    # 2番目〜4番目

計算や統計処理

NumPyでは、ベクトル演算統計処理がとても簡単です。

1. 四則演算(ベクトル計算)

import numpy as np

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

print(a + b)  
print(a * b)  

結果

[5 7 9]
[ 4 10 18]

2. 統計関数

print(np.mean(a))  # 平均
print(np.max(b))   # 最大値
print(np.min(b))   # 最小値
print(np.sum(b))   # 合計

条件に合うデータの抽出(フィルタ)

data = np.array([1, 2, 3, 4, 5])
filtered = data[data > 3]
print(filtered) 

結果

 [4 5]

応用:乱数の生成やゼロ初期化

zeros = np.zeros((2, 3))  # 2行3列の0行列
ones = np.ones((2, 2))    # 2行2列の1行列
rand = np.random.rand(3)  # 0〜1のランダム数(3個)

NumPyが得意なこと

  • 大量の数値データを高速に処理
  • for文を使わずにまとめて計算(ベクトル化)
  • データ分析や機械学習の前処理に最適
  • 他のライブラリ(pandas, scikit-learn, TensorFlow)の基盤にもなっている

まとめ

機能使い方例
配列作成np.array([1,2,3])
形状確認arr.shape
切り出しarr[1:3]
ベクトル演算arr1 + arr2
統計処理np.mean(arr)
条件抽出arr[arr > 3]

関連リンク

タイトルとURLをコピーしました