Skip to main content

Anomaly

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

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

Обсуждение

Воспользуйтесь функцией Anomaly для вычисления аномальных значений пикселов для временных переменных многомерного растрового объекта. Например, если у вас есть ежедневные данные об объеме выпавших осадков, вы сможете найти пикселы, значения которых сильно отличаются от значений среднемесячного объема выпавших осадков по всему вашему набору данных.

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

  • Отличие от среднего = x - µ

    • x = значение пиксела в срезе

    • µ = среднее значение этого пиксела за заданный временной интервал

  • Процентное отличие от среднего = |x - µ| /[(x + µ)/2]

    • x = значение пиксела в срезе

    • µ = среднее значение этого пиксела за заданный временной интервал

    • |x - µ| = абсолютное значение разницы между значением и средним значением

  • Процент от усредненного = x / µ

    • x = значение пиксела в срезе

    • µ = среднее значение этого пиксела за заданный временной интервал

Указанный набор растровых данных является временным для растрового объекта. Чтобы сделать его постоянным, можно вызвать метод save растровго объекта.

Синтаксис

Anomaly(in_raster, {dimension_name}, {anomaly_type}, {temporal_interval}, {ignore_nodata})

Параметр Объяснение Тип данных

in_raster

Входной многомерный набор растровых данных.

Raster

dimension_name

Имя измерения, вдоль которого будет выполняться поиск аномалии.

(Значение по умолчанию — StdTime)

String

anomaly_type

Определяет метод, используемый для расчета аномалий.

  • DIFFERENCE_FROM_MEAN—Вычисляет разницу между значением пиксела и средним значением этого пиксела, вычисленного для всех срезов в соответствии с интервалом. Используется по умолчанию.

  • PERCENT_DIFFERENCE_FROM_MEAN—Вычисляет разницу в процентах между значением пиксела и средним значением этого пиксела, вычисленного для всех срезов в соответствии с интервалом.

  • PERCENT_OF_MEAN—Вычисляет процент от среднего.

(Значение по умолчанию — DIFFERENCE_FROM_MEAN)

String

temporal_interval

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

  • None—Вычисляет среднее значение пиксела по всем срезам. Используется по умолчанию.

  • HOURLY—Вычисляет среднечасовое значение для каждого пиксела.

  • DAILY—Вычисляет среднесуточное значение для каждого пиксела.

  • WEEKLY—Вычисляет среднее за неделю значение для каждого пиксела.

  • MONTHLY—Вычисляет среднемесячное значение для каждого пиксела.

  • YEARLY—Вычисляет среднегодовое значение для каждого пиксела.

(Значение по умолчанию — None)

String

ignore_nodata

Определяет, будут ли игнорироваться значения NoData в анализе.

  • True ­ анализ будет включать все действительные пикселы вдоль данного измерения и игнорировать любые пикселы NoData. Используется по умолчанию.

  • False ­ результатом анализа будет значение NoData, если для этого пиксела по данному измерению есть хотя бы одно значение NoData.

(Значение по умолчанию — True)

Boolean

Возвращаемое значение

Тип данных Объяснение

Raster

Выходной многомерный растр аномалий.

Пример кода

Пример Аномалии

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

import arcpy
from arcpy.ia import *

in_raster = Raster('ClimateData_Daily.nc', True)

# Choose the precipitation variable
prcp_raster = Subset(in_raster, variables = 'prcp')

# Calculate percent of mean anomalies,
# where the mean_value is the mean of all slices
prcp_anomaly = Anomaly(prcp_raster, anomaly_type = 'PERCENT_OF_MEAN')

# Calculate the difference from mean,
# where the mean_value is the mean of each year
prcp_monthly_anomaly = Anomaly(
    prcp_raster, temporal_interval = 'YEARLY')