series_periods_validate()
Se aplica a: ✅Microsoft Fabric✅Azure Data Explorer✅Azure Monitor✅Microsoft Sentinel
Comprueba si una serie temporal contiene patrones periódicos de longitudes concretas.
A menudo, una métrica que mide el tráfico de una aplicación se caracteriza por un período semanal o diario. Este período se puede confirmar ejecutando series_periods_validate()
que comprueba si hay un período semanal y diario.
Sintaxis
series_periods_validate(
series,
period1 [ ,
period2 ,
. . . ] )
Obtenga más información sobre las convenciones de sintaxis.
Parámetros
Nombre | Type | Obligatorio | Descripción |
---|---|---|---|
serie | dynamic |
✔️ | Matriz de valores numéricos, normalmente la salida resultante de los operadores make-series o make_list . |
period1, period2, etc. | real |
✔️ | Períodos que se van a validar en unidades del tamaño de cubo. Por ejemplo, si la serie está en intervalos de 1h, un período semanal es de 168 intervalos. Se requiere al menos un período. |
Importante
- El valor mínimo para cada uno de los parámetros de período es 4 y el máximo es la mitad de la longitud de la serie de entrada. Para un argumento de período fuera de estos límites, la puntuación de salida será 0.
- La serie temporal de entrada debe ser normal, es decir, agregada en intervalos de constantes y siempre es el caso si se ha creado mediante la serie make. En caso contrario, el resultado no tendrá sentido.
- La función acepta hasta 16 períodos para validar.
Devoluciones
La función genera una tabla con dos columnas:
- puntos: matriz dinámica que contiene los períodos que se van a validar como se proporciona en la entrada.
- score: matriz dinámica que contiene una puntuación entre 0 y 1. La puntuación muestra la importancia de un período en su posición respectiva en la matriz de períodos .
Ejemplo
La consulta siguiente inserta una instantánea de un mes del tráfico de una aplicación, agregada dos veces al día (el tamaño de la bandeja es de 12 horas).
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
Si se ejecuta series_periods_validate()
en esta serie para validar un período semanal (14 puntos de largo), da como resultado una puntuación alta y con una puntuación de 0 al validar un período de cinco días (10 puntos de largo).
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)
Salida
series_periods_validate_y_periods | series_periods_validate_y_scores |
---|---|
[14.0, 10.0] | [0.84, 0.0] |