I'm using ArcMap and work with a dataset that contains all the buildings of north rhine-westphalia. This dataset contains different attributes for every object. My task is to count all neighboring buildings of a building. For that I create a buffer (100m) for every building and want count every other building within this buffer.

How do I do that?

Additionally, how do I get the mean height of all buildings in this buffer?

  • Hi Bera thank you for your fast answer :) But i have only one shape und i think for the spatial join i will need a target and a join feature. Or can i use my shape as the input for both?
    – joe_gerner
    Jun 22, 2018 at 12:16
  • Ok I can use one shape as input for the spatial join, but what do I have to do with the summary statistics? I get from the spatial join a shapefile. All Attributes are empty and there are three new attributes: "join_count","target_fid,"join_fid" . How can I get the number of neighbours for every building?
    – joe_gerner
    Jun 22, 2018 at 13:11
  • 1
    Try "Generate Near Table" . For each individual building, it will make a list of all of the closest buildings within a specified distance
    – Zipper1365
    Jun 22, 2018 at 13:33

1 Answer 1


Run Generate Near Table. Your buildings will be both the input and the near features. enter image description here

Join your buildings shapefile to the near table

Summarize the "input features" by the heights of the "near features" enter image description here

This should give you a table with the input Feature ID (the ID of the building), the number of other buildings within 100m, and the average of the elevation of those buildings within 100m. enter image description here

  • Hi Zipper, I have tried your solution but I still have a few small problems, maybe I miss something? 1) I run the Generate Near Table Function, with the Building Shape as Input Feature and Near Feature. 2)Then I join the building shape to the generated table. 3)After that, I use the function summarize for the attribute IN_FID. 4)I use the average of the attribute umring_2D_selc_gebauede_hoehe(this is the field which contains the height of the buildings. 5)Then I join the results table to the building shape. I use the OBJECTID for the join.
    – joe_gerner
    Jun 24, 2018 at 6:55
  • The number of neighbours in 100m distance is right.But I get no value for the average_elevation Do you know where I made a mistake? Thank you very much and best regards. I made some screenshots, but i dont know how to post them in a comment
    – joe_gerner
    Jun 24, 2018 at 6:55
  • The Walkthrough does not work. I get a near table and a results table, but if I want to join the results table to my buliding shape every value for in_fid, count_in_fid and average_elv is 0
    – joe_gerner
    Jun 26, 2018 at 11:09
  • You need to join the buildings to the near table rather than joining the near table to the buildings. Joining in that direction will duplicate the building records for every time that building was found to be "near" another building. the summarize should be done on this - the near table with the buildings joined to it. The resulting summary table can THEN be joined to the buildings layer for for further analysis if you want as it should be a one to one join then
    – Zipper1365
    Jun 26, 2018 at 12:50

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

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