NumPyのwhere
関数は、条件に基づいて配列から要素を選択するための強力なツールです。この関数は、条件が真である場合にはx
から要素を選択し、そうでない場合にはy
から要素を選択します。
import numpy as np
# 例えば、以下のように使用できます
a = np.arange(10)
print(np.where(a < 5, a, 10*a))
上記のコードでは、a
の各要素が5未満であればそのままの値を、そうでなければその値の10倍を新しい配列に格納します。
また、where
関数は多次元配列にも対応しています。
print(np.where([[True, False], [True, True]], [[1, 2], [3, 4]], [[9, 8], [7, 6]]))
このコードは、条件が真である場合には第二引数の配列から要素を選択し、そうでない場合には第三引数の配列から要素を選択します。
where
関数は、条件に基づいて配列の要素を操作する際に非常に便利です。この関数を使うことで、Pythonのfor文やif文を使ってすべての要素を舐めるようなことは避けられ、計算速度も向上します。
以上がNumPyのwhere
関数の基本的な使い方です。この関数を理解し、活用することで、Pythonでのデータ分析がより効率的になります。.