[GIS] Merging or dissolving points while maintaining attributes using ArcGIS Desktop

arcgis-desktopdissolvefields-attributes

I have a point shapefile with points that have identical geometry but different attributes. I would like to merge the points in the same location, but keep the highest value of the attribute from them.

I tried using dissolve and statistics fields, it dissolved the points but it kept the highest value of each attribute from the entire shapefile, while i only want the point to keep the value of each cluster.

For example, in a position i have a pole, with 3 fiber optics lines coming, and 2 leaving. I would like for the position of the pole to merge the points into one, and keep the highes value, in this case, 3.

Best Answer

If the points are in one shape file.. it might be worth selecting by attributes and creating three separate shape files in order to then use spatial join. That sounds circuitous but I think effecting a conditional merge would require some code to iterate through each point.

When the points are in separate shape files :

It is very unlikely the points will be literally identical even if they started out as a common set, so that will need to be handled.

One option which might work (not tried it myself) is to set the XY tolerance in the Environments such that small differences are ignored. Alternatively you could buffer one dataset by a very small amount, then spatial join this to the other set of points.

With that done you could use the spatial join tool (in Analysis Tools) which gives you more options. Here you can right click on the field of interest and set "merge rule" to maximum. Alternatively, do a usual spatial join via right click from the Table of Contents then create a field in the joined shapefile and use a nested conditional statement in field calculator to select the highest.

Another option (and this would be my preference) would be to export it to a database and use a query

Related Question