def print_cases(cases_gdf: gpd.geodataframe.GeoDataFrame): ''' Prints available NLP cases to the console. ''' ### Print cases print("\n") print("*********************** Available cases ***********************") ### Print table header... print('---------------------------------------------------------------') _print_table_row("Index", "Name", "Resolution", "Lat.", "Lon.") print('---------------------------------------------------------------') ### Loop through Points stored in the GeoDataFrame... for idx, case in cases_gdf.iterrows(): # Retrieve latitude from geometry cur_lat = case.geometry.coords.xy[1][0] # Retrieve longitude from geometry cur_lon = case.geometry.coords.xy[0][0] _print_table_row(idx, case["name"], case["res"], cur_lat, cur_lon) print('---------------------------------------------------------------')
def updateNeighbors(df: gp.geodataframe.GeoDataFrame) -> gp.geodataframe.GeoDataFrame: for index, country in df.iterrows(): neighbors = df[~df.geometry.disjoint(country.geometry)]["name"].tolist() neighbors = [ name for name in neighbors if country["name"] != name ] df.at[index, "neighbors"] = ", ".join(neighbors) return df