numpy.whereは、条件に基づいて配列から要素を選択するためのNumPy関数です。この関数は、条件が真である場合にはxから、そうでない場合にはyから要素を選択します。

基本的な使用法

以下に基本的な使用法を示します。

import numpy as np

# 配列の作成
a = np.arange(10)

# where関数の使用
np.where(a < 5, a, 10*a)

このコードでは、配列aの各要素が5未満であればそのままの値を、そうでなければその値の10倍を新しい配列に格納します。

多次元配列での使用

numpy.where関数は多次元配列でも使用できます。

import numpy as np

# 多次元配列でのwhere関数の使用
np.where([[True, False], [True, True]], [[1, 2], [3, 4]], [[9, 8], [7, 6]])

このコードでは、条件が真である場合には第二引数の配列から、そうでない場合には第三引数の配列から要素を選択します。

ブロードキャスト

numpy.where関数は、xy、および条件が一緒にブロードキャストされる形状になる必要があります。

import numpy as np

# ブロードキャストの例
x, y = np.ogrid[:3, :4]
np.where(x < y, x, 10 + y)

このコードでは、x10+yの両方がブロードキャストされます。

以上がnumpy.where関数の基本的な使用法となります。この関数を使うことで、条件に基づいて配列から要素を選択することが可能になります。.

投稿者 admin

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です