はじめに
NumPy は Python プログラミング言語用のライブラリで、Python における数値演算を行うために使用されます。NumPy は多次元配列を使って数値データを扱う便利な方法を提供します。このチュートリアルでは、NumPy 配列を作成、アクセス、および変更する方法について説明し、利用可能なさまざまなデータ型を探ります。
配列の作成
ターミナルで新しい Python インタプリタを開きます。
python3
配列を操作する前に、まず配列を作成する必要があります。NumPy には配列を作成するいくつかの方法があります。たとえば:
1. np.array()
この関数は、Python のリストまたはタプルから配列を作成します。
import numpy as np
## Python のリストから配列を作成
my_list = [1, 2, 3, 4, 5]
my_array = np.array(my_list)
print(my_array) ## 出力:[1 2 3 4 5]
## Python のタプルから配列を作成
my_tuple = (6, 7, 8, 9, 10)
my_array = np.array(my_tuple)
print(my_array) ## 出力:[ 6 7 8 9 10]
2. np.zeros()
この関数は、指定された形状のゼロの配列を作成します。
## ゼロの配列を作成
my_array = np.zeros((3, 4))
print(my_array)
## 出力:
## [[0. 0. 0. 0.]
## [0. 0. 0. 0.]
## [0. 0. 0. 0.]]
3. np.ones()
この関数は、指定された形状の 1 の配列を作成します。
## 1 の配列を作成
my_array = np.ones((2, 3))
print(my_array)
## 出力:
## [[1. 1. 1.]
## [1. 1. 1.]]
4. np.arange()
この関数は、指定された範囲内で均等に間隔を空けた値の配列を作成します。
## 均等に間隔を空けた値の配列を作成
my_array = np.arange(0, 10, 2)
print(my_array) ## 出力:[0 2 4 6 8]
5. np.linspace()
この関数は、2 つの端点間で均等に間隔を空けた値の配列を作成します。
## 2 つの端点間で均等に間隔を空けた値の配列を作成
my_array = np.linspace(0, 1, 5)
print(my_array) ## 出力:[0. 0.25 0.5 0.75 1. ]
要素のアクセス
一次元配列の要素をアクセスするには、そのインデックスを使用します。
my_array = np.array([1, 2, 3, 4, 5])
print(my_array[0]) ## 出力:1
多次元配列の要素をアクセスするには、各次元におけるその位置を指定する必要があります。
my_array = np.array([[1, 2], [3, 4], [5, 6]])
print(my_array[1, 0]) ## 出力:3
要素の変更
配列の要素の値を変更するには、新しい値を割り当てます。
my_array = np.array([1, 2, 3])
my_array[2] = 4
print(my_array) ## 出力:[1 2 4]
配列のスライスも変更できます。
my_array = np.array([1, 2, 3, 4, 5])
my_array[1:4] = [6, 7, 8]
print(my_array) ## 出力:[1 6 7 8 5]
データ型
NumPy 配列は、整数、浮動小数点数、ブール値など、さまざまなデータ型の要素を格納できます。NumPy は、以下を含む幅広いデータ型を提供しています。
| データ型 | 説明 |
|---|---|
| int_ | 整数 |
| int8 | 8 ビット整数 |
| int16 | 16 ビット整数 |
| int32 | 32 ビット整数 |
| int64 | 64 ビット整数 |
| uint8 | 符号なし 8 ビット整数 |
| uint16 | 符号なし 16 ビット整数 |
| uint32 | 符号なし 32 ビット整数 |
| uint64 | 符号なし 64 ビット整数 |
| float_ | 浮動小数点数 |
| float16 | 半精度浮動小数点数 |
| float32 | 単精度浮動小数点数 |
| float64 | 倍精度浮動小数点数 |
| complex_ | 複素数 |
| complex64 | 2 つの 32 ビット浮動小数点数で表される複素数 |
| complex128 | 2 つの 64 ビット浮動小数点数で表される複素数 |
| bool_ | ブール値 |
| object_ | オブジェクト(任意の Python オブジェクトを保持できます) |
配列のデータ型を指定するには、dtype パラメータを使用できます。
## 特定のデータ型で配列を作成
my_array = np.array([1, 2, 3], dtype=np.float64)
print(my_array) ## 出力:[1. 2. 3.]
astype() メソッドを使用して、配列を別のデータ型に変換することもできます。
## 配列を別のデータ型に変換
my_array = np.array([1, 2, 3], dtype=np.int32)
my_array = my_array.astype(np.float64)
print(my_array) ## 出力:[1. 2. 3.]
まとめ
このチュートリアルでは、NumPy 配列を作成、アクセス、変更する方法と、利用可能なさまざまなデータ型を調べました。NumPy は、Python で数値データを扱うための強力なライブラリであり、配列を操作するための多くの便利な関数とメソッドを提供しています。



