#python #shapefile #geopandas
Вопрос:
Я хочу идентифицировать всех соседей для каждого района местного самоуправления (LGA) в Австралии, используя приведенные ниже коды (снимок данных прилагается). Я получил ошибку: «Ошибка типа: (Геосериалы’>, ><класс ‘нетип»>)»
import geopandas as gpd
file= "LGA_2016_AUST.shp"
# open file
gdf = gpd.read_file(file)
# add NEIGHBORS column
gdf["NEIGHBORS"] = None
for index, LGA in gdf.iterrows():
# get 'not disjoint' LGA
neighbors = gdf[~gdf.geometry.disjoint(LGA.geometry)].LGA_NAME16.tolist()
# remove own name of the LGA from the list
neighbors = [ name for name in neighbors if LGA.LGA_NAME16 != name ]
# add names of neighbors as NEIGHBORS value
gdf.at[index, "NEIGHBORS"] = ", ".join(neighbors)
# save GeoDataFrame as a new file
gdf.to_file("LGA_2016_AUST_new.shp")