numpy に 2 つの配列があります。1 つ目は 2 次元配列で、ベクトルのリストと考えることができます。2 番目は 1 次元配列で、2 次元配列へのインデックスのリストと考えることができます。
1 次元配列のインデックスを使用して 2 次元配列の要素を選択したい。今、私はやっています
z=rnd.rand(2,10) # a list of 2d vectors of length 10
z_idx=rnd.randint(2,size=z.shape[1]) #indices selecting a dimension of the 2d vector
result=np.array([z[z_idx[i],i] for i in xrange(len(z_idx))])
しかし、これは非常に遅いです。
numpyでこれを行うより良い方法はありますか?