2013年2月19日火曜日

Python: 多次元 array の argmax

多次元の numpy.array の argmax を求めたい時は以下のようにする。

import numpy
x = [numpy.array object]
numpy.unravel_index(x.argmax(), x.shape)


なぜ?
x.argmax() は、1次元行列に変換した時の位置を返す。
numpy.unravel_index は一次元に変換した時の位置と行列の次元からその行列でいうとどの位置かを計算する。
これらを組み合わせると、もとの行列の何行何列目に最大値があるのかが分かる。

0 件のコメント:

コメントを投稿