0

I have a school district polygon divided up by neighborhood, and I am trying to determine the number of students from each grade per neighborhood. The student point file contains an attribute with grades 1-12. I would like the output to be the neighborhood polygons with 12 added columns containing the count of each grade. I am looking to do this with model builder or a script because their are over 200 neighborhoods.

Thus far my research points me to intersect the neighborhood ID numbers to the points, join the students to the neighborhoods, and then use the field calculator to populate a field for each grade.

Is there a simpler way to automate this in ArcGIS Pro, or am I on the right track?

I would rather create a model that counts the attribute 'grade 5'for all points located in each neighborhood and creates a new column or adds it to an attribute column in the neighborhood shapefile, but my brain is frozen at the ModelBuilder.

I have AcrGIS Pro 2.3 with the basic license.

  • Hint: Summary Statistics tool being the fastest way. There 's probably 4-6 other ways/tool combinations to do this. – KHibma Mar 28 at 16:45
2

Here is a model solution, the key thing is you are summarising data first then pivoting it to turn your grade values into field, so here is my dummy data of two neighbourhoods, points are labelled with grades:

Data

Here is the model:

Model

Firstly you are joining neighbourhood to points to pass the neighbourhood name/id to the points.

The summary stats tool creates a table aggregating by name and grade counting on objectid to get the number of grades per grade level for each neighbourhood

Summary Stats

You then pivot this data as shown below:

Pivot

The resulting table is this:

Pivot table output

It is then up to you to join that table back to your neighbourhood data, that could be a final step in the model or something you do manually. If you don't know how to join data, suggest you read the help file.

  • 2
    Tick as solved is a proper way to thank. – FelixIP Mar 28 at 19:07

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.