Buscar
Cerrar este cuadro de búsqueda.

Entendiendo el funcionamiento de DAX

Picture of Carol Otero Gómez

Carol Otero Gómez

| 23 abril, 2024

Si tu destino apunta al mundo de los datos, mas vale que prepares tu radar porque de seguro te vas a encontrar con un lenguaje de expresiones que te va a acompañar en tu camino.

 

Si has escuchado hablar de DAX, de medidas, de columnas calculadas, pero aún te abruman estos conceptos, te los voy a desglosar a continuación.

 

DAX es el acrónimo de Data Analysis Expressions o Expresiones de Análisis de Datos, estas expresiones las puedes encontrar en Power Pivot – Excel, Power BI y en Analysis Services.

 

Con DAX se pueden realizar cálculos complejos, crear fórmulas de cálculo dinámico o más conocidas como medidas, agregar columnas a tabla existentes o dicho de otra manera crear columnas calculadas, así como crear tablas calculadas a partir de las tablas existentes en nuestro modelo de datos.

 

Para familiarizarnos con DAX, es necesario tener comprensión (por ahora) de dos ideas principales:

1. DAX funciona evaluando diferentes contextos

Pueden afectar el resultado de una expresión. Estos incluyen:

  • Contexto de Fila
  • Contexto de Filtro
  • Transición de Contexto

¿Cómo diferenciar entre uno y otro?

En primera, debemos entender que el contexto en DAX se refiere al entorno en el cual se evalúan las expresiones, determinado por los filtros aplicados al modelo de datos y por la posición relativa de las filas y columnas durante el cálculo de una fórmula.

Conocer esto es importante porque nos equipa con la capacidad para generar análisis dinámicos y para solucionar los posibles problemas de las fórmulas.

Aquí puedes ver las diferencias entre el contexto de fila y el contexto de filtro:

Categoría de diferenciación

Contexto de Fila

Contexto de Filtro

Naturaleza del contexto

El contexto de fila se centra en la evaluación de cada fila individualmente durante cálculos iterativos, como en funciones iterativas (SUMX, AVERAGEX, etc.).

El contexto de filtro, por otro lado, se refiere a los filtros aplicados al conjunto de datos antes de calcular una expresión DAX, determinando qué datos se incluyen en los cálculos.

Aplicación

El contexto de fila se utiliza para realizar cálculos personalizados para cada fila de los datos, permitiendo análisis detallados a nivel de fila.

El contexto de filtro, en cambio, define qué datos están disponibles para el cálculo en primer lugar, reduciendo el conjunto de datos antes de que se apliquen cálculos.

Generación

El contexto de fila se genera mediante funciones iterativas y expresiones que crean un contexto de fila específico para cada iteración, como SUMX o AVERAGEX.

El contexto de filtro se genera mediante los filtros aplicados directamente a las visualizaciones o mediante funciones de filtrado como FILTER, que establecen un filtro sobre el conjunto de datos antes de calcular una expresión DAX.

La transición de contexto se refiere a la capacidad de ciertas funciones, como CALCULATE(), para cambiar entre contextos de fila y de filtro.

2. Construir un Buen Modelo de Datos

Ayuda a DAX a funcionar correctamente. Esto incluye establecer relaciones adecuadas entre tablas, definir correctamente la dirección de los filtros y organizar los datos de manera lógica. Un modelo de datos sólido es la base para el éxito en DAX.

Ahora bien, si quieres iniciar con el pie derecho con DAX te dejo unos cuantos tips al momento de crear tus expresiones:

  1. Usa nombres claros y explicativos para asignarle a las medidas que vas creando.
  2. Indenta tu código y coméntalo, de esta forma aseguras orden y claridad y vas documentando tu código.
  3. Crea siempre una tabla de medidas en tus reportes.
  4. Puedes crear carpetas para clasificar y organizar tus medidas.
  5. Por rendimiento, evita o minimiza el uso de columnas y tablas calculadas en tus reportes, especialmente en conjuntos de datos muy grandes.

 

La comprensión de la evaluación de contextos y el modelado de datos, son elementos que te pueden ayudar a aprovechar al máximo este potente lenguaje de expresiones.

Dime, ¿Ya habías escuchado acerca de DAX? ¿Te gustaría profundizar en este lenguaje?

PD: Para indentar tu código te recomiendo la herramienta DAX FORMATTER, allí pegas tu código y automáticamente te lo organiza para que luego ya lo dejes en tu reporte.

Contacta con nosotros para que te echemos una mano analizando tus necesidades y ofreciéndote una solución a medida. 

En Raona llevamos más de 20 años trabajando para grandes organizaciones. Con más de 100 proyectos completados y 200 empresas asistidas, somos la empresa más galardona en proyectos de intranet en España. Contacta con nosotros y te atenderemos sin compromiso.



    Carol Otero Gómez

    Soy una analista de datos proactiva y autodidacta con experiencia en Power BI y análisis financiero. Mi enfoque se centra en convertir datos complejos en información valiosa para impulsar la toma de decisiones estratégicas. Disfruto colaborar en equipos multidisciplinarios y cultivar relaciones interpersonales sólidas.

    Compartir en Redes Sociales