Percentile

Summary

Creates a raster object where each pixel contains the specified percentile value across multiple rasters.

Discussion

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

Syntax

Percentile (rasters, {percentile_values}, {percentile_interpolation_type}, {extent_type}, {cellsize_type}, {ignore_nodata}, {process_as_multiband})
ParameterExplanationData Type
rasters
[rasters,...]

The list of input rasters.

Raster
percentile_values

The percentile value to calculate.

(The default value is 90)

Double
percentile_interpolation_type

The interpolation method used when the specified percentile value lies between two input cell values.

  • AUTO_DETECTIf the input raster collection is integer type, the NEAREST method is used. If the input raster collection is floating point type, the LINEAR method is used.
  • NEARESTThe nearest available value to the specified percentile is used. The output pixel type will match the input.
  • LINEARThe weighted average of the two surrounding percentile values is used. The output pixel type is floating point.

(The default value is AUTO_DETECT)

String
extent_type

The method that will be used to compute the extent of the output when the input rasters have different extents.

  • FirstOfThe output extent is defined using the extent of the first input raster.
  • LastOfThe output extent is defined using the extent of the last input raster.
  • IntersectionOfThe output extent is defined as the intersecting area of the input rasters.
  • UnionOfThe output extent is defined as the total extent of the input rasters.

(The default value is FirstOf)

String
cellsize_type

The method that will be used to compute the pixel size of the output when the input rasters have different pixel sizes.

  • FirstOfThe output pixel size is defined using the pixel size of the first input raster.
  • LastOfThe output pixel size is defined using the pixel size of the last input raster.
  • MaxOfThe output pixel size is defined using the maximum pixel size of the input rasters.
  • MeanOfThe output pixel size is defined using the mean of both input rasters.
  • MinOfThe output pixel size is defined using the minimum pixel size of the input rasters.

(The default value is FirstOf)

String
ignore_nodata

Specifies whether to ignore NoData values in the calculation.

  • True—The analysis will include all valid pixels in the input rasters and ignore any NoData pixels.
  • False—The analysis will result in NoData if there are any NoData values for the pixels in the input rasters.

(The default value is False)

Boolean
process_as_multiband

Specifies how the bands of the input rasters are processed.

  • True—Each multiband raster will be processed as a multiband raster. The operation will be performed for each band from one input using the corresponding band number from other inputs.
  • False—Each band from a multiband raster input will be processed separately as a single-band raster.

(The default value is False)

Boolean
Return Value
Data TypeExplanation
Raster

The output raster.

Code sample

Percentile example

Computes a raster object that contains the 90th percentile value across three multiband rasters.

from arcpy.ia import * 

rc = RasterCollection([landsat_1, landsat_2, landsat_3]) 

percentile_raster = Percentile(rc, percentile_value = 90, percentile_interpolation_type = "AUTO_DETECT", extent_type = "UnionOf", cellsize_type = "MinOf", 
		ignore_nodata = True, process_as_multiband = True)