4

python / を使用して、ポイントと国の国境の間の距離を計算したいshapely。point.distance(poly) で問題なく動作するはずです。たとえば、ここで示されています。Polygon Shapely の最も近いポイントの座標を検索しますが、使用するgeopandasと次の問題に直面します。 'GeoSeries' object has no attribute '_geom'

データの処理で何が問題になっていますか? 私の国境データセットはhttp://www.gadm.org/からのものです

「GeoSeries」オブジェクトには属性「_geom」がありません

4

1 に答える 1

5

geopandasのドキュメントによると、GeoSeries はジオメトリのベクトルです (あなたの場合、0 (POLYGON...オブジェクトは 1 つしかないことを示していますが、それでもベクトルです)。最初のジオメトリ要素を取得する方法が必要です。GeoSeries クラスは__getitem__メソッドを実装しているので、austriaBorders.geometry[0]必要なジオメトリを提供する必要があります。で試してみてくださいpoint.distance(austriaBorders.geometry[0])

ポイントまでの距離のみが必要な場合GeoSeriesは、distanceメソッドが実装されていますが、含まれている各ジオメトリまでの距離を含むベクトルが返されます (ドキュメントによると)。

于 2016-10-12T12:49:15.247 に答える