需要 Spatial Analyst 许可。
描述
根据多个栅格数据计算每个像元的统计数据。
可用的统计数据有:众数、最大值、均值、中位数、最小值、少数、范围、标准差、总和及变异度。
插图
使用方法
使用此工具时输入栅格的顺序不重要。
将多波段栅格指定为输入栅格或常量值(Python 中的 in_rasters_or_constants)之一时,将使用所有波段。
要处理一系列来自多波段栅格的波段,可先用波段合成工具创建由这些特定波段组成的新栅格数据集,并在输入栅格或常量值(Python 中的 in_rasters_or_constants)列表中使用该结果。
对于最大值、最小值、均值、中位数、众数、少数及总和这些统计数据类型,如果将单个栅格数据用作输入,则输出像元值将与输入像元值相同。对于范围和 STD这些统计数据类型,输出像元值全部为 0;对于变异度这种统计数据,输出像元值均为 1。
有关适用于此工具的地理处理环境的详细信息,请参阅分析环境和 Spatial Analyst。
语法
CellStatistics(in_rasters_or_constants, {statistics_type}, {ignore_nodata})
参数 | 说明 | 数据类型 |
in_rasters_or_constants [in_raster_or_constant,...] | 输入栅格列表,将为其中的输入栅格计算“分析”窗口中各个像元的统计数据。 可使用一个数字作为输入;但是,像元大小和范围必须先在环境中进行设置。 | Raster Layer; Constant |
statistics_type (可选) | 要计算的统计类型。
默认统计类型为平均值。 | String |
ignore_nodata (可选) | 指示在进行统计计算时是否忽略 NoData 值。
| Boolean |
返回值
名称 | 说明 | 数据类型 |
out_raster | 输出栅格。 对于各个像元,可通过将指定统计数据类型应用到该位置处的输入栅格来确定该值。 | Raster |
代码示例
CellStatistics 示例 1(Python 窗口)
在本示例中,将针对多个输入 Grid 栅格中的每个像元计算标准差,并将结果输出为 IMG 栅格。
import arcpy
from arcpy import env
from arcpy.sa import *
env.workspace = "C:/sapyexamples/data"
outCellStats = CellStatistics(["degs", "negs", "cost"], "STD", "DATA")
outCellStats.save("C:/sapyexamples/output/outcellstats.img")
CellStatistics 示例 2(独立脚本)
在本示例中,将针对多个输入 Grid 栅格中的每个像元计算标准差,并将结果输出为 Grid 栅格。
# Name: CellStatistics_Ex_02.py
# Description: Calculates a per-cell statistic from multiple rasters
# Requirements: Spatial Analyst Extension
# Import system modules
import arcpy
from arcpy import env
from arcpy.sa import *
# Set environment settings
env.workspace = "C:/sapyexamples/data"
# Set local variables
inRaster01 = "degs"
inRaster02 = "negs"
inRaster03 = "cost"
# Check out the ArcGIS Spatial Analyst extension license
arcpy.CheckOutExtension("Spatial")
# Execute CellStatistics
outCellStatistics = CellStatistics([inRaster01, inRaster02, inRaster03], "RANGE", "NODATA")
# Save the output
outCellStatistics.save("C:/sapyexamples/output/cellstats")
环境
许可信息
- Basic: 需要 Spatial Analyst
- Standard: 需要 Spatial Analyst
- Advanced: 需要 Spatial Analyst