Функции "внутри" и "содержит" не работают - PullRequest
0 голосов
/ 09 июля 2020

У меня есть два шейп-файла, один из которых содержит 2500 точек, а другой - 37 полигонов. Я ищу, какие точки находятся внутри каждого многоугольника. Это код, который я использую, и шейп-файлы. HR: https://drive.google.com/drive/folders/13Hs8O37hc6sO1c7oYUnC85E_hCC7nERC?usp=sharing Станции: https://drive.google.com/drive/folders/1TiJABOBobUSkdYWkzA-IcH0wpQvs22_X?usp=sharing

import geopandas as gpd

HR_shp = 'location of HR shapefile'
station_shp = 'location of Station shapefile'

HR = gpd.read(HR_shp)
stations = gpd.read(station_shp)

for index, row in HR.iterrows():
    #Choose one polygon at time
    HR_i = HR.loc[HR.index == index]

    #Choose stations (points) are inside polygon (HR_i)
    stations_i = stations[stations.within(HR_i)]

    #Print the size of this GDF just to check if works
    print(stations_i.shape)

Но это не работает, и я уверен, что оба шейп-файла имеют одинаковый CRS, и когда я рисую один многоугольник из 37, точек, я вижу, есть ли внутри точки, но функция их не распознает

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...