yに含まれる一連のインデックスによって指定されたnumpy 配列のサブセットを抽出しようとしていますxが、いくつかのインデックスはまだy解放されています。具体例として。y形状を持っている間、形状(10,10,10,3)をx持ってみましょう(7,7,3)。の最後の次元はx、 の最初の 3 つの次元のインデックス情報に対応しますy。つまり、これと同じ結果が得られる効率的なスライス操作が必要です。
for i in x.shape[0]:
for j in x.shape[1]:
z[i,j,:] = y[x[i,j,0],x[i,j,1],x[i,j,2],:]
の次元数に関係なく、答えがうまくいくのが理想的ですx。
一般に、yはN+1形状 で次元に(...,N)なりx、Q+1形状 で次元(...,N)になり、結果は と同じ形状になりxます。
これの動機は、ベクトル フィールドからベクトルのサブセットを抽出することです。