1. ホーム
  2. python

[解決済み] Numpy: 範囲内の要素のインデックスを求める。

2022-09-14 18:15:45

質問

numpyの数値の配列があるのですが、例えば。

a = np.array([1, 3, 5, 6, 9, 10, 14, 15, 56])  

私は特定の範囲内の要素のすべてのインデックスを見つけたいと思います。例えば、範囲が(6、10)である場合、答えは(3、4、5)になるはずです。これを行うための組み込み関数はありますか?

どのように解決するのですか?

この場合 np.where でインデックスを取得し np.logical_and で2つの条件を設定します。

import numpy as np
a = np.array([1, 3, 5, 6, 9, 10, 14, 15, 56])

np.where(np.logical_and(a>=6, a<=10))
# returns (array([3, 4, 5]),)