< (Relational Less Than) operator

Доступно с лицензией Spatial Analyst.

Доступно с лицензией Image Analyst.

Краткая информация

Возвращает значение 1 для ячеек, в которых значение в первом растре меньше, чем значение во втором растре и 0 если это не так.

Иллюстрация

Иллюстрация оператора Меньше (отношение)
OutRas = Raster("InRas1") < 2

Обсуждение

Относительный оператор Меньше оценивает первое входное значение относительно второго в каждой ячейке в окне анализа. При относительной оценке, если условие выполняется (первое значение меньше второго), возвращается 1, если нет – 0.

    Input1 < Input2, Output = 1
    Input1 = Input2, Output = 0
    Input1 > Input2, Output = 0

Если одно или оба входных значения NoData, выходным значением также будет NoData.

При использовании оператора со входным растром на выходе также будет растр. Если же все входные данные являются числами, на выходе также будет число.

Если в выражении используется несколько операторов, их необязательно выполнять слева направо. Оператор с наивысшим значением приоритета будет выполнен первым. Более подробно см. таблицу приоритета операторов в разделе Работа с операторами в Алгебре карт. Порядок выполнения операторов можно изменить с помощью скобок.

У булевых операторов (~, &, ^ и |) уровень приоритет более высокий, чем у операторов сравнения (<, <=, >, >=, == и !=). Поэтому если булевы операторы используются в выражении вместе с операторами сравнения, логические операторы будут выполняться первыми. Для изменения порядка выполнения операторов нужно использовать скобки.

Если в выражении последовательно используется несколько операторов сравнения и/или булевых операторов, в некоторых случаях оно может не выполниться. Чтобы избежать подобной проблемы, используйте в выражении соответствующие круглые скобки, чтобы явно задать порядок выполнения операторов. Более подробно изучите правила сложных выражений в разделе Построение сложных выражений.

Для выполнения операции необходимо наличие двух входных файлов.

Для этого оператора важен порядок растров во входном списке.

Выходные значения всегда целочисленные.

Если оба входных растра являются одноканальными или на входе имеется константа, на выходе получится одноканальный растр.

Если оба входных растра являются многоканальными, оператор будет выполнен для каждого канала, а выходной растр будет многоканальным. Число каналов всех многоканальных растров должно быть одинаковым.

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

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

Если у обоих входных данных одна переменная, но разные имена, установите False для среды геообработки matchMultidimensionalVariable, чтобы выполнить операцию.

Если одними из входных данных является многомерный растр, а другие - константой, оператор будет выполнен для всех срезов для всех переменных с постоянным значением, и на выходе будет получен многомерный растр.

Параметры

ОперандОписаниеТип данных
in_raster_or_constant1

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

Если один из наборов входных данных – растр, а другой – скаляр, то создается выходной растр, для получения которого для каждой ячейки входного растра выполняется вычисление.

Raster Layer | Constant
in_raster_or_constant2

Второй входной растр, с которым сравнивается первый растр, для определения, какие значения ячеек первого растра меньше, чем второго.

Если один из наборов входных данных – растр, а другой – скаляр, то создается выходной растр, для получения которого для каждой ячейки входного растра выполняется вычисление.

Raster Layer | Constant

Пример кода

< (Меньше) пример 1 (окно Python)

В этом примере над двумя растрами выполняется операция Меньше.

import arcpy
from arcpy import env
from arcpy.sa import *
env.workspace = "C:/sapyexamples/data"
outLessThan = Raster("degs") < Raster("negs")
outLessThan.save("C:/sapyexamples/output/outlt.tif")
< (Меньше), пример 2 (автономный скрипт)

В этом примере над двумя растрами выполняется операция Меньше.

# Name: Op_LessThan_Ex_02.py
# Description: Performs a relational less-than operation on two inputs
#              on a cell-by-cell basis within the Analysis window
# 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
inRaster1 = Raster("degs")
inRaster2 = Raster("negs")

# Execute LessThan
outLessThan = inRaster1 < inRaster2

# Save the output 
outLessThan.save("C:/sapyexamples/output/outlt")

Связанные разделы