Доступно с лицензией Image Analyst.
Сводка
Создает растровый объект путем комбинирования срезов входного многомерного растра на основе интервала измерений и метода агрегации.
Описание
Используйте функцию Aggregate для агрегирования значений переменной многомерного растра по заданной переменной. Например, если у вас есть данные о ежедневных осадках, вы можете определить среднемесячное количество осадков.
Эта функция создает растровый объект, который является агрегацией входного многомерного растра. По умолчанию агрегация вычисляется для всех переменных, связанных с данным измерением. Например, в случае, когда осадки, температура и скорость ветра имеют измерение времени, все три переменные будут агрегированы отдельно, если dimension_name задано как измерение времени. Если вы хотите агрегировать только одну переменную, используйте функцию Subset перед использованием Aggregate.
Указанный набор растровых данных является временным для растрового объекта. Чтобы сделать его постоянным, можно вызвать метод save растрового объекта.
Синтаксис
Aggregate (in_raster, dimension_name, raster_function, {raster_function_arguments}, {aggregation_definition})
Parameter | Объяснение | Тип данных |
in_raster | Входной многомерный растр, который будет агрегирован. | Raster |
dimension_name | Измерение агрегации. Это измерение, по которому переменные будут агрегированы. | String |
raster_function | Имя функции растра в виде строки или путь к пользовательской функции растра (файлу .rft.xml), используемой для вычисления агрегированных значений пикселов. Поддерживаемые функции растра в виде строк включают следующее:
| String |
raster_function_arguments | Параметры и значения, связанные с растровой функцией или цепочкой функций. Если не заданы, будут применены значения по умолчанию. | Dictionary |
aggregation_definition | Интервал измерения, по которому данные будут агрегированы. Пары ключ-значение должны иметь один из следующих форматов:
Если не указано, будут агрегированы все срезы измерения. | Dictionary |
Тип данных | Объяснение |
Raster | Выходной агрегированный многомерный растр. |
Пример кода
Агрегируйте данные об осадках, вычисляя общее среднее, среднемесячное, минимальное значение за 10 дней и максимум за 2 диапазона.
import arcpy
from arcpy.ia import *
arcpy.CheckOutExtension("ImageAnalyst")
in_raster = Raster('ClimateData_Daily.nc', True)
# Choose the precipitation variable
prcp_raster = Subset(in_raster, variables = 'prcp')
# Calculate the average precipitation across the whole time period
avg_prcp = Aggregate(prcp_raster, 'StdTime', 'Mean')
# Calculate the monthly mean precipitation
monthly_avg_prcp = Aggregate(prcp_raster, 'StdTime',
'Mean', {'interval': 'monthly'})
# Calculate the minimum precipitation every 10 days
min_precip_10day = Aggregate(prcp_raster, 'StdTime', 'Min',
{'interval_value' : 10, 'interval_unit': 'day'})
# Calculate the maximum precipitation in two separate time ranges
max_prcp_range = Aggregate(prcp_raster, 'StdTime', 'Max',
{'interval_ranges': [('2001-01-01T00:00:00', '2001-02-01T00:00:00'),
('2001-12-01T00:00:00', '2001-12-24T00:00:00')]})