我想使用python / shapely
计算某个国家/地区的点与边界之间的距离。它应该工作得很好point.distance(poly),例如在此处演示Find Coordinate of Closest Point on Polygon Shapely,但使用geopandas
我面临以下问题:
'GeoSeries' object has no attribute '_geom'
我处理数据有什么问题? 我的边界数据集来自http://www.gadm.org/
答案 0 :(得分:3)
根据geopandas文档,GeoSeries是几何的向量(在您的情况下,0 (POLYGON...
告诉您只有一个对象,但它仍然是一个向量)。应该有一种方法来获得第一个几何元素。 GeoSeries类实现了__getitem__
方法,因此austriaBorders.geometry[0]
应该为您提供所需的几何体。因此,请尝试使用point.distance(austriaBorders.geometry[0])
。
如果您只需要到点的距离,GeoSeries
已经实现了distance
方法,但它将返回一个向量,其中包含与其包含的每个几何的距离(根据文档)。