Поделиться через


series_periods_validate()

Область применения: ✅Microsoft Fabric✅Azure Data ExplorerAzure MonitorMicrosoft Sentinel

Проверяет, содержит ли временной ряд периодические шаблоны заданной длины.

Часто метрика, измеряющая трафик приложения, характеризуется еженедельным или ежедневным периодом. Этот период можно подтвердить, выполнив series_periods_validate() проверку на еженедельный и ежедневный период.

Синтаксис

series_periods_validate(период, 1 [ , период 2 , . . . ] )

Дополнительные сведения о соглашениях синтаксиса.

Параметры

Имя (название) Type Обязательно Описание
серия dynamic ✔️ Массив числовых значений, как правило, результирующий результат операторов make-series или make_list .
период1, период2 и т. д. real ✔️ Периоды для проверки в единицах размера ячейки. Например, если серия находится в 1h ячейках, еженедельный период составляет 168 ячеек. Требуется по крайней мере один период.

Внимание

  • Минимальное значение для каждого параметра периода равно 4 , а максимальное значение составляет половину длины входного ряда. Для аргумента периода за пределами этих границ оценка выходных данных будет 0.
  • Входные временные ряды должны быть регулярными, т. е. агрегированными в константных ячейках и всегда являются случаем, если он был создан с помощью make-series. В противном случае выходные данные не имеют смысла.
  • Функция принимает до 16 периодов для проверки.

Возвраты

Функция выводит таблицу с двумя столбцами:

  • периоды: динамический массив, содержащий периоды, которые необходимо проверить, как указано в входных данных.
  • оценки: динамический массив, содержащий оценку от 0 до 1. Оценка показывает значение периода в соответствующей позиции в массиве периодов .

Пример

Следующий запрос внедряет моментальный снимок месяца трафика приложения, агрегированный дважды в день (размер ячейки составляет 12 часов).

print y=dynamic([80, 139, 87, 110, 68, 54, 50, 51, 53, 133, 86, 141, 97, 156, 94, 149, 95, 140, 77, 61, 50, 54, 47, 133, 72, 152, 94, 148, 105, 162, 101, 160, 87, 63, 53, 55, 54, 151, 103, 189, 108, 183, 113, 175, 113, 178, 90, 71, 62, 62, 65, 165, 109, 181, 115, 182, 121, 178, 114, 170])
| project x=range(1, array_length(y), 1), y  
| render linechart

Периоды рядов.

Если вы работаете series_periods_validate() на этой серии, чтобы проверить еженедельный период (14 очков длинный) он приводит к высокой оценке, и с 0 оценкой при проверке пятидневного периода (10 очков длинный).

print y=dynamic([80, 139, 87, 110, 68, 54, 50, 51, 53, 133, 86, 141, 97, 156, 94, 149, 95, 140, 77, 61, 50, 54, 47, 133, 72, 152, 94, 148, 105, 162, 101, 160, 87, 63, 53, 55, 54, 151, 103, 189, 108, 183, 113, 175, 113, 178, 90, 71, 62, 62, 65, 165, 109, 181, 115, 182, 121, 178, 114, 170])
| project x=range(1, array_length(y), 1), y  
| project series_periods_validate(y, 14.0, 10.0)

Выходные данные

series_periods_validate_y_periods series_periods_validate_y_scores
[14.0, 10.0] [0.84, 0.0]