Хотя все еще немного грубо по краям, особенно когда речь заходит о документации и примерах, но будущее геопанды выглядит блестящим. Он в основном объединяет мощь панелей данных панда с геопространственными возможностями.
функция, которую вы ищете, называется sjoin
Убедитесь, что ваш компьютер / экземпляр имеет достаточно памяти для выполнения операции
import geopandas as gpd
import pandas as pd
import os
gdfLeft = gpd.read_file(os.path.join(PATH,INPUT_FILE_NAME_1))
gdfRight = gpd.read_file(os.path.join(PATH,INPUT_FILE_NAME_2))
gdfJoined = gpd.sjoin(gdfLeft, gdfRight, how="left", op='intersects')
Join attributes by location
команды изfTools
плагина:doSpatialJoin.py
особенноcompute()
метод. Не должно быть слишком сложно исключить любой код пользовательского интерфейса из этого и сократить его до простой функции Python.