Numpyについて PythonにはNumpyという行列の計算ができるライブラリがあります。機械学習では、必須なもので、 今回は、Numpyについてまとめてみました。 簡単にまとめてみます Numpyでよく使うプログラムを下図のとおりまとめてみます。 <実際のプログラム> プログラムを書くと以下のような感じになります。 import numpy as np ###1次元配列### # ベクトルの定義 a = np.array([1,2,3,4,5]) #配列の内容 print(a) #要素数 print(a.shape) #次元数 print(a.ndim) ###2次元配列(3x3)### b = np.array( [[1, 2, 3], [4, 5, 6], [7, 8, 9]]) #配列の内容 print(b) #要素数 print(b.shape) #次元数 print(b.ndim) #サイズ print(b.size) ###2次元配列(3x3)+0埋め### b = np.zeros((3, 3)) print(b) ###2次元配列(2x3)+1埋め### b = np.ones((2, 3)) print(b) ###2次元配列(3x2)+9埋め### b = np.full((3, 2), 9) print(b) ###2次元配列(単位行列) c = np.eye(5) print(c) # 3から10の1増加する数列を作る(10 は含まない) d = np.arange(3, 10, 1) print(d) ###2次元配列### # 形を指定して、 0 ~ 1 の間の乱数で要素を埋めた ndarray を作る e = np.random.random((4, 5)) print(e) print(e.shape) #eが1 行 2 列目の値を取り出す print(e[0, 1]) # 4 x 5 行列 e の真ん中の 2 x 3 = 6 個の値を取り出す #スライスによる要素の選択 center = e[1:3, 1:4]#e[y,x] y:1以上3未満=1~2行、x:1以上4未満=2~3列 print(center) print(center.shape) #次元数 print(e.ndim) print( e[0:4:3,0:5:2])#e[y,x] y:0以上4未満=0~3行+2行間隔、x:0以上5未満=0~4列+2行間隔 行列の内積などは、計算が大変ですが、Numpyを使うと非常に簡単に計算できます。 これでNumpyについては終わりにします。 -------------