## Summary

Calculates statistics for each cell of an image based on a defined focal neighborhood.

## Discussion

For more information about the methods and band orders used with this function, see the Statistics raster function.

The referenced raster dataset for the raster object is temporary. To make it permanent, you can call the raster object's save method.

## Syntax

Statistics (raster, kernel_columns, kernel_rows, stat_type, {fill_no_data_only})

Parameter | Explanation | Data Type |

raster | The input raster on which to perform focal statistics. | Raster |

kernel_columns | The number of pixel columns to use in your focal neighborhood dimension. (The default value is 3) | Integer |

kernel_rows | The number of pixel rows to use in your focal neighborhood dimension. (The default value is 3) | Integer |

stat_type | Specify the type of statistics to calculate. - max— Calculates the maximum value of the pixels within the neighborhood.
- mean— Calculates the average value of the pixels within the neighborhood. This is the default.
- min— Calculates the minimum value of the pixels within the neighborhood.
- standarddeviation—Calculates the standard deviation value of the pixels within the neighborhood.
- median—Calculates the median value of the pixels within the neighborhood.
- majority— Calculates the majority value, or the value that occurs most frequently, of the pixels within the neighborhood.
- minority— Calculates the minority value, or the value that occurs least frequently, of the pixels within the neighborhood.
(The default value is None) | String |

fill_no_data_only | Specify whether NoData values are ignored in the analysis. - True—Fills NoData pixels only. This is the default.
- False—NoData pixels will not be filled.
(The default value is False) | Boolean |

Data Type | Explanation |

Raster | The output raster. |

## Code sample

Fills in NoData values with the majority value in a 5 by 5 neighborhood for categorical data.

```
from arcpy.sa import *
LandCover_filled = arcpy.sa.Statistics("LandCover.tif", 5, 5, "majority", True)
LandCover_filles.save("LandCover_majority_5_by_5.tif")
```

Smooths an elevation raster in a 3 by 3 neighborhood using mean value.

```
import arcpy
from arcpy import env
from arcpy.sa import *
# Set environment settings
env.workspace = "C:/statistics_example/data"
# Set local variables
inRaster = "elevation.tif"
kernel_columns=3
kernel_rows=3
stat_type="Mean"
fill_no_data_only = False
# for each pixel, calculate the average value of pixels within its neighborhood. the neighborhood size is 5x5
output = Statistics(imagePath1, kernel_columns, kernel_rows, stat_type, fill_no_data_only)
output.save("statistics_mean_5_by_5.tif")
```