3

numpy な座標配列を作成しようとしています。今まで、私はただ使っていましたx_coords, y_coords = numpy.indices((shape))x_coordsただし、ここではandy_coordsを 1 つの配列に結合したいと考えてx_coords = thisArray[:,:,0]y_coords = thisArray[:,:,1]ます。この場合、thisArray は 2 次元配列です。これを行うための簡単な方法またはpythonicな方法はありますか?

私はもともと を使用することを考えてnumpy.outerいましたが、それでは必要なものが得られません。考えられるアイデアは、(2 番目?) 軸に沿ってインデックス配列を連結することですが、それは非常にエレガントなソリューションとは思えません。(ただし、ここで最もクリーンなものかもしれません)。

ありがとう!

4

1 に答える 1

2

np.indices返されるものはすでに配列ですがx_coords = thisArray[0, :, :]y_coords = thisArray[1, :, :]. 座標の配列に非常に厳しい要件 (つまり、連続している) がない限り、最初の軸が最後までロールされた配列のビューを取得できます。

thisArray = numpy.rollaxis(numpy.indices(shape), 0, len(shape)+1)
于 2013-06-22T02:29:57.500 に答える