この記事では、Python言語とNumPyを用いて、配列(リスト)から特定の条件を満たす要素番号を抽出する方法をソースコード付きで解説します。
条件を満たす要素番号抽出
NumPyの「numpy.where」を利用することで、指定した条件を満たす配列(リスト)の要素番号を取り出すことが出来ます。
書式
np.where(条件式)
今回は、配列y内の数値データのうち、10以上20未満のデータがある要素番号xを取り出す。
ソースコード
サンプルプログラムのソースコードは下記の通りです。
# -*- coding: utf-8 -*- import numpy as np # 配列の宣言 y = np.array([8,9,10,11,15,18,22,21,20,29]) # 条件を満たすインデックスを取得 x = np.where((y>=10)&(y<20)) # [2 3 4 5] # 結果を表示 print(x[0])
コメント