メインコンテンツに移動

find

配列の要素を見つける

MATLABにはfindって関数があって、条件にあう要素のキー(インデックス)が返される。

Pythonには、numpyのwhereってのがあって、同様に返されるがキーそのものが返らなくて、ずっと解らなかったが、ようやく解った。

import bumpy as np

a=np.arange(5)

np.where(a==2)
# (array([2]),)

np.where(a==2)[0]
# array([2])

np.where(a==2)[0][0]
# 2

キーの配列が返るという意味だったのか!。ようやく理解した。