PythonのNumpyは、機械学習やディープラーニングをする上で欠かせないライブラリです。
Numpyのライブラリの中でも、よく使われる便利な関数を紹介します。これらの関数をマスターすることで、より高度な数値計算が可能になりまので、ぜひ参考にしてください。
この記事の他に、NumpyやMatplotlibについてもまとめていますので、よろしければご確認下さい。
Numpyとは
Numpyについて、公式では以下のように説明がされています。
NumPyは、Pythonで科学計算を行うための基本パッケージです。多次元配列オブジェクト、様々な派生オブジェクト(マスクされた配列や行列など)、そして数学、論理、図形操作、ソート、選択、入出力、離散フーリエ変換、基本線形代数、基本統計演算、ランダムシミュレーションなど、配列に対する高速演算のためのルーチンの数々を提供する Pythonライブラリである。
https://numpy.org/doc/stable/user/whatisnumpy.html#
簡単に要約すると、Numpyは効率かつ高速な数値計算を行うことができるPythonライブラリのことです。
ちなみにライブラリとは、プログラミングで使える機能が詰まった「部品箱」のようなものです。わざわざ、必要な機能を自分でプログラムするのは大変ですが、既に用意されたライブラリを使うことで、必要な機能を簡単に使うことができます。
Numpyを使う準備
それでは、pythonでNumpyを使うためにインストールとインポートについてご紹介します。
Numpyのインストール
以下のコマンドより、Numpyをインストールします。
pip install numpy
Numpyのインポート
以下のコマンドより、Numpyをインポートします。
import numpy as np
Numpyの配列作成
np.array()
np.array()は、配列を作成します。
np.array([1, 2, 3])
'''
array([1, 2, 3])
'''
np.array([[1, 2, 3], [4, 5, 6]])
'''
array([[1, 2, 3],[4, 5, 6]])
'''
np.arange()
np.arange()は、指定した数の連番の配列を作成します。
np.arange(10) #0から9までの連続値
'''
array([0, 1, 2, 3, 4, 5, 6, 7, 8, 9])
'''
np.arange(0, 13, 3) #0から12までの3ずつ大きくなる連続値
'''
array([0, 3, 6, 9, 12])
'''
np.linspace()
np.linspace()は、指定した範囲内で等間隔に分割された配列を作成します。
np.linspace(0, 6, 9) #0から6までの範囲を9つに均等に分割する
'''
array([0. , 0.75, 1.5 , 2.25, 3. , 3.75, 4.5 , 5.25, 6. ])
'''
np.zeros()
np.zeros()は、全ての要素が0の配列を作成します。
np.zeros((2, 4)) #引数に配列の形態を入力
'''
array([0, 0, 0, 0],
[0, 0, 0, 0]])
'''
Numpyの配列結合
np.concatenate()
np.concatenate()は、配列どうしを結合させます。
array1 = np.array([1, 2, 3])
array2 = np.array([4, 5, 6])
np.concatenate([array1, array2])
'''
[1 2 3 4 5 6]
'''
Numpyの配列変換
np.reshape()
np.reshape()は、配列を変形させます。
array = np.array([0, 1, 2, 3, 4, 5])
array.reshape(3, 2) #3×2に変形
'''
array([[0, 1],
[2, 3],
[4, 5]])
'''
※指定した配列の要素数が合わない場合はエラーとなります。
np.transpose()
np.transpose()は、配列の軸を入れ替えます。
array = np.array([[1, 2, 3],[4, 5, 6],[7, 8, 9]])
np.transpose(array)
'''
array([[1, 4, 7],
[2, 5, 8],
[3, 6, 9]])
'''
Numyのデータ集計
np.sum()
np.sum()は、配列の要素の合計を算出します。
array = np.array([1, 2, 3, 4])
np.sum(array)
'''
10
'''
np.max() / np.min()
np.max() / np.min()は、配列の要素の最大・最小を算出します。
array = np.array([1, 2, 3, 4])
np.max(array)
'''
4
'''
array = np.array([1, 2, 3, 4])
np.min(array)
'''
1
'''
np.mean()
np.mean()は、配列の要素の平均を算出します。
array = np.array([1, 2, 3, 4])
np.mean(array)
'''
2.5
'''
np.std()
np.std()は、配列の要素の標準偏差を算出します。
array = np.array([1, 2, 3, 4, 5])
np.std(array)
'''
1.4142135623730951
'''
pythonのおすすめ勉強法
そもそもpythonの知識を1から学びたいという人にマジでおすすめなpythonの勉強方法をご紹介します。
結論から言うと、Udemyを活用することです。私はPythonを以下の講座のみで学びましが、本当に分かりやすく最強だと思っています。実際に講座を見ながら自分も手を動かして学習できるので、しっかりと身に付きます。
まとめ
Numpyは、数値計算に必要な多くの関数を提供していますが、特に上記の関数はよく使われます。これらの関数を理解しておくことで、より高度な数値計算が可能になります。ぜひ、覚えて活用してみてください。
コメント