はじめに
NumPyは、科学的計算に使用される人気のあるPythonライブラリです。数値データの分析に役立つ高性能な配列演算と数学関数を提供します。この実験では、NumPyのスライシングとインデックス付けの機能を学びます。
NumPyは、科学的計算に使用される人気のあるPythonライブラリです。数値データの分析に役立つ高性能な配列演算と数学関数を提供します。この実験では、NumPyのスライシングとインデックス付けの機能を学びます。
スライシングとは、インデックスの範囲を指定することで配列のサブセットを抽出するプロセスです。NumPy配列は、コロン :
演算子を使用してスライシングできます。
ターミナルに次のコマンドを入力してPythonシェルを開きます。
python3
NumPyは既にインストールされていますので、Pythonコードでインポートできます。
import numpy as np
## 1次元配列を作成する
a = np.array([0, 1, 2, 3, 4, 5, 6, 7, 8, 9])
## インデックス2からインデックス5までの配列をスライシングする
print(a[2:5])
出力:
[2 3 4]
多次元の配列もスライシングできます。
## 2次元配列を作成する
b = np.array([[0, 1, 2], [3, 4, 5], [6, 7, 8], [9, 10, 11]])
## 最初の2行と最初の2列をスライシングする
print(b[:2, :2])
出力:
[[0 1]
[3 4]]
ブール型インデックス付けは、条件に基づいて配列をフィルタリングする強力な機能です。既存の配列に論理演算子を適用することで、ブール型配列を作成できます。
c = np.array([0, 1, 2, 3, 4, 5, 6, 7, 8, 9])
mask = c > 5
print(mask)
出力:
[False False False False False False True True True True]
print(c[mask])
出力:
[6 7 8 9]
ファンシーインデックス付けは、インデックスの配列を使って配列をインデックス付けする方法です。この手法を使って、配列の特定の要素やサブセットを抽出できます。
## 1次元配列を作成する
d = np.array([0, 1, 2, 3, 4, 5, 6, 7, 8, 9])
## インデックスの配列を作成する
indices = np.array([1, 3, 5])
## ファンシーインデックス付けを使って指定されたインデックスの要素を抽出する
print(d[indices])
出力:
[1 3 5]
## 1次元配列を作成する
e = np.array([0, 1, 2, 3, 4, 5, 6, 7, 8, 9])
## インデックスの配列を作成する
indices = np.array([1, 3, 5])
## 指定されたインデックスの要素に値10を割り当てる
e[indices] = 10
print(e)
出力:
[ 0 10 2 10 4 10 6 7 8 9]
おめでとうございます!あなたはNumPyのスライシングとインデックス付けの実験を完了しました。
この実験では、NumPy配列のスライシングとインデックス付けの基本を学びました。