I am using ArcGIS Pro 3.1 and would like to calculate the average index values of a raster within pre-defined areas. I have a raster layer containing index values for each pixel. I also have several X-Y points plotted on the map within this raster layer. I would like to calculate the average index value for the 9 pixels surrounding and including each X-Y point. This is easy enough to do manually by selecting each pixel and averaging the index values by hand. However, I have been having trouble automating this process.

What I have attempted is creating a feature class including a number of polygons that were drawn around each point (to encompass the 9 pixels). The attribute table clearly shows each distinct polygon's shape length and shape area around each distinct point. I have tried using the Zonal Statistics as Table tool to calculate the Mean pixel value within those polygons. However, it only outputs the mean for all the polygons combined. Is there a better way to get the average pixel value for each polygon individually (essentially adding another column to the attribute table with these values).

1 Answer 1


You need to use only two tools to answer this question and it can be wrapped up in a very simple model:


Set the focal statistics tool to compute a mean over a window of 3x3 cells, the output will be a raster where the cells are the mean of the 3 by 3 cell neighbours. Then feed that raster into the Extract Multi Values to Points tool to pass the cell value into a new field in your point layer.

The screen shot below shows the mean value attributed back to the point layer.


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.