¿Cómo calcular medias móviles en Power BI? Fórmulas DAX

Tutorial con fórmulas DAX en Power BI para calcular medias móviles y comparar cálculos en intervalos semanales, mensuales o trimestrales.

Tutorial para calcular medias móviles en Power BI, utilizando ventanas de tiempo de 7 días, 30 días, trimestres y años. Desde gerentes hasta analistas de negocios, Power BI se ha convertido en una herramienta indispensable para la toma de decisiones basada en datos. Pero más allá de la mera representación de datos, existe la necesidad de obtener información más profunda.

Aquí es donde entran en juego los promedios móviles. Después de dominar el cálculo de los valores del mes anterior en Power BI, que cubrimos en nuestro último tutorial, es hora de dar un paso adelante. En este tutorial, profundizaremos en cómo crear promedios móviles utilizando fórmulas DAX en Power BI. Con un promedio móvil, puede suavizar las fluctuaciones para identificar tendencias, una herramienta especialmente útil para aquellos en ventas, finanzas y gestión de operaciones.

¿Por qué las medias móviles son importantes en los informes financieros?

Los promedios móviles proporcionan una representación más precisa de las tendencias de los datos en un período de tiempo determinado, filtrando el ruido y la volatilidad. Esto lo convierte en una herramienta esencial para el análisis de series temporales en Power BI. Dado el conjunto rico de funciones de inteligencia de tiempo disponibles en Power BI, DAX (Data Analysis Expressions) puede manejar fácilmente estos cálculos.

Configurar un modelo de datos en Power BI

Para este tutorial, supondremos que tienes una tabla de ventas con entradas diarias almacenadas en las columnas Monto de ventas y Clave de fecha, al igual que en nuestro tutorial anterior sobre el cálculo de las ventas del mes anterior. Asegúrate de haber configurado una tabla de fechas adecuada, un paso crucial cuando se trabaja con funciones de inteligencia de tiempo.

1. Fórmula Power BI para calcular medias móviles de 7 días

La fórmula DAX básica para calcular un promedio móvil de 7 días se vería así:

SevenDayRollingAvg = 
AVERAGEX(
    DATESINPERIOD('DateTable'[Date], LASTDATE('DateTable'[Date]), -7, DAY),
    CALCULATE(SUM('SalesTable'[Sales]))
)

Esta fórmula calcula el promedio de ventas para cada período de siete días que termina en la fecha actual. Ten en cuenta que ‘DateTable'[Date] debe ser una columna de fechas continua relacionada con tu tabla de datos de ventas.

2. Personalizar las medias móviles con días en Power BI

La belleza de DAX radica en su flexibilidad. Puedes personalizar fácilmente la fórmula para un promedio móvil de 30 días cambiando el -7, DÍA en la función DATESINPERIOD a -30, DÍA.

ThirtyDayRollingAvg = 
AVERAGEX(
    DATESINPERIOD('DateTable'[Date], LASTDATE('DateTable'[Date]), -30, DAY),
    CALCULATE(SUM('SalesTable'[Sales]))
)

3. Calcular un promedio móvil de 3 meses

Cuando se trata de análisis empresarial, a veces es más útil ampliar tu perspectiva a trimestres o incluso años. Esto es particularmente beneficioso para el análisis de tendencias estacionales o la planificación estratégica a largo plazo. El lenguaje DAX de Power BI facilita el ajuste de los cálculos de promedio móvil para adaptarse a estos marcos de tiempo más largos. Por ejemplo, para obtener un promedio móvil trimestral, puedes modificar tu fórmula DAX de la siguiente manera:

QuarterlyRollingAvg = 
AVERAGEX(
    DATESINPERIOD('DateTable'[Date], LASTDATE('DateTable'[Date]), -3, MONTH),
    CALCULATE(SUM('SalesTable'[Sales]))
)

Al utilizar -3, MONTH como parámetros en la función DATESINPERIOD de DAX, puedes apuntar directamente a los tres meses anteriores, que es una representación más estándar de un trimestre empresarial. Esto asegura que estás capturando datos de una manera que se alinea con cómo la mayoría de las empresas estructuran sus informes financieros.

4. Promedio móvil de 7 días del mes anterior

Ciertamente, calcular medias móviles de diferentes períodos en Power BI puede ofrecer información valiosa sobre tendencias o cambios en el rendimiento. En Power BI, puedes usar DAX para calcular estos promedios móviles comparativos fácilmente.

Supongamos que tienes una tabla de fechas llamada DateTable y una tabla de ventas llamada SalesTable. Quieres comparar el promedio móvil de 7 días actual con la misma métrica del mes anterior. Para obtener la misma métrica de 7 días pero para el mes anterior, puedes usar una función adicional CALCULATE para cambiar el contexto de tiempo.

PrevMonth7DayAvg = 
CALCULATE(
    [SevenDayRollingAvg],
    PREVIOUSMONTH('DateTable'[Date])
)

5. Comparar el promedio móvil de 7 días actual y del mes anterior con DAX

Ahora que tienes ambas métricas, puedes hacer comparaciones directamente en visualizaciones de Power BI o continuar tus cálculos de DAX para cuantificar la diferencia o el cambio porcentual. Aquí usamos el SevenDayRollingAvg, calculado utilizando una fórmula con el primer ejemplo.

Difference = [SevenDayRollingAvg] - [PrevMonth7DayAvg]
PercentChange = DIVIDE([Difference], [PrevMonth7DayAvg], 0) * 100

Con estos cálculos de DAX, ahora puedes crear visualizaciones que muestren el promedio móvil de 7 días actual, el promedio móvil de 7 días del mes anterior, la diferencia entre los dos y el cambio porcentual. Este caso de uso avanzado proporciona una forma sólida de comparar períodos de tiempo y tomar decisiones basadas en datos.

6. Las revisiones anuales utilizan una media móvil de 12 meses

Cuando se evalúa el rendimiento a largo plazo o las comparaciones año tras año, el promedio móvil de 12 meses es una métrica clave. Incluye un año completo de datos, ofreciendo información sobre patrones anuales, estacionalidad o tendencias de crecimiento a largo plazo.

Para calcular esto en DAX, la fórmula es:

AnnualRollingAvg = 
AVERAGEX(
    DATESINPERIOD('DateTable'[Date], LASTDATE('DateTable'[Date]), -12, MONTH),
    CALCULATE(SUM('SalesTable'[Sales]))
)

7. Solución de errores comunes

De vez en cuando, es posible que encuentres errores al calcular promedios móviles en Power BI, a menudo debido a relaciones de tabla incorrectas o errores de sintaxis. Al igual que en nuestro tutorial anterior sobre el cálculo del valor del mes anterior, siempre revisa la barra de fórmulas y los errores resaltados para resolver los problemas.

Por ejemplo, aquí hay tres de los errores más comunes:

«Se ha utilizado una función ‘XXXX’ en una expresión Verdadero/Falso que se utiliza como expresión de filtro de tabla. Esto no está permitido.»

Este error suele surgir al intentar usar ciertas funciones de DAX directamente dentro de un contexto de filtro, lo cual no está permitido. Para resolver esto, revisa tu fórmula, especialmente cualquier aspecto de filtrado de tablas, para asegurarte de que no se utilicen funciones no admitidas en contextos de filtrado. En su lugar, intenta usar columnas auxiliares o modificar la estructura de tu fórmula para cumplir con las mejores prácticas de DAX.


«No se encontró la columna ‘XXXX’ de la tabla.»

Este es un error sencillo que sugiere que una columna referenciada no existe en la tabla a la que haces referencia. Esto puede ocurrir debido a errores tipográficos, cambios de nombre de columnas o reestructuración de tu modelo de datos. Para solucionarlo, asegúrate de que el nombre de la columna y la referencia de la tabla sean correctos. Si has realizado cambios recientes en el modelo de datos, considera actualizar la fuente de datos o ajustar la fórmula para que coincida con el estado actual de tus tablas y columnas.


«No se puede encontrar la columna ‘XXXX’ en la tabla ‘YYYY’ o es posible que no se pueda utilizar en esta expresión.»

El último error de esta breve lista suele aparecer cuando hay un problema con las relaciones de tablas o si una columna no está disponible en el contexto de evaluación actual. En primer lugar, verifica las relaciones entre tus tablas para asegurarte de que estén configuradas correctamente. Si las relaciones están bien, considera utilizar funciones como RELACIONADO() o RELACIONADATABLA() para obtener valores de tablas vinculadas, asegurándote de que las columnas necesarias sean accesibles en el contexto de tu fórmula.


Conclusión

Saber calcular medias móviles en Power BI permite realizar análisis interesantes y relevantes. Por ejemplo, para comprender las variaciones de los datos a lo largo del tiempo en los cuadros de mando de Power BI. Con este tutorial, ahora deberías estar equipado para configurar y calcular cualquier promedio móvil en Power BI para obtener información más profunda sobre tus datos, siguiendo la sintaxis y las pautas de DAX.

Para obtener más tutoriales sobre funciones de DAX, recuerda consultar nuestra sección de tutoriales de Power BI. En las publicaciones anteriores, hemos visto cómo calcular los valores del mes anterior en Power BI.

https://expert-only.com/en/power-bi/power-bi-previous-month-value/

Be the first to comment

Leave a Reply

Tu dirección de correo no será publicada.


*