RemapRange (arcpy.sa)

Резюме

Список с диапазонами входных значений, которые должны быть переклассифицированы в выходной растр.

Рисунок

Пример таблицы перекодировки RemapRange
Пример таблицы перекодировки RemapRange для функций Переклассифицировать.

Обсуждение

Объект RemapRange может использоваться инструментом Переклассифицировать и классом WOTable.

Входные значения для перекодировки могут быть целочисленными или с плавающей точкой.

Старым значениям можно присвоить NoData, задав NoData (строку) в newValue для диапазона от startValue до endValue.

Диапазон переклассификации значений обычно используется, когда входные значения являются непрерывными, например, высота или расстояние, или при изменении групп категорийных данных, как в примере землепользования выше.

Для переклассификации индивидуальных значений в новые, сделайте значения startValue и endValue одинаковыми (в соответствии с желаемым значением переклассификации).

Входные диапазоны значений не должны перекрываться, за исключением значений на границе двух диапазонов. Когда происходит перекрытие, верхняя часть диапазона меньших входных значений включается, а нижняя часть диапазона более высоких входных значений исключается из переклассификации. Например:

1 3 : 5   (where  1 <= value <= 3, values remapped to 5)
3 5 : 3   (where  3 <  value <= 5, values remapped to 3)
5 7 : 1   (where  5 <  value <= 7, values remapped to 1)

Синтаксис

RemapRange (remapTable)
ПараметрОбъяснениеТип данных
remapTable
[[startValue, endValue, newValue],...]

Таблица перекодировки, используемая для перекодировки первоначальных значений (указанных в виде интервалов) в новые.

Она определяется список с диапазонами входных значений, которые должны быть переклассифицированы в новые. Является списком списков, где внутренние списки состоят из трех компонентов.

Составляющие компоненты:

  • startValue – нижняя граница диапазона значений, которому будет присвоено новое выходное значение. (тип данных: double)
  • endValue – верхняя граница диапазона значений, которому будет присвоено новое выходное значение. (тип данных: double)
  • newValue – новое значение, которое будет присвоено диапазону входных значений, определенному по начальному и конечному значениям. (тип данных: integer)

List

Свойства

СвойствоОбъяснениеТип данных
remapTable
(чтение и запись)

Таблица перекодировки, используемая для перекодировки исходных значений в новые значения.

List

Пример кода

RemapRange пример 1 (окно Python)

Демонстрирует создание класса RemapRange и его использование с инструментом Переклассифицировать в окне Python.

import arcpy
from arcpy import env
from arcpy.sa import *
env.workspace = "C:/sapyexamples/data"
myRemapRange = RemapRange([[-3, 0, 0], [0, 1.75, 25], [1.75, 3.5, 50],
                            [3.5, 5.25, 75], [5.25, 7, 100]])
outReclassRR = Reclassify("inreclass", "VALUE", myRemapRange)
outReclassRR.save("C:/sapyexamples/output/rclassremran")
RemapRange пример 2 (автономный скрипт)

Выполняет переклассификацию с использованием класса RemapRange.

# Name: RemapRange_Ex_02.py
# Description: Uses the RemapRange object to execute Reclassify tool.
# 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
inRaster = "inreclass"

# Define the RemapValue Object 
myRemapRange = RemapRange([[-3, -1.75, 1], [-1.75, -0.5, 2], [-0.5, 0.75, 3],
                            [0.75, 2, 4], [2, 3.25, 5], [3.25, 4.5, 6],
                            [4.5, 5.75, 7], [5.75, 7, 8]])

# Check out the ArcGIS Spatial Analyst extension license
arcpy.CheckOutExtension("Spatial")

# Execute Reclassify
outReclassRR = Reclassify(inRaster, "VALUE", myRemapRange)

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

Связанные темы

9/11/2013