私は2次元配列を持っています:
MyArray = array([6588252.24, 1933573.3, 212.79, 0, 0],
[6588253.79, 1933602.89, 212.66, 0, 0],
etc...)
最初の 2 つの要素MyArray[0]
とMyArray[1]
は、点のX座標とY座標です。
配列内のすべての要素について、半径X単位で最も近い 1 つの要素を返す最も簡単な方法を見つけたいと思います。これは 2D 空間にあると仮定しています。
この例で言いましょうX = 6
。
すべての要素を他のすべての要素と比較することで問題を解決しましたが、リストが 22k ポイントの長さの場合、これには 15 分ほどかかります。最終的には、約 3000 万ポイントのリストでこれを実行したいと考えています。
Kd ツリーについて読んで、基本的な概念は理解しましたが、それらをスクリプト化する方法を理解するのに苦労しました。