ホームページ >バックエンド開発 >Python チュートリアル >「where」関数を使用して複数の条件を満たす Numpy 配列から要素を選択する方法
Numpy Where 関数と複数の条件
この質問は、Numpy Where 関数と複数の条件に基づく要素の選択に関するものです。
問題と問題の説明
ユーザーは、2 つの条件 (より大きいとより小さい) を適用して、配列 (dists) から特定の範囲内にある要素を選択したいと考えています。ただし、where 関数を (np.where(dists >= r)) および (np.where(dists
解決策
方法 1: 条件を 1 つの基準に結合する
この特定のケースでは、2 つの条件を 1 つの基準に結合することをお勧めします。
dists[abs(dists - r - dr/2.) <p>この単純なアプローチは、dist と範囲の中心の差の絶対値 (r dr/2) が範囲幅 (dr/2) の半分以下であるかどうかをチェックします。</p><p><strong>方法 2: ファンシー インデックスを使用する</strong></p><p>または、ファンシー インデックスを使用して、ブール マスクを使用して元の配列から要素を直接選択することもできます。</p><pre class="brush:php;toolbar:false">dists[(dists >= r) & (dists <p>この利点この方法では、要素ごとの論理演算子 (& および |) を使用して条件を結合し、基準を満たす要素を識別するバイナリ マスクが生成されます。</p><p><strong>問題の説明</strong></p> <p>(np.where(dists >= r)) と (np.where(dists </p>
以上が「where」関数を使用して複数の条件を満たす Numpy 配列から要素を選択する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。