Инструмент Установить ноль (Set Null) (Spatial Analyst)

Уровень лицензии:BasicStandardAdvanced

Резюме

Инструмент Установить ноль (Set Null) устанавливает идентифицированные ячейки на NoData на основании заданного критерия. Выдает значение NoData, если при выполнении оценки условия получено значение Истина, и выдает значение, определяемое другим растром, если получено значение Ложь.

Более подробно о присвоении ячейкам значений NoData с помощью инструмента Установить ноль (Set Null)

Рисунок

Иллюстрация инструмента «Установить ноль (Set Null)»
OutRas = SetNull(InRas1, InRas2, "Value = 4")

Использование

Синтаксис

SetNull (in_conditional_raster, in_false_raster_or_constant, {where_clause})
ПараметрОбъяснениеТип данных
in_conditional_raster

Входной растр, представляющий истинный или ложный результат заданного условия.

Raster Layer
in_false_raster_or_constant

Входные данные, значения которых будут использоваться в качестве выходных значений ячеек, если условие - Ложь.

Это может быть целочисленный растр или растр с плавающей точкой или константное значение.

Raster Layer | Constant
where_clause
(дополнительно)

Логическое выражение, которое определяет, какие из входных ячеек истинные, а какие ложные.

Выражение следует за главной формой выражения SQL.

Более подробно об основах SQL для выражений запроса, применяемых в ArcGIS и построении запроса в Python см. в документации соответствующих разделов.

SQL Expression

Возвращено значение

ИмяОбъяснениеТип данных
out_raster

Выходной растр.

Если условная оценка - Истина, выдается значение NoData. Если Ложь, выдается значение второго входного растра.

Raster

Пример кода

Установить ноль. Пример 1 (окно Python)

В этом примере любой входной ячейке со значением меньше 0 будет присвоено значение NoData в выходном растре, при этом все остальные ячейки сохранят свое исходное значение.

import arcpy
from arcpy import env
from arcpy.sa import *
env.workspace = "C:/sapyexamples/data"
outSetNull = SetNull("elevation", "elevation", "VALUE < 0")
outSetNull.save("C:/sapyexamples/output/outsetnull.img")
Установить ноль. Пример 2 (автономный скрипт)

В этом примере любой входной ячейке со значением, отличным от 7, будет присвоено значение NoData, а ячейкам со значением 7 будет присвоено значение 1 на выходном растре.

# Name: SetNull_Ex_02.py
# Description: Returns NoData if a conditional evaluation is 
#              true and returns the value specified by another
#              raster if it is false, 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
inRaster = "landclass"
inFalseRaster = 1
whereClause = "VALUE <> 7"

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

# Execute SetNull
outSetNull = SetNull(inRaster, inFalseRaster, whereClause)

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

Параметры среды

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

Информация о лицензировании

ArcGIS for Desktop Basic: Требует Spatial Analyst
ArcGIS for Desktop Standard: Требует Spatial Analyst
ArcGIS for Desktop Advanced: Требует Spatial Analyst
9/11/2013