I have two dataframes, both containing geometry columns. The first dataframe contains MULTIPOLYGONs
while the second one contains POINTs
. My aim is to join the dataframes so each POINT
will be assigned to corresponding POLYGON
. DF_polygons
has 2480
rows and DF_points
has aroud 150.000
rows (10 tractors with GPS driving over fields, data coming in every few seconds).
I used this code to join dataframes (also tried within
and contains
):
points_in_polygons = gpd.sjoin(DF_points, DF_polygons, op='intersects', how='inner)
The problem is, it returns a result with approximately 30.000.000
rows in all 3 cases. The desirable result would have 100.000 rows - so each unique point would be assigned to one of 2480 multipolygons.
Is it possible that the problem is in overlapping polygons? How can I deal with it? Which packages should I use? I am completely new to GeoPandas.