Select to view content in your preferred language

Identify polygons that are not bordering other polygons with a similar attribute

597
1
Jump to solution
03-08-2024 02:28 PM
AveryDurham1
New Contributor II

I'm working on a project where I have a polygon layer that is based on census blocks but have appended data added to it. I want to find all polygons that have a field that is not equal to the same field with any of it's neighbors. I'm attempting to do this with iterators and logic is ModelBuilder but I'm having trouble. Does anyone have suggestions?

0 Kudos
1 Solution

Accepted Solutions
Dale_Honeycutt
Occasional Contributor II

My first thought is to use the Dissolve tool to dissolve polygons on the field.  This will merge neighboring polygons that have the same field value into one polygon, but it will also do the opposite -- polygons that don't have any neighbors with the same field value won't be merged -- they'll have their original shape.  

Your goal is to identify those non-dissolved polygons. Dissolve has a Statistics Field option.  I'm thinking you can use ObjectID as the Statistics Field and Count as the Statistic Type.  Polygons that are the product of dissolving several polygons together will have a count > 1 while polygons that weren't dissolved (the ones you're looking for) will have a count = 1.  You should also add the ObjectID as a Statistic Field with First as the statistic type.  The output of Dissolve you're looking for is those polygons whose Count = 1 and you can figure out the input polygon ObjectID from the first (and only) ObjectID.  

 

 

 

View solution in original post

1 Reply
Dale_Honeycutt
Occasional Contributor II

My first thought is to use the Dissolve tool to dissolve polygons on the field.  This will merge neighboring polygons that have the same field value into one polygon, but it will also do the opposite -- polygons that don't have any neighbors with the same field value won't be merged -- they'll have their original shape.  

Your goal is to identify those non-dissolved polygons. Dissolve has a Statistics Field option.  I'm thinking you can use ObjectID as the Statistics Field and Count as the Statistic Type.  Polygons that are the product of dissolving several polygons together will have a count > 1 while polygons that weren't dissolved (the ones you're looking for) will have a count = 1.  You should also add the ObjectID as a Statistic Field with First as the statistic type.  The output of Dissolve you're looking for is those polygons whose Count = 1 and you can figure out the input polygon ObjectID from the first (and only) ObjectID.