Как отсортировать / пометить точки по полигону, в который они попадают? - PullRequest
0 голосов
/ 16 февраля 2019

У меня много полигонов (~ 40k), каждый из которых представляет отдельный городской квартал.У меня также есть много координатных точек широты / долготы (~ 700k).Каждый полигон помечен и имеет уникальное имя.

Есть ли способ, которым я могу пройти через каждую отдельную точку и посмотреть, в каком многоугольнике находится эта точка?Я не хотел бы, чтобы результат для каждой точки был «истинным» или «ложным», скорее я хотел бы создать новый столбец в кадре данных, который будет содержать все точки, которые бы указывали, в каком полигоне находится данная точка.

Вот так выглядят мои полигоны.Напомним, что каждый многоугольник представляет собой городской квартал.

    bctcb2010   boro_code   boro_name   cb2010  ct2010  shape_area  shape_leng  geometry_object geometry_layer  geometry_proj4
    0   50009001000 5   Staten Island   1000    000900  2.445896e+05    2508.948115 POLYGON ((-74.07920577013245 40.64343078374567...   geo_export_7753596b-be5c-4ff9-a64c-ddfbaf0c5d08 +proj=longlat +ellps=WGS84 +no_defs
    1   50020011000 5   Staten Island   1000    002001  1.110063e+05    1345.886422 POLYGON ((-74.07061992438017 40.61085506705416...   geo_export_7753596b-be5c-4ff9-a64c-ddfbaf0c5d08 +proj=longlat +ellps=WGS84 +no_defs
    2   50027001000 5   Staten Island   1000    002700  1.504068e+05    1703.381172 POLYGON ((-74.07524403910642 40.62600632452712...   geo_export_7753596b-be5c-4ff9-a64c-ddfbaf0c5d08 +proj=longlat +ellps=WGS84 +no_defs
    .
    .
    .

И вот как мои точки выглядят так:

latitude    longitude   
40.691991   -73.821149
40.691615   -73.820965
40.691536   -73.820927
40.692100   -73.828326
40.691667   -73.829862  
40.692130   -73.828220
.
.
.

Я хочу знать, в какой городской квартал попадает каждая точка.

Заранее спасибо!

...