numpyで要素のインデックスを取得する方法は何ですか?
numpyでは、numpy.where()関数を使用して条件を満たす要素のインデックスを取得することができます。この関数は、条件を満たす要素のインデックスを含むタプルを返します。
例えば、私たちにはnumpy配列arrがあります。
import numpy as np
arr = np.array([1, 2, 3, 4, 5])
numpy.where()関数を使用して、2より大きいすべての要素のインデックスを取得したいです。
indexes = np.where(arr > 2)
print(indexes)
結果:
(array([2, 3, 4]),)
条件を満たす要素のインデックスは2、3、4です。インデックス値を直接取得したい場合は、numpy.where()の最初の要素を使用できます。
indexes = np.where(arr > 2)[0]
print(indexes)
出力:
[2 3 4]