Share via


series_seasonal()

Calcula el componente estacional de una serie, según el período estacional detectado o dado.

Syntax

series_seasonal(series [,period ])

Obtenga más información sobre las convenciones de sintaxis.

Parámetros

Nombre Tipo Requerido Descripción
Serie dynamic ✔️ Matriz de valores numéricos.
period int Número de contenedores para cada período estacional. Este valor puede ser cualquier entero positivo. De forma predeterminada, el valor se establece en -1, que detecta automáticamente el período mediante la series_periods_detect() con un umbral de 0,7. Si no se detecta estacionalidad, la función devuelve ceros. Si se establece un valor diferente, omite la estacionalidad y devuelve una serie de ceros.

Devoluciones

Matriz dinámica de la misma longitud que la entrada de la serie que contiene el componente estacional calculado de la serie. El componente estacional se calcula como la mediana de todos los valores que corresponden a la ubicación del contenedor, en los períodos.

Ejemplos

Detección automática del período

En el ejemplo siguiente, el período de la serie se detecta automáticamente. Se detecta que el período de la primera serie es de seis contenedores y el segundo cinco contenedores. El período de la tercera serie es demasiado corto para detectarse y devuelve una serie de ceros. Vea el ejemplo siguiente sobre cómo forzar el período.

print s=dynamic([2, 5, 3, 4, 3, 2, 1, 2, 3, 4, 3, 2, 1, 2, 3, 4, 3, 2, 1, 2, 3, 4, 3, 2, 1])
| union (print s=dynamic([8, 12, 14, 12, 10, 10, 12, 14, 12, 10, 10, 12, 14, 12, 10, 10, 12, 14, 12, 10]))
| union (print s=dynamic([1, 3, 5, 2, 4, 6, 1, 3, 5, 2, 4, 6]))
| extend s_seasonal = series_seasonal(s)

Salida

s s_seasonal
[2,5,3,4,3,2,1,2,3,4,3,2,1,2,3,4,3,2,1,2,3,4,3,2,1] [1.0,2.0,3.0,4.0,3.0,2.0,1.0,2.0,3.0,4.0,3.0,2.0,1.0,2.0,3.0,4.0,3.0,2.0,1.0,2.0,3.0,4.0,3.0,2.0,1.0]
[8,12,14,12,10,10,12,14,12,10,10,12,14,12,10,10,12,14,12,10] [10.0,12.0,14.0,12.0,10.0,10.0,12.0,14.0,12.0,10.0,10.0,12.0,14.0,12.0,10.0,10.0,12.0,14.0,12.0,10.0]
[1,3,5,2,4,6,1,3,5,2,4,6] [0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]

Forzar un período

En este ejemplo, el período de la serie es demasiado corto para ser detectado por series_periods_detect(), por lo que se fuerza explícitamente el período para obtener el patrón estacional.

print s=dynamic([1, 3, 5, 1, 3, 5, 2, 4, 6]) 
| union (print s=dynamic([1, 3, 5, 2, 4, 6, 1, 3, 5, 2, 4, 6]))
| extend s_seasonal = series_seasonal(s, 3)

Salida

s s_seasonal
[1,3,5,1,3,5,2,4,6] [1.0,3.0,5.0,1.0,3.0,5.0,1.0,3.0,5.0]
[1,3,5,2,4,6,1,3,5,2,4,6] [1.5,3.5,5.5,1.5,3.5,5.5,1.5,3.5,5.5,1.5,3.5,5.5]