使用“设为空函数”将值设置为 NoData

设为空函数工具可以根据指定条件将所标识的像元位置设置为 NoData。

如果对某个输入条件栅格数据的求值结果为 True,则该工具会为输出像元返回 NoData;否则,将返回由 False 输入确定的值,该值可以是栅格数据,也可以是常数值。

在地理处理中,有两种方法可以确定像元位置求值结果是 True 还是 False:根据输入条件栅格数据,或根据应用了可选表达式的输入条件栅格数据。如果只使用输入栅格数据来确定,则将输入栅格中的非零值视为 True,而将所有零值都视为 False。求值结果为 True 的像元将接收 NoData 作为输出。将 NoData 用作输入的像元不等同于 False,仍会将 NoData 作为输出分配给该位置。

许多空间分析工具都可以用来确定哪些像元位置求值结果为 True,哪些结果为 False。特别是可以使用“数学”工具箱中的逻辑工具,其中的测试工具非常有帮助。

同样,设为空函数也经常用于将符合指定条件的所有值更改为 NoData。可以使用它处理剩余的选定像元、创建掩膜或去除模型内的某些像元以供将来考虑。

示例

使用表达式

要将值大于 5 的像元设置为 NoData,并且保留其他像元的原始值,请在工具对话框中使用以下参数:

  • 输入条件栅格InRas1

    表达式"Value < 5"

    求值结果为 False 的输入栅格或常数值InRas1

    输出栅格setnull_1

以下是在“地图代数”中实现相同功能的表达式:

OutRas = SetNull(InRas1 < 5, InRas1)

不使用表达式

下图将输入栅格 (InRas1) 用作条件。如果 InRas1 中的某个像元值为 True,(非 0 NoData),则将 NoData 分配给该像元位置;否则,将写入 InRas2 中的值以作为输出值。

SetNull 示例
OutRas = SetNull (InRas1, InRas2)

相关主题

9/15/2013