この記事はnumpyの簡単操作をメリします。
インストール
conda install numpy pip install numpy
Numpy配列はのメインはVectors(1d)、Matrix(2d)2種類があります。
Veactors
import numpy as np #create a python list my_list=[1,2,3] np.array(my_list)
このコードはPythonのListを作成しnumpyライブラリのarrayメソッド使ってnumpy配列に変換します。
array([1, 2, 3])
そちらは戻り値ですね。
Matrix
my_max=[[1,2,3],[4,5,6],[7,8,9]] np.array(my_max)
今度は2d配列を作ってarrayメソッド使ってnumpy配列に変換します。
array([[1, 2, 3], [4, 5, 6], [7, 8, 9]])
これは戻り値ですね。
arange()
このメソッド使えば素早く配列を作ることができます。
np.arange(0,10)
numpy配列を作ります。Elementsは0から9まです。
array([0, 1, 2, 3, 4, 5, 6, 7, 8, 9])
これは戻り値です。
np.arange(0,10,2)
numpy配列を作ります。Elementsは0から9まですが、Elementsの間隔値は2です。
array([0, 2, 4, 6, 8])
これは戻り値です。賢いのみんなさんも気がつくかもしれませんが、操作はPythonのrange()と同じです。
zeros()
このメソッド使えば簡単にElementsがすべて0の配列作れます。
np.zeros(4)
numpy配列を作ります。
array([0., 0., 0., 0.])
これは戻り値です。注意するのはすべての値もFloatです。
ones()
このメソッド使えば簡単にElementsがすべて1の配列作れます。
np.ones(4)
numpy配列を作ります。
array([1., 1., 1., 1.])
これは戻り値です。注意するのはすべての値もFloatです。
linspace()
このメソッド使えばScaleされた配列を作ることができます。
np.linspace(0,5,10)
いまから0から5まで10のPointを作ります。
array([0. , 0.55555556, 1.11111111, 1.66666667, 2.22222222, 2.77777778, 3.33333333, 3.88888889, 4.44444444, 5. ])
これは戻り値です。
random.rand()
このメソッド使えば0〜1までの乱数をもらえます。
np.random.rand(5)
乱数の1d配列を生成します。
array([0.6123375 , 0.13346348, 0.10468876, 0.12124248, 0.88995972])
これは戻り値です。
np.random.rand(5,5)
今度は2dの乱数を生成します。
array([[9.01455370e-01, 6.61017279e-02, 8.94934331e-01, 5.06619658e-01, 1.88133499e-01], [2.47083449e-01, 3.91014965e-01, 6.16761073e-01, 3.12968844e-01, 6.89859720e-01], [2.56588580e-01, 8.68820423e-04, 4.78664817e-01, 2.42906271e-01, 4.81804262e-01], [8.73052585e-03, 7.52025655e-01, 1.16578333e-01, 7.97146587e-01, 7.14861674e-01], [4.09633844e-01, 5.83493980e-01, 5.58591442e-01, 3.78905262e-01, 5.04233459e-01]])
これは戻り値です。
random.randn()
標準正規分布
np.random.rand(5) np.random.rand(5,5)
np.random.randint()
このメソッド使えば、設定範囲以内の乱数がもらえます。
np.random.randint(1,100,10)
1より大き、100より小さいの乱数配列(長さ10)が戻ります。
reshape()
1d配列を2d配列に変換します。注意するのは大きなはびったりする必要があります。
例えば25個のElementsが入ってるの配列は5x5の2D配列にしかreshape()できません。
arra=np.arange(25) arra.reshape(5,5)
max()
配列に中に一番大きな値を戻ります。
min()
配列に中に一番小さな値を戻ります。
argmax()
配列に中に一番大きな値のIndexを戻ります。
argmin()
配列に中に一番小さな値のIndexを戻ります。
arg.shape()
配列の”形”が戻ります。
arra=np.arange(25) arrb=arra.reshape(5,5) np.shape(arra) np.shape(arrb)
1dと2dの配列をshape()にいれます。
(5,5) (7,)
これが結果です。
dtype()
配列のデータタイプが戻ります。