Подпись | Описание | Тип данных |
Входные растровые или векторные данные зон | Набор данных, определяющий зоны. Зоны могут быть определены слоем целочисленного растра или векторным слоем. | Raster Layer; Feature Layer |
Поле зоны | Поле, которое содержит значения, определяющие каждую зону. Это может быть целочисленное или строковое поле набора данных зоны. | Field |
Входной растр значений | Растр, содержащий значения, на основании которых будет вычислена статистика. | Raster Layer |
Выходная таблица | Выходная таблица, которая содержит итоговую информацию по значениям в каждой зоне. Формат таблицы определяется выходным местоположением и путем к ней. По умолчанию выходными данными будет таблица базы геоданных в рабочей области базы геоданных, и таблица dBASE, если рабочая область представляет собой папку с файлами. | Table |
Игнорировать значение NoData при вычислениях (Дополнительный) | Определяет, будут ли значения NoData входного набора данных значений влиять на результаты зоны, в которую они попадают.
| Boolean |
Тип статистики (Дополнительный) | Указывает тип вычисляемой статистики.
| String |
Обработать как многомерный (Дополнительный) | Определяет, как будут вычисляться входные растры, если они являются многомерными.
| Boolean |
Значения процентиля (Дополнительный) | Вычисляемый процентиль. Значение по умолчанию – 90, для 90-го процентиля. Значения могут варьироваться от 0 до 100. 0-й процентиль по существу эквивалентен Минимума в статистике, а 100-й процентиль эквивалентен Максимуму. Значение 50 даст по существу тот же результат, что и Медиана в статистике. Этот параметр доступен, только если для параметра Тип статистики задано значение Процентиль или Все. | Double |
Тип интерполяции Процентиль (Дополнительный) | Определяет метод интерполяции, который будет использоваться, когда значение процентиля находится между двумя значениями ячеек из растра входных значений.
| String |
Вычислить круговую статистику (Дополнительный) | Задает способ обработки круговых данных входного растра.
| Boolean |
Значение охвата окружности (Дополнительный) | Значение, которое будет использоваться для округления линейного значения до диапазона заданной круговой статистики. Это значение должно быть положительное целочисленное значение или значение с плавающей запятой. Значением по умолчанию является 360 градусов. Этот параметр поддерживается только в том случае, если отмечен параметр Вычислить круговую статистику. | Double |
Доступно с лицензией Spatial Analyst.
Доступно с лицензией Image Analyst.
Краткая информация
Суммирует значения растра в пределах зон другого набора данных и записывает результаты в таблицу.
Иллюстрация
Использование
Зона определяется как все области входных данных, имеющие одно значение. Области не обязательно должны быть непрерывными. И растры, и векторные объекты могут использоваться для входных данных зон.
Если значения Входных растровых или векторных данных зон (in_zone_data в Python) являются растром, это должен быть целочисленный растр.
Если Входные растровые или векторные данные зон являются векторными объектами, они будут конвертированы в растр при использовании размера ячейки и выравнивания ячеек из параметра Входной растр значений (in_value_raster в Python).
Если Размер ячейки Входных растровых или векторных данных зон и Входного растра значений различается, то размер выходной ячейки будет Максимальный из входных, а Входной растр значений будет использоваться как Растр привязки при внутренней конвертации. Если размер ячейки совпадает, но ячейки не выровнены, то Входной растр значений будет использоваться как растр замыкания для внутренних целей. В любом из этих случаев перед выполнением зональной операции будет инициирован внутренний пересчет.
Если входные данные зон и значений являются растрами с одинаковым размером ячеек, и с корректным выравниванием, они будут использоваться непосредственно в инструменте и не будут пересчитаны во время обработки инструмента.
Если Входные растровые или векторные данные зон представлены объектами, для любых зональных объектов, которые не пересекаются с любыми центрами ячеек растра значений, эти зоны не будут конвертироваться во внутренний растр зон. В результате, эти зоны не будут представлены в выходных данных. Вы можете управлять этим поведением, задав соответствующее значение для параметра среды Размер ячеек, что позволит сохранить желательный уровень детализации объектов зон, и задать его в параметрах среды анализа.
Если значение Входные растровые или векторные данные зон представлено точечными объектами, возможно, что в каждую конкретную ячейку входного растра значений попадет больше одной точки. Для таких ячеек значение зоны определяется точкой с наименьшим значением ObjectID (в частности, OID или FID).
Если Входные растровые или векторные данные зон содержат перекрывающиеся объекты, зональный анализ будет выполняться для каждого отдельного объекта.
При указании значения Входных растровых или векторных данных зон полем зоны по умолчанию будет первое доступное целочисленное или текстовое поле. Если других допустимых полей нет, по умолчанию используется поле ObjectID (например, OID или FID).
Поддерживаемый тип статистики зависит от типа данных значения Входного растра значений и типа вычисления статистики, заданного параметром Вычислить круговую статистику.
Если тип данных - целочисленный, вычисление арифметической статистики поддерживает следующие опции: Среднее, Большинство, Максимум, Медиана, Минимум, Меньшинство, Процентиль, Диапазон, Среднеквадратическое отклонение, Сумма и Разнообразие; вычисление круговой статистики поддерживает следующие опции: Среднее, Большинство, Меньшинство, Среднеквадратическое отклонение и Разнообразие.
Если тип данных - с плавающей точкой, вычисление арифметической статистики поддерживает следующие опции: Среднее, Максимум, Медиана, Минимум, Процентиль, Диапазон, Среднеквадратическое отклонение и Сумма; вычисление круговой статистики поддерживает опции Среднее и Среднеквадратическое отклонение.
Для вычислений Большинства и Меньшинства, если есть привязка, выходные данные определяются наименьшем из значений привязки.
Чтобы вычислить круговую статистику, отметьте параметр Вычислить круговую статистику (circular_calculation = "CIRCULAR" в Python) и укажите значение для Значение обхвата окружности (circular_wrap_value в Python).
Поддерживаемые типы наборов данных многомерных растров включают многомерный растровый слой, мозаику, сервисы изображений и Esri CRF.
В выходной таблице будет создано поле или ряд полей, в зависимости от параметра Тип статистики (statisticType в Python).
Имя поля такое же, как и в Типе статистики для арифметических вычислений. Это значение по умолчанию
Тем не менее для циклической статистики, для имени поля предусмотрен префикс C_, за которым следует указанная статистика. Например, имя поля будет Median для арифметической медианы и C_Median для циклической медианы.
Тип данных для каждого значения в полях выходной таблицы зависит от выполняемых зональных вычислений. См. Как работают инструменты Зональной статистики, чтобы узнать больше.
Число строк в выходной таблице равно числу зон.
По умолчанию, этот инструмент использует преимущества многоядерных процессоров. Максимальное число ядер, которое может быть использовано,– четыре.
Чтобы инструмент использовал меньшее число ядер, измените параметр среды Коэффициент параллельной обработки.
См. раздел Среда анализа и Spatial Analyst для получения дополнительной информации о среде геообработки данного инструмента.
Параметры
ZonalStatisticsAsTable(in_zone_data, zone_field, in_value_raster, out_table, {ignore_nodata}, {statistics_type}, {process_as_multidimensional}, {percentile_values}, {percentile_interpolation_type}, {circular_calculation}, {circular_wrap_value})
Имя | Описание | Тип данных |
in_zone_data | Набор данных, определяющий зоны. Зоны могут быть определены слоем целочисленного растра или векторным слоем. | Raster Layer; Feature Layer |
zone_field | Поле, которое содержит значения, определяющие каждую зону. Это может быть целочисленное или строковое поле набора данных зоны. | Field |
in_value_raster | Растр, содержащий значения, на основании которых будет вычислена статистика. | Raster Layer |
out_table | Выходная таблица, которая содержит итоговую информацию по значениям в каждой зоне. Формат таблицы определяется выходным местоположением и путем к ней. По умолчанию выходными данными будет таблица базы геоданных в рабочей области базы геоданных, и таблица dBASE, если рабочая область представляет собой папку с файлами. | Table |
ignore_nodata (Дополнительный) | Определяет, будут ли значения NoData входного набора данных значений влиять на результаты зоны, в которую они попадают.
| Boolean |
statistics_type (Дополнительный) | Указывает тип вычисляемой статистики.
| String |
process_as_multidimensional (Дополнительный) | Определяет, как будут вычисляться входные растры, если они являются многомерными.
| 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 |
Пример кода
В этом примере суммируются значения растра в зонах, определенных шейп-файлом полигона, и результаты записываются в таблицу.
import arcpy
from arcpy import env
from arcpy.sa import *
env.workspace = "C:/sapyexamples/data"
outZSaT = ZonalStatisticsAsTable("zones.shp", "Classes", "valueforzone",
"zonalstattblout", "NODATA", "SUM")
В этом примере суммируются значения растра в зонах, определенных шейп-файлом полигона, и результаты записываются в таблицу.
# Name: ZonalStatisticsAsTable_Ex_02.py
# Description: Summarizes values of a raster within the zones of
# another dataset and reports the results to a table.
# 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
inZoneData = "zones.shp"
zoneField = "Classes"
inValueRaster = "valueforzone"
outTable = "zonalstattblout02.dbf"
# Execute ZonalStatisticsAsTable
outZSaT = ZonalStatisticsAsTable(inZoneData, zoneField, inValueRaster,
outTable, "NODATA", "MEAN")