データ分析を行う際でNumPyは必須のプラグインで、他のプラグインの内部でも利用されています。数値計算、行列、多次元配列、乱数生成など最終的に機械学習、AIを目指す上で必要になりますので覚えておきましょう。
それでは、PythonのプラグインNumPyについて学習していきましょう。
このページで扱うこと
・配列
・合計、平均、最大、最小、標準偏差、分散
・行列
・乱数生成
NumPyをインポートする
import numpy as np
これでインポートが完了し、利用できるようになります。
このブログではインストールが必要ない、Google Colaboratoryや、Anacondaのjupyter notebookを推奨しています。
サーバーでPythonを実行している方は、pip install numpy
でインストールしておきましょう。
配列
reshapeで4 x 5
の配列を作成します。
a = np.arange(20).reshape(4, 5)
[[ 0 1 2 3 4]
[ 5 6 7 8 9]
[10 11 12 13 14]
[15 16 17 18 19]]
合計、平均、最大、最小、標準偏差、分散
合計はnumpy.sum()を利用します。
np.sum(a)
190
平均はnumpy.mean()を利用します。
np.mean(a)
9.5
最大はnumpy.max()を利用します。
np.max(a)
19
最小はnumpy.min()を利用します。
np.min(a)
0
標準偏差はnumpy.std()を利用します。
np.std(a)
5.766281297335398
分散はnumpy.var()を利用します。
np.var(a)
33.25

Google Colaboratoryはコードの入力補完機能があります。
途中まで入力すると候補が一覧から選べますので便利ですね。
行列
行列はnumpy.ndarrayやnumpy.matrixを利用します。
二次元配列を作成する。
a = np.array([[0, 1, 2], [3, 4, 5]])
[[0 1 2] [3 4 5]]
type(a)
numpy.ndarray
numpy.matrix()で作成することもできる。
a = np.matrix([[0, 1, 2], [3, 4, 5]])
[[0 1 2] [3 4 5]]
type(a)
numpy.matrix
乱数
乱数生成は、numpy.random.rand()を利用します。これは0.0以上1.0未満の乱数を返します。
一つの乱数を返す。
rand = np.random.rand()
0.47103237916117613
引数で渡したサイズの配列の乱数を返す。
array = np.random.rand(5)
[0.93445996 0.10533174 0.46140443 0.80705628 0.50903712]
array = np.random.rand(2, 2)
[[0.21683847 0.66711857] [0.24950355 0.34226514]]
array = np.random.rand(2, 3, 3)
[[[0.0194092 0.57773191 0.21057497] [0.28380564 0.95967553 0.29069787] [0.43108389 0.52885614 0.58176328]] [[0.49237351 0.92234544 0.21893964] [0.19441383 0.60857942 0.93823364] [0.05714333 0.11199191 0.2102246 ]]]
まとめ
以上、Numpy初学者向けに、下記の内容について解説しました。
・配列
・合計、平均、最大、最小、標準偏差、分散
・行列
・乱数生成