I am new to ArcGIS Desktop.

I have a list of cities and their longitude/latitude (as a .csv). I have another .tiff file which contains a map of the world records values on a 5' x 5' grid cell (this is the data: https://ozak.github.io/Caloric-Suitability-Index/).

I am now trying to match my cities to the average value of the .tiff data in a 50km radius around the city. I would like to export the data as a .csv or something similar with an added column for the average value.

I've pulled both datasets up in ArcMap but I cannot figure out how to overlay, calculate the average and then export the data again.

Could someone point me in the right direction?

up vote 4 down vote accepted

You'll need to do 3 steps:

  1. Add your cities to ArcGIS as a point layer. You can do this using the Add XY Data command under File > Add Data. Make sure the city names and any other identifying information you want to appear in your final output is present in your point layer.

  2. Use the Buffer tool on that point layer with the radius set to 50km and Dissolve set to NONE. That will create a 50km radius circle around each of your cities.

  3. Use the Zonal Statistics as Table tool to calculate the mean values of every cell in your TIFF within those 50km circles. You will need the Spatial Analyst extension for this tool to work.

It looks like both your layers are in lat/long WGS84 so you should be OK there, although you should probably use a coordinate system that does a better job of accurately representing areas.

WARNING: There is a known bug in ArcGIS Zonal Statistics which (I think) affects v10.2, it's fixed in 10.4. I'm pretty sure that if your TIFF file doesn't have any NODATA cells, it doesn't affect the output, but if upgrading is an option you may want to do that first.

Your Answer

By clicking "Post Your Answer", you acknowledge that you have read our updated terms of service, privacy policy and cookie policy, and that your continued use of the website is subject to these policies.

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