> (Больше (Greater Than)) (arcpy.sa)
Резюме
Возвращает значение 1 для ячеек, в которых значение в первом растра больше, чем значение во втором растра и 0 для ячеек в которых значения первого растра меньше значений второго.
Рисунок
Обсуждение
Относительный оператор Больше оценивает первое входное значение относительно второго по каждой ячейке в окне анализа. При относительной оценке, если условие выполняется (первое значение больше второго), возвращается 1, если нет – 0.
Input1 > Input2, Output = 1 Input1 = Input2, Output = 0 Input1 < Input2, Output = 0
Если одно или оба входных значения NoData, выходным значением также будет NoData.
При использовании оператора с растровым входом результат будет растром. Но если все входные значения — числа, результат будет числом.
Если в выражении используется несколько операторов, они не обязательно выполняются слева направо. Оператор с высшим значением приоритета будет выполнен первым. Более подробно о приоритете операторов см. в таблице приоритета операторов. Порядок выполнения можно изменить с помощью скобок.
Уровень приоритета Булевых операторов (~, &, ^, |) выше, чем у реляционных операторов (<, <=, >, >=, ==, !=). Поэтому, если в одном выражении используются Булевы и реляционные операторы, в первую очередь выполняются булевы операторы. Чтобы изменить порядок выполнения, используйте скобки.
Если Булевы и/или реляционные операторы последовательно используются в одном выражении, в некоторых случаях его выполнение может завершиться неудачей. Во избежание потенциальных проблем, используйте соответствующие скобки в выражении, чтобы четко определить порядок выполнения операторов. Для получения более подробной информации см. Правила комплексного оператора.
Для выполнения оценки необходимо наличие двух входных файлов.
Для этого оператора важен порядок входных данных.
Выходные значения всегда целочисленные.
Синтаксис
Операнд | Объяснение | Тип данных |
in_raster_or_constant1 |
Первый входной растр, который анализируется для определения ячеек, значения которого больше, чем соответствующие значения ячеек второго входного растра. Если одно из входных значений растровое, а другое — скалярное, создается выходной растр с оценкой, выполняемой для каждой ячейки во входном растре. | Raster Layer | Constant |
in_raster_or_constant2 |
Второй входной растр, с которым сравнивается первый растр, для определения, какие значения ячеек первого растра больше, чем второго. Если одно из входных значений растровое, а другое — скалярное, создается выходной растр с оценкой, выполняемой для каждой ячейки во входном растре. | Raster Layer | Constant |
Возвращено значение
Имя | Объяснение | Тип данных |
out_raster |
Объект выходного растра. Если значения ячеек первых входных данных больше, чем значения вторых, значение выходной ячейки будет равно 1. Если значения первых входных данных равны или меньше значений вторых, значение выходной ячейки будет 0. | Raster |
Пример кода
В этом примере над двумя растрами выполняется операция Больше (Greater Than).
import arcpy
from arcpy import env
from arcpy.sa import *
env.workspace = "C:/sapyexamples/data"
outGreaterThan = Raster("degs") > Raster("negs")
outGreaterThan.save("C:/sapyexamples/output/outgt.img")
В этом примере над двумя растрами выполняется операция Больше (Greater Than).
# Name: Op_GreaterThan_Ex_02.py
# Description: Performs a relational greater-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")
# Check out the ArcGIS Spatial Analyst extension license
arcpy.CheckOutExtension("Spatial")
# Execute GreaterThan
outGreaterThan = inRaster1 > inRaster2
# Save the output
outGreaterThan.save("C:/sapyexamples/output/outgt")