【機械学習入門】Pythonデータ操作の基礎 with Numpy ~配列の作成と要素取得~ | AIプログラミングハブ
本記事は広告が含まれる場合があります

【機械学習入門】Pythonデータ操作の基礎 with Numpy ~配列の作成と要素取得~

AI & 機械学習

前回は、Numpyの基礎について学びました。
今回の記事では、Numpy配列の作成から、配列内の要素取得について学んでいきます。
環境構築についてはコチラの記事を参照してください。

Numpy配列の作成

Numpyには、Numpy配列を作成する為の便利な関数がいくつかあります。
その例を紹介します。

前回同様、Numpyライブラリをインポートする為の記述をしてください。

import numpy as np  # NumPyライブラリをインポート

多次元配列

まずNumpyは、多次元配列にすることが可能ということを知っておく必要があります。

([[1, 2, 3, 4], 
 [5, 6, 7, 8],
 [9, 10, 11, 12]])

厳密には違いますが、多次元配列は通常の行列に直すとこのようになります。
このイメージをもっていると理解しやすいと思います。

配列の作成

基本的な配列作成のコードを紹介します。

⚪️要素が全て”0″で、長さが10の整数配列

my_array1 = np.zeros(10, dtype=int)
print(my_array1)

## 結果: [0 0 0 0 0 0 0 0 0 0]

⚪️要素が全て”1″で、3行5列の浮動小数点配列

my_array2 = np.ones((3, 5), dtype=float)
print(my_array2)

'''
結果:
[[1. 1. 1. 1. 1.]
 [1. 1. 1. 1. 1.]
 [1. 1. 1. 1. 1.]]
'''

⚪️要素が全て”3.14″である、3行5列の配列

my_array3 = np.full((3, 5), 3.14)
print(my_array3)

'''
結果:
[[3.14 3.14 3.14 3.14 3.14]
 [3.14 3.14 3.14 3.14 3.14]
 [3.14 3.14 3.14 3.14 3.14]]
'''

⚪️開始値”0″, 終了値”20″で2ずつ増加する配列

my_array4 = np.arange(0, 20, 2)
print(my_array4)

## 結果:[ 0  2  4  6  8 10 12 14 16 18]

配列内要素の取得

配列内要素へのアクセス・取得する方法を紹介します。

1次元配列の要素取得

⚪️i番目の要素を取得
[ ]内に数(インデックス)を指定することで、左からi番目の要素を取得できます。
一番左のインデックスは “0” であることに注意が必要です。

x1 = np.array([5, 0, 2, 2, 8, 1])

x1_0 = x1[0]
print(x1_0)
## 結果: 5

x1_5 = x1[5]
print(x1_5)
## 結果: 1

多次元配列の要素取得

⚪️多次元配列の要素を取得
“行のインデックス”と”列のインデックス”を指定することで取得できます。
配列の時と同様、インデックスは”0″から始まりまります。

x2 = np.array()

x2 = np.array([[1, 2, 3], [4, 5, 6], [7, 8, 9]])
x2_1_2 = x2[1, 2]  ## x2[行, 列]の形で指定

print(x2_1_2)
## 結果: 6

多次元配列を指定する考え方はとても重要です。

まとめ

本記事では、Pythonで数値計算の核心となるNumpyライブラリを使用して、多様なNumpy配列の作成方法と、それらの配列内の要素へのアクセス方法について解説しました。ここでの知識は、データ分析や機械学習プロジェクトにおいて基礎となります。主な学びは以下の通りです。

  1. Numpy配列の作成: 様々な配列を作成するための便利なNumpy関数について学びました。
  2. 多次元配列の理解: Numpyが多次元配列をサポートすること、そしてそれらが通常の行列とどのように対応するかを理解しました。この知識は、データの構造化と操作に不可欠です。
  3. 配列内の要素へのアクセス: 一次元配列および多次元配列内の特定の要素を取得する方法を学習しました。このプロセスでは、配列のインデックス指定による要素へのアクセスがキーとなります。

Numpyを用いたデータ操作のスキルは、Pythonでの科学計算や機械学習アプリケーションを構築する上で非常に価値があります。今後も、これらの基本操作を基盤として、Numpyのさらに高度な機能やテクニックを探求していきましょう。

コメント