(33) minとargmin

投稿者: | 2014年7月10日

14,404 views

この記事は最終更新から 1802日 が経過しています。

(32) maxとargmax と似た関数で、
min ( n ) は、n次元目の最小値を取得できる。
argmin ( n ) は、n次元目の最小値を持つ要素のインデックスを取得できる。

乱数で配列aを作成する。

>>> import numpy as np
>>> a = np.floor(np.random.rand(4,3)*10)
>>> a
array([[ 3.,  3.,  0.],
       [ 0.,  5.,  4.],
       [ 8.,  0.,  1.],
       [ 1.,  5.,  6.]])

列方向の最小値、最小値を持つ要素のインデックスを取得してみる。

>>> a.min(0)
array([ 0.,  0.,  0.])
>>> a.argmin(0)
array([1, 2, 0])

行方向の最小値、最小値を持つ要素のインデックスを取得してみる。

>>> a.min(1)
array([ 0.,  0.,  0.,  1.])
>>> a.argmin(1)
array([2, 0, 1, 0])

また、min, argmin の引数で軸番号を指定しない場合、全要素を対象に最小値を探してくれる。

>>> a.min()
0.0
>>>
>>> a.argmin()
2

a.argmin()は、配列を1次元に展開したときのインデックス値を返す仕様のようだ。

参考: (32) maxとargmax


コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です