私は3つの点の間のx/y距離を表すこのような2つの2D numpy配列を持っています。私は単一の配列のタプルとしてx/y距離が必要です。2つの2D numpy配列を2つのタプルの1つの2次元配列に結合する
soから:
x_dists = array([[ 0, -1, -2],
[ 1, 0, -1],
[ 2, 1, 0]])
y_dists = array([[ 0, -1, -2],
[ 1, 0, -1],
[ 2, 1, 0]])
私が必要:
dists = array([[[ 0, 0], [-1, -1], [-2, -2]],
[[ 1, 1], [ 0, 0], [-1, -1]],
[[ 2, 2], [ 1, 1], [ 0, 0]]])
私はdstack/hstack/vstack/CONCATENATEの様々な順列を使用してみましたが、それらのどれも私がやりたいように見えるん。コード内の実際の配列は巨大である可能性が高いため、Pythonの要素を反復処理し、「手動で」並べ替えを行うのは速度的な選択肢ではありません。
編集: これは私が最後に思い付いたものです:https://gist.github.com/807656
ですが、 'x_dist'と' y_dist'が同じであることは単なる偶然でしょうか?また、あなたのアプリで負の距離の意味は何ですか? '_dist'は常に '対称的'でしょうか?しかし、uppertridiagonal部分はちょうど陰性ですか?あなたは何点を扱いたいと思っていますか?この配列の積み重ねの目的は何ですか?さらなる計算のために要素が「最適な」順序にあるか?ちょうどいくつかのtoughts、ありがとう – eat
それは偶然です。例のポイントは正気のために(0、0)、(1,1)、(2,2)です。 _distは確かに対称です。配列を積み重ねる目的は、それらを使ってポイントを動かすことです。リンクされた要点を参照してください。 – Zarkonnen