Forecast

El forecast es una de las necesidades más frecuentes en muchos ámbitos, aunque no siempre es sencillo escoger el método mas adecuado para llevarlo a cabo, existen técnicas generales para simplificarlo. Con Power BI podemos realizar forecast desde un gráfico de líneas que contenga una serie de tiempo o bien acudir a R para poder modelar el algoritmo en detalle adecuándolo a las particularidades de los datos.

La ciencia de realizar previsiones en el tiempo fiables es tan compleja como lo sea el escenario planteado. Para el profano requiere de un aprendizaje para entender las diferentes variables que pueden afectar a la previsión. En ocasiones nos puede valer una simple regresión lineal, muchas veces requerimos de un suavizado debido a una evidente estacionalidad, en otras ocasiones existen factores irregulaes difíciles de detectar.

Cuando hablamos de forecast, hablamos de futuro a partir del pasado, es decir, necesitamos un histórico de datos en el que basar la previsión futura, cuantos más datos y más consistentes sean estos mayores probabilidades de poder obtener una previsión precisa, es decir, Power BI no dispone de una varita mágica y los datos vienen de cálculos sobre la información histórica.

No soy estadístico y mis conocimientos son básicos pero en el camino de mi aprendizaje he topado con conceptos y soluciones que quiero reflejar en esta entrada.

Hacer una previsión simple con Power BI es tan fácil como el siguiente ejemplo.

R es un especialista en estadística y podemos encontrar paquetes con librerías para casi cualquier uso relacionado con ella. Uno de los usos más frecuentes tiene que ver con las regresiones y entre ellas la predicción de datos futuros a partir de series de anteriores.

Existe un paquete especialista en ello. Se trata de forecast, un conjunto de métodos y funciones para visualizar y analizar previsiones de series de tiempo univariables incluyendo el suavizado exponencial a través de modelos de espacio de estados y modelado ARIMA automático (aquí un excelente ejemplo de uso general).

Al ser una librería muy popular y al haber un gran numero de personas usando sus funciones existe mucha documentación en internet al respecto (por ejemplo esta útil introducción), aunque antes es necesario cierto conocimiento general de que es forecast, qué utilidad tiene y en qué ocasiones puede ser útil un modelo u otro, y para ello disponemos del libro online “Forecasting: pinciples and practice“. En este enlace se explican varios ejemplos paso a paso.

Existen otros paquetes menos generalistas o que complementan a forecast en problemas concretos, por ejemplo MAPA combina modelos de suavizado exponencial a diferentes niveles de agregación temporal para mejorar la precisión del forecast. En este enlace se describen multitud de librerías relacionadas con las series de tiempo: modelos univariables y multivariables, lineales, no lineales, tratamientos distintos de la estacionalidad, descomposición de las series, análisis de frecuencia.

Ejemplo de forecast con visual ARIMA

Cuando tenemos una curva de datos en el tiempo podemos descomponerla en diferentes vistas: una tendencia que nos indica si los datos crecen o disminuyen en el tiempo, la estacionalidad que nos permite visualizar los puntos en el tiempo donde se repite un mayor o menor dato y un factor irregular, es decir un crecimiento o disminución en puntos donde no tenemos una explicación aparente.

Mediante 6 simples líneas de código simple podemos dibujar en pantalla la descomposición de una serie temporal en sus diferentes factores: los datos en sí, la estacionalidad, la línea de tendencia y los factores irregulares.

Realizar previsiones simples con regresiones lineales es una tarea simple en Power BI, también lo es en Excel. Cuando la historia de los datos no es sencilla, cuando tenemos de fuertes estacionalidades, cuando hay multitud de factores irregulares -no explicables mediante cálculos-, entonces es cuando debemos hacer un esfuerzo para entender los diferentes algoritmos existentes y las variables que influyen en su cálculo para encontrar el mejor método que se adapte a nuestras circunstancias.

Aunque algo complejo en ocasiones para el no programador, R en Power BI dispone de muchas posibilidades para esta tareas, ya sea con visuales predefinidos o acudiendo directamente a las librerías mencionadas.

 

 

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *