Multi-Polygon causing error with spatial join of two Spatially Enabled Dataframes

674
2
07-28-2022 01:11 PM
ebarr_indepmo
New Contributor

pdf = p.spatial.join(city_df, how='inner', op='intersects')

I am receiving the below error or similar to it when I try to execute the above spatial join operation.   I am trying to extract County parcels for our municipality using an ArcGIS Online notebook.   I can easily get this to work using arcpy functions in the advanced notebook, but I would like to be able to achieve this using only the ArcGIS API for Python.  

TopologicalError: The operation 'GEOSContains_r' could not be performed. Likely cause is invalidity of the geometry <shapely.geometry.multipolygon.MultiPolygon object.   

 

I have seen in Shapely 1.8 there is a make_valid function added, but the ArcGIS Online Notebooks only have 1.6.4 package.   Is there a way to replicate this functionality to enable the spatial join to proceed?    

I would note that the spatial join is successful if I query the County parcels feature service for only those with a last_edited_date within 30days.    

0 Kudos
2 Replies
jcarlson
MVP Esteemed Contributor

What version of the ArcGIS Python API is your Notebook using? I know that spatial dataframe overlays got some improvements in 2.0.

- Josh Carlson
Kendall County GIS
0 Kudos
ebarr_indepmo
New Contributor

The ArcGIS Online Notebook has arcgis 1.9.1

0 Kudos