在GeoPandas中,在用户定义的经度框中选择行字符串数据

问题描述

我有一个由Linestring和MultiLinestring组成的geopandas数据框。我想选择那些在纬度经度(由我定义)内的点(我没有定义几何形状)的Linestrings和MultiLinestrings。换句话说,我已经绘制了一些USGS断层迹线,我想在距纬度/经度一定距离内选择这些断层线的平方插图。到目前为止,我已经取得了一些成功,仅解开了整个数据框中的坐标,并且仅保存了经/纬度框中的点,但是后来我不再保留原始几何或信息中保存的数据。 (即这样:)

xvals=[]
yvals=[]
for flt in qfaults['geometry']:
    for coord in flt.coords:
       if coord[1] >= centroid[1]-1 and coord[1] <= centroid[1]+1 and coord[0]<=centroid[0]+1 and coord[0]>=centroid[0]-1:
           xvals.append(coord[0])
           yvals.append(coord[1])

关于使用GeoPandas数据框如何执行此操作是否有直觉?预先感谢。

解决方法

GeoPandas具有feat: added product card索引器,其工作原理与此完全相同。参见https://geopandas.readthedocs.io/en/latest/docs/user_guide/indexing.html

语法为.cx

gdf.cx[xmin:xmax,ymin:ymax]