How to count number of adjacent polys in a second layer

1287
1
10-10-2020 01:54 PM
peterdorward
New Contributor

Hi,

I am working on a project to prioritize open space (OS) for protection. One of the criteria we are using is the number of adjacent protected parcels to an unprotected one - the more adjacent parcels of  already protected open space the better the connectivity.  

I have two layers - one of protected OS and one of unprotected OS. I am trying to count the number of adjacent polys of protected OS to each parcel of unprotected OS. I can identify the adjacent protected OS parcels using  "search within distance" of 75' to allow for cross stream and road adjacencies.  However I cannot find a way to count the number of protected OS parcels that fall within the 75'.

Anyone have any suggestions?

Thx in advance for any help.

ps. running ArcGIS Pro 2.6.1.

0 Kudos
1 Reply
peterdorward
New Contributor

I figured out a solution, and thought I would share it in case anyone else gets stuck like I did.

I have two layers - one of protected OS and one of unprotected OS. I am trying to count the number of adjacent polys of protected OS to each parcel of unprotected OS. A bit circuitous, but the following derives the desired answer.

 

Generate Near Table

Input Features = Unprotected_OS

Near Feature = Protected_OS

Output = Unprotected_OS_Near_Protected

Search Radius = 75’ (to allow for roads & streams)

Uncheck “Find only closest feature”

 

The new table will have one feature (row) for each parcel of Protected_OS adjacent to each Unprotected_OS parcel. Unprotected_OS parcels not adjacent to Protected_OS will have no entries.

 

The number of adjacent Protected_OS parcels is calculated using Frequency

Input = Unprotected_OS_Near_Protected

Output = Unprotected_OS_Near_Protected_Count

Frequency Field = IN_FID (the OBJECTID of Unprotected_OS)

 

Add FREQUENCY back into Unprotected_OS using Join Field

Input = Unprotected_OS

Input Join Field = OBJECTID

Join Table = Unprotected_OS_Near_Protected_Count

Join Table Field = IN_FID

Transfer Field = FREQUENCY

(which is the number of adjacent polys in Protected_OS for each poly of Unprotected_OS)

 

0 Kudos