python

【python】Numpy

Numpyとは?

Pythonで高速に(効率的に)数値計算を行う機能を提供するパッケージです。 Pythonが科学計算分野で広く使われることに貢献したパッケージの1つです。

パッケージの使い方

配列を作る Pythonにはすでに見てきたようにリストがありますが、NumPyではリストに似た“配列”と呼ばれるデータ構造を利用していきます。numpy.array([[0, 1], [2, 3, 4]]) といったようなサイズの異なる2次元配列を与えることもできます。

 Numpyのarrayを作る

array()

リストを引数に受け取り、nupy用の配列を作成します。

matrix()
arange()
reshape()

メソッドを使って後から形を変更できます。また変形後の要素数は変形前の要素数と同じになるような形でなければなりません。

linspace()

関数は指定した区間内から等間隔で値を取得します

ones()

配列の要素を全て1で埋めた配列を生成する

zeros()

配列の要素を全て0で埋めた配列を生成する

eye()

配列の主対角成分が1となる配列を生成するー単位行列

diag()

1次元配列を与えるとその要素が対角上に並んだ2次元配列を、2次元配列を渡すとその対角要素を1次元配列で返します。

配列の次元と要素数

配列を用いた演算 リストやタプルのときはここで終わりでしたが、NumPy配列は先があります。NumPy配列に定義されているいくつかの演算をここでは見ていきます。

基本的な演算

Numpyの配列は、形状の異なる配列の演算も可能になります(ブロートキャスト)

配列の比較

要素を取り出す

配列のインデックスとスライス リストやタプルの要素へのアクセス方法と同様に、配列の要素を取得することができます。インデックスは0から始まる 2次元配列以上の多次元配列の場合にはインデックスを指定する順番、軸 (axis) について気をつける必要があります。

特殊なインデックス 条件に合う部分だけ取り出す、指定した順番に取り出すといったことができます。 配列の要素の指定に配列を使うことでこれらの機能が利用できる

Numpyの配列に三角関数や対数関数、ネイピア数を適用する

Numpyの配列の最大、最小

関数 説明
numpy.sum 総和を計算する
numpy.mean 平均を計算する
numpy.median 中央値を計算する
numpy.var 分散を計算する
numpy.std 標準偏差を計算する
numpy.min 最小値を計算する
numpy.max 最大値を計算する
numpy.argmin 最小値となるインデックスを調べる
numpy.argmax 最大値となるインデックスを調べる

Numpyの配列をソートする