RemapRange (arcpy.sa)
Резюме
Список с диапазонами входных значений, которые должны быть переклассифицированы в выходной растр.
Рисунок
Обсуждение
Объект 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)
Синтаксис
Параметр | Объяснение | Тип данных |
remapTable [[startValue, endValue, newValue],...] |
Таблица перекодировки, используемая для перекодировки первоначальных значений (указанных в виде интервалов) в новые. Она определяется список с диапазонами входных значений, которые должны быть переклассифицированы в новые. Является списком списков, где внутренние списки состоят из трех компонентов. Составляющие компоненты:
| List |
Свойства
Свойство | Объяснение | Тип данных |
remapTable (чтение и запись) |
Таблица перекодировки, используемая для перекодировки исходных значений в новые значения. | List |
Пример кода
Демонстрирует создание класса 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.
# 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")