Tutorial: Descomposición de series de tiempo en Qlik Sense
Este tutorial demuestra el uso de tres funciones de gráfico para descomponer una serie de tiempo usando el algoritmo STL.
Este tutorial utiliza datos de series temporales para la cantidad de pasajeros que utilizan una aerolínea por mes para demostrar la funcionalidad del algoritmo STL. Las funciones de gráfico STL_Trend, STL_Seasonal y STL_Residual se utilizarán para crear las visualizaciones. Para más información sobre la descomposición de series de tiempo en Qlik Sense, vea Funciones de descomposición de series de tiempo.
Crear una app
Comience creando una nueva app e importando el conjunto de datos.
Descargue este conjunto de datos:
Tutorial: Descomposición de series de tiempo
Este archivo contiene datos sobre el número de pasajeros de una aerolínea al mes.
Haga lo siguiente:
-
Vaya a la página Crear del centro de actividades de Analítica y seleccione Conjunto de datos.
-
Haga clic en Cargar archivo de datos.
-
Agregue el archivo Tutorial - Time series decomposition.csv mediante este diálogo.
-
Seleccione un espacio
-
Haga clic en Cargar y analizar. Esto crea una nueva aplicación con los datos en el espacio seleccionado.
Preparar y cargar los datos
Para que Qlik Sense interprete correctamente el campo YearMonth, es posible que deba usar el Gestor de datos para reconocer el campo como un campo de fecha, no como un campo con valores de cadena de texto. Por lo general, este paso se maneja automáticamente, pero en este caso las fechas se presentan en el formato AAAA-MM, poco común.
-
En el Gestor de datos, seleccione la tabla y haga clic en .
-
Con el campo YearMonth seleccionado, haga clic en y configure el Tipo de campo como Fecha.
-
En Formato de entrada, escriba AAAA-MM.
-
En Mostrar formato, escriba AAAA-MM y haga clic en Aceptar.
El campo ahora debería mostrar el icono de calendario.
-
Haga clic en Cargar datos.
Ahora está listo para comenzar a usar las funciones STL para representar visualmente sus datos.
Crear las visualizaciones
A continuación, crearemos dos gráficos de líneas para demostrar la utilidad de las funciones de gráfico STL_Trend, STL_Seasonal y STL_Residual.
Abra una nueva hoja y asígnele un título. Active las opciones avanzadas.
Agregue dos gráficos de líneas a la hoja. Cambie el tamaño y la posición de los gráficos para que coincidan con la siguiente imagen.
Primer gráfico de líneas: tendencia y componentes estacionales
Haga lo siguiente:
-
Agregue el título Estacional y tendencia al primer gráfico de líneas.
-
Agregue YearMonth como dimensión y denomínela Fecha.
-
Agregue la siguiente medida y denomínela Pasajeros al mes:
=Sum(Pasajeros)
-
En Datos, expanda la medida Pasajeros al mes y haga clic en Añadir línea de tendencia.
-
Establezca el Tipo en Lineal.
Ahora compararemos esta línea de tendencia con la salida suavizada del componente de tendencia.
-
Agregue la siguiente medida para trazar el componente de tendencia y denomínelo Tendencia:
=STL_Trend(SUM(Pasajeros), 12)
-
A continuación, agregue la siguiente medida para trazar el componente estacional y denomínelo Estacional:
=STL_Seasonal(SUM(Pasajeros), 12)
-
En Aspecto > Presentación, configure Barra de desplazamiento en Ninguna.
-
Mantenga los colores predeterminados o cámbielos para que se ajusten a sus preferencias.
Segundo gráfico de líneas: componente residual
A continuación, configure el segundo gráfico de líneas. Esta visualización mostrará el componente residual de la serie temporal.
Haga lo siguiente:
-
Arrastre un gráfico de líneas a la hoja. Agregue el título Residual.
-
Agregue Fecha como dimensión.
-
Agregue la siguiente medida y denomínela Residual:
=STL_Residual(SUM(Pasajeros), 12)
-
En Aspecto > Presentación, configure Barra de desplazamiento en Ninguna.
Su hoja ahora debería verse de la siguiente manera.
Interpretar y explicar los datos
Con las funciones de gráfico STL, podemos obtener una serie de conocimientos de nuestros datos sobre series temporales.
Componente de tendencia
La información estadística en el componente de tendencia está desestacionalizada. Esto hace que sea más fácil ver fluctuaciones generales que no se repiten a lo largo del tiempo. En comparación con la línea de tendencia lineal y recta de Pasajeros al mes, el componente de tendencia STL captura las tendencias cambiantes. Muestra algunas desviaciones claras sin dejar de presentar la información de forma legible. Los comportamientos de suavizado en el algoritmo STL ayudaron a capturar esto.
Las caídas en el número de pasajeros de aerolíneas que son visibles en el gráfico de tendencia STL pueden explicarse como parte del impacto económico de las recesiones que ocurrieron durante la década de 1950.
Componente estacional
El componente estacional sin tendencia aisló las fluctuaciones recurrentes a lo largo de la serie temporal y eliminó la información de tendencia general de esa parte del análisis. Comenzamos con un conjunto de datos que consiste en agregaciones de año y mes. Con estos datos, queda implícito que estamos segmentando los datos en gránulos de un mes. Definiendo un valor de período de 12, configuramos el gráfico para modelar patrones estacionales en el transcurso de ciclos de un año (doce meses).
En los datos, hay un patrón estacional repetido de aumentos repentinos de pasajeros de aerolíneas en los meses de verano, seguidos de descensos en los meses de invierno. Esto va alineado con la idea de que en verano se suelen tomar vacaciones y viajar. También vemos que en el transcurso de la serie temporal, estos ciclos estacionales aumentan drásticamente en amplitud.
Componente residual
El gráfico para el componente residual muestra toda la información que no fue capturada en la descomposición de tendencia y estacional. El componente residual incluye ruido estadístico, pero también puede indicar una configuración incorrecta de la tendencia STL y los argumentos de la función estacional. Generalmente, si hay oscilaciones periódicas en el componente residual de la señal, o la información que se muestra claramente no es aleatoria, suele ser signo de que hay información en la serie temporal que actualmente no está capturada en los componentes estacionales o de tendencia. En ese caso, debe revisar sus definiciones de cada argumento de función y posiblemente cambiar la periodicidad.
Valores más suaves
Dado que no especificamos ningún valor para los suavizadores de tendencia y estacionales, la función utilizará los valores predeterminados para estos parámetros. En Qlik Sense, los valores predeterminados más suaves en el algoritmo STL producen resultados efectivos. Como resultado, en la mayoría de los casos, estos argumentos pueden quedar fuera de las expresiones.
El valor de suavizado de tendencia utiliza la dimensión que se especifica en el gráfico. Dado que el campo YearMonth presenta los datos por meses, el valor más suave de la tendencia será el número de meses. El suavizador estacional reflejará la periodicidad definida. En este caso, dado que definimos un período de doce meses (un año), el valor estacional más suave es el número de años. Esto puede sonar confuso, pero en realidad significa que para encontrar la estacionalidad, debemos observar varias estaciones. Este número es el suavizador estacional.
Otra información útil
Dado que los ciclos estacionales aumentan en amplitud con el tiempo, un enfoque analítico más avanzado podría utilizar funciones logarítmicas para crear una descomposición multiplicativa. En la práctica, se puede crear una medida simple de amplitud relativa en Qlik Sense dividiendo el componente estacional por el componente de tendencia. Cuando se hace esto, notamos que con el tiempo, los picos de verano de cada ciclo aumentan en amplitud relativa. Sin embargo, la amplitud de los puntos bajos en invierno no aumenta con el tiempo.