I am trying to identify demographic characteristics of areas within a 1-mile radius of schools.

I have one shapefile with block level census data and another with the school locations. The files do not have a shared field.

Is there a way to merge the data to create a shapefile that contains the census blocks (and accompanying data) and the schools? There would obviously be repetition among the schools, since multiple census blocks fall within each school's radius. There would also be some overlap/repetition of census blocks, since some schools are close enough to each other to make some radii overlap.

I am pretty sure there is a simple solution that I learned at some point, but my GIS skills are a bit rusty and I'm having difficulty.

  • Spatial join tool, and use within a distance parameter, desktop.arcgis.com/en/desktop/latest/tools/analysis-toolbox/…
    – artwork21
    Jun 8, 2015 at 17:40
  • It's not entirely clear what you want to do, because we don't have a good understanding of what attributes you have or whether you want exactly a mile or any census track with even a portion of its area within a mile. A Spatial Join could be used to aggregate census block values using field mappings so you'd get the total of all block attributes as attributes of the school. However that method will take the entire block, even if 95% of it is greater than a mile away. To address that you'd need to look at apportioning the data first. Can you provide more details of what you want to do?
    – Chris W
    Jun 8, 2015 at 20:50
  • This may be a duplicate of gis.stackexchange.com/questions/133832 or gis.stackexchange.com/questions/149364 among others depending on exactly what you want to do and what demographic characteristics you're looking at. In terms of 'more details', can you describe your desired output (ie points with specific attributes)?
    – Chris W
    Jun 8, 2015 at 20:55

1 Answer 1


You may use Spatial Join tool:

Joins attributes from one feature to another based on the spatial relationship. The target features and the joined attributes from the join features are written to the output feature class.

Using the WITHIN_A_DISTANCE match option:

WITHIN_A_DISTANCE —The features in the join features will be matched if they are within a specified distance of a target feature. Specify a distance in the search_radius parameter.

Your Answer

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

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