查找输入列表中满足指定条件的值

需要 Spatial Analyst 许可。

有两个局部工具,可以根据从一组输入栅格得到的值列表中确定满足指定条件的那个值或那些值来指定像元的输出值。这两个工具是频数取值等级

频数取值

频数取值工具可以为每个位置确定在通过输入栅格标识出的输入值中第 n 个出现频率最高的值。该工具需要输入栅格列表和频数值来识别第 n 个出现频率最高的值,其中频数值可能是常量或栅格。

一个像元位置具有五个输入栅格的示例

例如,如果指定的频数值是 2,那么对于每个像元,应该输出由输入栅格得到的值列表中出现频率第二高的值。如果特定位置的输入值如下

频数取值InRas1InRas2InRas3InRas4InRas5

2

3

3

5

3

5

频数取值的输入像元值示例

那么,这些值将按照下面的方式进行排序:

输入栅格

3

InRas1

3

InRas2

3

InRas4

5

InRas3

5

InRas5

经排序的值列表

因此,列表中出现频率最高的值是 3,出现了三次;出现频率第二高的值是 5,出现了两次。由于指定的频数值是 2,所以对于该像元位置该工具的输出是 5。

三个输入栅格的示例

再比如,下面的图示识别出了三个输入栅格的出现频率第二高的值。

频数取值图示
OutRas = Popularity(2, [InRas1, InRas2, InRas3])

只要某个输入栅格上的某个位置的像元是 NoData,该位置就将输出 NoData。

如果某个特定位置没有出现频率第二高的值,那么该像元位置处将输出 NoData。这种情况会在以下条件下发生:

  • 所有值都是唯一的。
  • 不同的值的数量相等。

等级

等级工具可以为每个像元创建一个输入栅格中的值的内部参数列表。参数列表中的值按照从小到大的顺序排列。将输出由输入等级栅格定义的等级顺序位置上的值(第 n 小的值)。

示例

例如,输入等级栅格是 RankRas,输入栅格列表是 InRas1InRas2InRas3InRas4RankRas 栅格的所有像元值都是常数 3,这表明将返回第三小的值。

InRas1InRas2InRas3InRas4

4

6

3

8

等级工具的输入值示例

这些值的等级排列情况如下:

位置像元值

1

3

2

4

3

6

4

8

等级顺序参数列表

由于等级输入中的值所定义的位置是第三个位置 (3),所以该像元的输出值将会是 6。

相关主题


在本主题中
  1. 频数取值
  2. 等级