ArcGIS Pro – Spatial Joining One-to-One with Unique Join Features

arcgis-desktoparcgis-prospatial-join

I am using ArcGIS Pro 2.9.0

I'm attempting to run a spatial join

  • Join one to one
  • Keep all target features
  • Closest

I have multiple target features in the same locations, and when I run spatial join, it picks up the closest join feature twice or more. I'd like for it to pick up the next available join feature so that all my joins are unique.

Is spatial join the correct tool or should I be running another processing tool?

Best Answer

Not really an answer, but too long for a comment...

To pick up the "next available" join feature, as you say, you would have to eliminate the already-joined features. This means that you would have to run the join one feature at a time, eliminating the joined features after each single feature has been joined.

Then after each join, append the resulting one feature to the final join feature class.

However, I assume that you'd want to be very careful about the order in which your selected the individual feature to join each time, as you'd probably want the closest joins to be done first, otherwise they may never happen at all - ie, if they were otherwise also closest (but not as close) to another feature.

So you may want to to a reverse spatial join first, to determine the distances between each join, then order the features by distance, then select each feature one-at-a-time, doing a (forward/normal) spatial join on just the one selected feature, then append the results each time (or merge all the results at the end).

Related Question