整数の配列があり、その配列が複数の値のリスト内の任意の値と等しい場所を見つけたいと考えています。
これは、各値を個別に処理するか、ループ内で複数の「or」ステートメントを使用することで簡単に実行できますが、より良い/より高速な方法が必要だと感じています. 私は実際に size の配列を扱っています4000 x 2000
が、ここに問題の簡略版があります:
fake = arange(9).reshape((3,3))
array([[0, 1, 2],
[3, 4, 5],
[6, 7, 8]])
want = (fake==0) + (fake==2) + (fake==6) + (fake==8)
print want
array([[ True, False, True],
[False, False, False],
[ True, False, True]], dtype=bool)
私が望むのは、値のリストをwant
含む単一のコマンドから取得する方法です。fake
[0, 2, 6, 8]
これが既に含まれているパッケージがあり、Python でループを使用して関数を記述した場合よりも大幅に高速になると想定しています。