NumPy の配列インデックスを使用した配列要素へのアクセス
NumPy のインデックス付き関数は、1 つの配列から要素を選択する機能など、強力なデータ操作テクニックを提供します。別の配列で指定されたインデックスを使用します。これを実現するには:
アプローチ 1: 高度なインデックス作成を使用する
A[np.arange(A.shape[0])[:,None] ,B]<br>
このコードは高度なインデックス付けを利用しており、np.arange(A.shape[0])[:,None] は、各行のインデックスを持つ列ベクトルを作成します。 A. これを B と組み合わせると、行と列の両方に沿って A のインデックスを作成できます。
アプローチ 2: 線形インデックス作成
m,n = A.shape<br>np.take(A,B n*np.arange(m)[:,None])<br>
このアプローチでは、A の各要素がアドレス指定される線形インデックスを利用します。単一のインデックスによって。まず、np.arange を使用して生成された線形シーケンスに B の対応する行を追加することで、線形インデックスを計算します。この線形インデックスは、A から要素を取得するために使用されます。
使用例:
指定された行列 A:
array([[ 2, 4, 5, 3], [ 1, 6, 8, 9], [ 8, 7, 0, 2]])
インデックス行列 B :
array([[0, 0, 1, 2], [0, 3, 2, 1], [3, 2, 1, 0]])
アプローチを適用すると、望ましい結果が得られます:
array([[2, 2, 4, 5], [1, 9, 8, 6], [2, 0, 7, 8]])
以上が別の配列のインデックスを使用して NumPy の配列要素にアクセスする方法は?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。