等于频数 (Spatial Analyst)

需要 Spatial Analyst 许可。

摘要

逐个像元评估一组栅格中的值与其他栅格相等的次数。

插图

等于频数工具输入和输出值示例
OutRas = EqualToFrequency(ValRas, [InRas1, InRas2, InRas3])

使用情况

  • 可以在输入栅格列表中指定任意数量的栅格。

  • 如果任意输入栅格上的像元位置包含 NoData,则会在输出的该位置分配 NoData。

  • 输出栅格始终为整型。

  • 在 ArcPy 中,如果所有输入均为具有相同数量变量的多维栅格,则该工具将对具有相同维度值的所有切片执行运算,并且输出将为多维栅格。 输入中的变量必须具有相同维度或常见维度。

    如果所有输入均是具有一个变量但名称不同的多维栅格,请将 matchMultidimensionalVariable 地理处理环境设置为 False 以执行该运算。

    在 ArcPy 中,如果其中一个或多个输入为多维栅格,而其他输入为常量,则该工具将使用常量值,对所有变量的所有切片执行运算,并且输出将为多维栅格。

  • 有关适用于此工具的地理处理环境的详细信息,请参阅分析环境和 Spatial Analyst

参数

标注说明数据类型
输入赋值栅格

针对输入值栅格中的每个像元位置,计算输入列表中的栅格具有相等值的次数(频数)。

Raster Layer
输入栅格

将要与值栅格进行比较的栅格的列表。

Raster Layer
以多波段方式处理
(可选)

指定如何处理输入多波段栅格波段。

  • 未选中 - 来自多波段栅格输入的每个波段将被单独处理为单波段栅格。 这是默认设置。
  • 选中 - 每个多波段栅格输入都将作为多波段栅格进行处理。 将使用其他输入的相应波段数对一个输入的每个波段执行操作。
Boolean

返回值

标注说明数据类型
输出栅格

输出栅格。

对于输出栅格中的每个像元,该值表示栅格列表中的相应像元等于值栅格的次数。

Raster

EqualToFrequency(in_value_raster, in_rasters, {process_as_multiband})
名称说明数据类型
in_value_raster

针对输入值栅格中的每个像元位置,计算输入列表中的栅格具有相等值的次数(频数)。

Raster Layer
in_rasters
[in_raster,...]

将要与值栅格进行比较的栅格的列表。

Raster Layer
process_as_multiband
(可选)

指定如何处理输入多波段栅格波段。

  • SINGLE_BAND来自多波段栅格输入的每个波段将被单独处理为单波段栅格。 这是默认设置。
  • MULTI_BAND每个多波段栅格输入都将作为多波段栅格进行处理。 将使用其他输入的相应波段数对一个输入的每个波段执行操作。
Boolean

返回值

名称说明数据类型
out_raster

输出栅格。

对于输出栅格中的每个像元,该值表示栅格列表中的相应像元等于值栅格的次数。

Raster

代码示例

EqualToFrequency 示例 1(Python 窗口)

在本例中,将计算一组输入栅格等于另一个栅格的次数,并以 TIFF 栅格的形式输出结果。

import arcpy
from arcpy import env
from arcpy.sa import *
env.workspace = "C:/sapyexamples/data"
outETF = EqualToFrequency("cost", ["degs", "negs", "fourgrd"])
outETF.save("C:/sapyexamples/output/outetf.tif")
EqualToFrequency 示例 2(独立脚本)

在本例中,将计算一组输入栅格等于另一个栅格的次数,并以 Grid 栅格的形式输出结果。

# Name: EqualToFrequency_Ex_02.py
# Description: Evaluates the number of times a set of rasters is
#              equal to another raster on a cell-by-cell basis
# 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
inValueRaster = "cost"
inRaster01 = "degs"
inRaster02 = "negs"
inRaster03 = "fourgrd"

# Execute EqualToFrequency
outETF = EqualToFrequency(inValueRaster, [inRaster01, inRaster02, inRaster03])

# Save the output 
outETF.save("C:/sapyexamples/output/outETF")

许可信息

  • Basic: 需要 Spatial Analyst
  • Standard: 需要 Spatial Analyst
  • Advanced: 需要 Spatial Analyst

相关主题