Подпись | Описание | Тип данных |
Входные растровые или векторные зоны | Набор данных, который определяет зоны. Зоны могут быть определены слоем целочисленного растра или векторным слоем. | Raster Layer; Feature Layer |
Входные растры значений | Коллекция растров, значения каждого из которых будут суммированы с помощью статистики. Этот параметр обладает следующими свойствами.
Будет вычислена статистика для всех ячеек в каждом входном растре значений, которые принадлежат той же зоне, что и выходная ячейка. Доступны следующие типы статистики:
Имена полей в выходной таблице статистики по умолчанию будут производными от имени растра значений и типа статистики. | Value Table |
Выходная таблица статистики | Выходная таблица, которая содержит итоговую информацию значений в каждой зоне для всех растров значений. Формат таблицы определяется выходным местоположением и путем к ней. По умолчанию на выходе будет таблица базы геоданных, если она находится в рабочей области базы геоданных, и таблица dBASE, если она находится в файловой рабочей области. | Table |
Выходной класс объектов статистики (Дополнительный) | Выходной класс объектов, который будет создан путем объединения выходной таблицы с данными входной зоны. | Feature Class |
Поле зоны (Дополнительный) | Поле, которое содержит значения, определяющие каждую зону. Это может быть целочисленное или строковое поле набора данных зоны. | Field |
Игнорировать значение NoData при вычислениях (Дополнительный) | Определяет, будут ли значения NoData во входном значении игнорироваться в результатах для зоны, в которую они попадают.
| Boolean |
Значения процентиля (Дополнительный) | Процентиль, который будет вычислен. Значение по умолчанию – 90, определяющее 90-й процентиль. Значения могут варьироваться от 0 до 100. 0-й процентиль по существу эквивалентен минимуму в статистике, а 100-й - максимуму. Значение 50 даст, по существу, тот же результат, что и медиана в статистике. Эта опция доступна, только если для параметра Тип статистики задано Процентиль или Все. | Double |
Тип интерполяции Процентиль (Дополнительный) | Определяет метод интерполяции, который будет использоваться, когда значение процентиля находится между двумя значениями ячеек из растра входных значений.
| String |
Вычислить круговую статистику (Дополнительный) | Задает, как входной растр будет обрабатываться для круговых данных.
| Boolean |
Значение обхвата окружности (Дополнительный) | Значение, которое будет использоваться для округления линейного значения до диапазона данной круговой статистики. Значение должно быть положительным целочисленным или с плавающей точкой. Значение по умолчанию 360 градусов. Этот параметр поддерживается, только если выбран параметр Вычислить круговую статистику. | Double |
Обработать как многомерный (Дополнительный) | Определяет, как будут вычисляться входные растры, если они являются многомерными.
| Boolean |
Присоединить Атрибуты зон к выходным объектам (Дополнительный) | Указывает, будут ли какие-либо дополнительные атрибуты зон из входных зон добавлены к выходному классу объектов.
| Boolean |
Краткая информация
Суммирует значения нескольких растров в пределах зон другого набора данных и записывает результаты в таблицу.
Использование
Ниже примеры использования инструмента:
- Рассчитайте среднее количество осадков, максимальную температуру и общую численность населения в различных экосистемных зонах, чтобы оценить устойчивые методы ведения сельского хозяйства.
- Оцените среднюю высоту, средний уклон и сумму значений NDVI для каждого участка, чтобы определить участки, подходящие для посадки тенистых деревьев.
Зона определяется как все области входных данных, имеющие одно значение. Области не обязательно должны быть непрерывными. Для входных данных зон могут использоваться и растры и объекты.
Если значение параметра Входные растровые или векторные зоны (in_zone_raster_or_features в Python) является растром, это должен быть целочисленный растр.
Если значение параметра Входные растровые или векторные зоны является объектом, он будет конвертирован в растр с использованием размера ячейки, выравнивания ячейки и пространственной привязки из значения параметра Входные растры значений (in_value_rasters_statistics в Python) с наименьшим размером ячейки, если в среде анализа не указано иное. Это запускает внутреннюю операцию пересчета, перед выполнением зональных операций.
Если значение параметра Входные растровые или векторные зоны являются объектом, то для любых зональных объектов, которые не пересекаются с любыми центрами ячеек растра значений, эти зоны не будут конвертироваться во внутренний растр зон. В результате, эти зоны не будут представлены в выходных данных. Вы можете управлять этим поведением, задав соответствующее значение для параметра среды Размер ячеек, что позволит сохранить желательный уровень детализации объектов зон, и задать его в параметрах среды анализа.
Если значение Входные растровые или векторные зоны является точечным объектом, возможно, что в каждую конкретную ячейку входного растра значений попадет больше одной точки. Для таких ячеек значение зоны определяется точкой с наименьшим значением поля ObjectID (например, OID или FID).
Если значение Входные растровые или векторные зоны содержат перекрывающиеся объекты, зональный анализ будет выполняться для каждого отдельного объекта.
Если размер ячейки Входные растровые или векторные зоны и значения параметра Входные растры значений отличаются, будут использоваться размер ячейки, выравнивание ячейки и пространственная привязка из значения параметра Входные растры значений с наименьшим размером ячейки, если в среде анализа не указано иное. Это запускает внутреннюю операцию пересчета, перед выполнением зональных операций.
Если входные данные зон и значений являются растрами с одинаковым размером ячеек, и с корректным выравниванием, они будут использоваться непосредственно в инструменте и не будут пересчитаны во время обработки инструментом.
При указании значения Входные растровые или векторные зоны значение параметра Поле зоны (zone_field в Python)по умолчанию будет первое доступное целочисленное поле (например, OID или FID) для объектов и поле VALUE для растра. Поле зоны может быть целочисленным или строковым типом поля.
Поддерживаемый тип статистики зависит от типа данных значения параметра Входные растры значений и типа вычисления статистики, заданного значением параметра Вычислить круговую статистику.
Если тип данных относится к целочисленным, то для вычисления арифметической статистики поддерживаются следующие варианты: Среднее, Большинство, Число большинства, Процент большинства, Максимум, Медиана, Минимум, Меньшинство, Число меньшинства, Процент меньшинства, Процентиль, Диапазон, Среднеквадратическое отклонение, Сумма и Разнообразие. Для вычисления круговой статистики поддерживаются такие варианты, как Среднее, Большинство, Меньшинство, Среднеквадратическое отклонение и Разнообразие.
Если данные с плавающей точкой, вычисление арифметической статистики поддерживает следующие варианты: Среднее, Максимум, Медиана, Минимум, Процентиль, Диапазон, Среднеквадратическое отклонение и Сумма. Вычисление круговой статистики поддерживает опции Среднее и Среднеквадратическое отклонение.
Для вычислений Большинства и Меньшинства, если есть привязка, выходные данные определяются наименьшем из значений привязки.
Чтобы рассчитать более одного типа статистики для каждого растра значений, один и тот же растр значений необходимо указать несколько раз. Если одна и та же комбинация растра значений и типа статистики будет дублирована, инструмент выдаст ошибку.
Для вычисления круговой статистики отметьте параметр Вычислить круговую статистику (circular_calculation = "CIRCULAR" в Python) и укажите для параметра Значение обхвата окружности (circular_wrap_value в Python).
Если отмечен параметр Вычислить круговую статистику, то круговая статистика будет вычисляться для всех растров значений с примененным заданным значением обхвата окружности.
Поддерживаемые типы наборов данных многомерных растров включают многомерный растровый слой, мозаику, сервисы изображений и Esri CRF.
При обработке всех срезов многомерных растров значения параметров Выходная таблица статистики и Выходной класс объектов статистики будут содержать только информацию о дате и не будут содержать информацию о времени, если они представлены в форматах DBF и SHP. В формате FGDB выходная таблица и класс пространственных объектов будут содержать информацию о времени вместе с датой в поле Standard Time.
Значение параметра Выходная таблица статистики (out_statistics_table в Python) будет иметь следующие характеристики:
- Количество строк в выходной таблице - это количество зон в пределах экстента анализа.
- В выходной таблице будет создан ряд полей для представления зон, со значениями количества и статистики для каждого значения параметров Входные растры значений и Тип статистики.
- Имена полей по умолчанию будут производными от имени растра значений и типа статистики, если иное не указано в параметре Имя поля. Для круговой статистики имя поля будет включать C_ перед указанной статистикой. Например, имя поля будет ValueRasterName_MEAN для арифметической средней статистики и ValueRasterName_C_MEAN для круговой средней статистики.
- Максимальная длина имен полей в выходной таблице будет зависеть от рабочей области.
- Тип данных для каждого значения элементов в выходной таблице будет зависеть от выполняемых зональных вычислений. См. раздел Как работает инструмент Зональная статистика для информации о конкретном поведении статистики.
Для значения параметра Выходной класс объектов статистики (out_statistics_features в Python), если входными данными зоны является растр, выходной класс пространственных объектов будет преобразован в объекты без генерализации и с учетом параметров среды анализа.
Если входная зона представляет собой растр, содержащий несмежные зоны, инструмент создаст отдельные полигоны в выходном классе объектов статистики. Выходной класс пространственных объектов статистики будет содержать ту же статистику, которая была рассчитана в выходной таблице статистики, приложенной к каждому отдельному полигону в соответствующей зоне.
Этот инструмент будет использовать следующие параметры среды:
- Растр значений с наименьшим размером ячейки будет использоваться в качестве размера ячейки анализа, выходной системы координат и растра привязки по умолчанию.
- Экстентом по умолчанию будет являться пересечение зоны с объединением всех растров значений.
По умолчанию этот инструмент будет использовать многоядерные процессоры, если они доступны. Максимальное число ядер, которое может быть использовано,– четыре.
Чтобы инструмент использовал меньшее число ядер, измените параметр среды Коэффициент параллельной обработки.
См. раздел Среда анализа и Spatial Analyst для получения дополнительной информации о среде геообработки данного инструмента.
Параметры
ZonalCharacterization(in_zone_raster_or_features, in_value_rasters_statistics, out_statistics_table, {out_statistics_features}, {zone_field}, {ignore_nodata}, {percentile_values}, {percentile_interpolation_type}, {circular_calculation}, {circular_wrap_value}, {process_as_multidimensional}, {add_zone_attributes})
Имя | Описание | Тип данных |
in_zone_raster_or_features | Набор данных, который определяет зоны. Зоны могут быть определены слоем целочисленного растра или векторным слоем. | Raster Layer; Feature Layer |
in_value_rasters_statistics [in_value_rasters_statistics,...] | Коллекция растров, значения каждого из которых будут суммированы с помощью статистики. Этот параметр обладает следующими свойствами.
Будет вычислена статистика для всех ячеек в каждом входном растре значений, которые принадлежат той же зоне, что и выходная ячейка. Доступны следующие типы статистики:
Имена полей в выходной таблице статистики по умолчанию будут производными от имени растра значений и типа статистики. | Value Table |
out_statistics_table | Выходная таблица, которая содержит итоговую информацию значений в каждой зоне для всех растров значений. Формат таблицы определяется выходным местоположением и путем к ней. По умолчанию на выходе будет таблица базы геоданных, если она находится в рабочей области базы геоданных, и таблица dBASE, если она находится в файловой рабочей области. | Table |
out_statistics_features (Дополнительный) | Выходной класс объектов, который будет создан путем объединения выходной таблицы с данными входной зоны. | Feature Class |
zone_field (Дополнительный) | Поле, которое содержит значения, определяющие каждую зону. Это может быть целочисленное или строковое поле набора данных зоны. | Field |
ignore_nodata (Дополнительный) | Определяет, будут ли значения NoData во входном значении игнорироваться в результатах для зоны, в которую они попадают.
| Boolean |
percentile_values [percentile_values,...] (Дополнительный) | Процентиль, который будет вычислен. Значение по умолчанию – 90, определяющее 90-й процентиль. Значения могут варьироваться от 0 до 100. 0-й процентиль по существу эквивалентен минимуму в статистике, а 100-й - максимуму. Значение 50 даст, по существу, тот же результат, что и медиана в статистике. Этот параметр поддерживается только в том случае, если для параметра statistics_type задано PERCENTILE или ALL. | Double |
percentile_interpolation_type (Дополнительный) | Определяет метод интерполяции, который будет использоваться, когда значение процентиля находится между двумя значениями ячеек из растра входных значений.
| String |
circular_calculation (Дополнительный) | Задает, как входной растр будет обрабатываться для круговых данных.
| Boolean |
circular_wrap_value (Дополнительный) | Значение, которое будет использоваться для округления линейного значения до диапазона данной круговой статистики. Значение должно быть положительным целочисленным или с плавающей точкой. Значение по умолчанию 360 градусов. Этот параметр поддерживается только в том случае, если для параметра circular_calculation задано CIRCULAR. | Double |
process_as_multidimensional (Дополнительный) | Определяет, как будут вычисляться входные растры, если они являются многомерными.
| Boolean |
add_zone_attributes (Дополнительный) | Указывает, будут ли какие-либо дополнительные атрибуты зон из входных зон добавлены к выходному классу объектов.
| Boolean |
Пример кода
В этом примере суммируются значения нескольких растров в зонах, определенных шейп-файлом полигона, и результаты записываются в таблицу и в класс объектов.
import arcpy
from arcpy import env
from arcpy.sa import *
env.workspace = "C:/sapyexamples/data"
outTable = ZonalCharacterization("zones.shp",
"ValueRas1.tif MEAN ValueRas1_MEAN;ValueRas2.tif MAXIMUM ValueRas2_MAX;ValueRas3.tif STD ValueRas3_STD",
"zonalcharacterout.dbf","featurestatout.shp","Id","DATA","",
"AUTO_DETECT","ARITHMETIC","","CURRENT_SLICE","ZONE_FIELD_ONLY")
В этом примере суммируются значения нескольких растров в зонах, определенных растром зон, и результаты записываются в таблицу и в класс объектов.
# Name: ZonalCharacterization_Ex_standalone.py
# Description: Summarizes the values of multiple rasters within the zones
# of another dataset and reports the results as a table.
# Requirements: Spatial Analyst Extension
# Import system modules
import arcpy
from arcpy.sa import *
# Check out the ArcGIS Spatial Analyst extension license
arcpy.CheckOutExtension("Spatial")
# Set the analysis environments
arcpy.env.workspace = "C:/sapyexamples/data"
# Set the local variables
inZoneData = "zones.tif"
zoneField = "Value"
inValueRas1 = "ValueRas1.tif"
inValueRas2 = "ValueRas2.tif"
inValueRas3 = "ValueRas3.tif"
outTable = "zonalcharactereizationout.dbf"
outFeatureClass = "featurestatout.shp"
# Execute ZonalCharacterization
outzonalchar = ZonalCharacterization(inZoneData, [[inValueRas1, "MEAN",
"ValueRas1_MEAN"], [inValueRas2, "STD", "ValueRas2_STD"],
[inValueRas3, "SUM", "ValueRas3_SUM"]], outTable, outFeatureClass,
zoneField, "NODATA", "", "", "ARITHMETIC", "", "CURRENT_SLICE", "ALL")