Quiz: Modelado y DAX Básico

Quiz
15 min~9 min lectura

Quiz Interactivo

Pon a prueba tus conocimientos

Introducción al Quiz: Evaluando tus Fundamentos en Modelado y DAX

Has llegado a un punto crucial en tu aprendizaje de Power BI. Los módulos anteriores te han introducido a la interfaz, la importación de datos y los principios del modelado. Esta lección, estructurada como un quiz integral, no es un examen con calificación, sino una herramienta de autoevaluación diseñada para consolidar tu comprensión y revelar áreas que requieren repaso. El enfoque se centra en dos pilares: la integridad de tu modelo de datos y la aplicación correcta de funciones DAX básicas.

Un modelo de datos bien estructurado es el cimiento sobre el que se construyen todos los dashboards ejecutivos. De nada sirven visualizaciones vistosas si los números detrás de ellas son incorrectos o las relaciones entre tablas generan duplicaciones. Del mismo modo, DAX (Data Analysis Expressions) es el lenguaje que da vida a tus datos, permitiendo crear métricas de negocio dinámicas y complejas. Este quiz te guiará a través de escenarios prácticos que simulan problemas comunes, invitándote a pensar antes de proporcionar la solución y su explicación detallada.

El objetivo final es que, al finalizar esta lección, puedas verificar con confianza que comprendes cómo se relacionan las tablas mediante cardinalidades, por qué una tabla de fechas es esencial, y cómo construir medidas básicas que respondan preguntas de negocio reales. Prepárate para aplicar la teoría en contextos específicos.

Concepto Clave: El Motor de Cálculos y el Mapa de Carreteras de Datos

Imagina que tu modelo de datos en Power BI es el plano de una gran ciudad. Cada tabla representa un distrito: uno para las ventas, otro para los clientes, otro para los productos y uno especial para el calendario. Las relaciones (las líneas que conectan las tablas) son las avenidas y calles que permiten viajar entre estos distritos. La cardinalidad (uno a muchos, muchos a uno) define el sentido del tráfico y las reglas de circulación. Un error en este plano, como una calle de sentido único mal señalizada (relación incorrecta), hará que los viajes (tus cálculos) tomen rutas equivocadas, dupliquen distancias o, simplemente, fallen.

Por otro lado, DAX es el motor y el sistema de navegación de tu coche. Te permite definir exactamente qué quieres medir en tu viaje: "¿Cuál fue la velocidad promedio?" (una medida como AVERAGE), "¿Cuántos kilómetros recorrí en total?" (una medida como SUM). Funciones como CALCULATE son como los desvíos de tráfico en tu GPS, permitiéndote modificar temporalmente las condiciones del viaje ("muéstrame la distancia total, pero solo para los viajes realizados en autopista"). Sin un buen plano (modelo), el mejor GPS (DAX) no te llevará correctamente a tu destino. Ambos conceptos son interdependientes y fundamentales.

Cómo Funciona en la Práctica: Un Escenario Paso a Paso

Vamos a trabajar con un escenario simplificado pero representativo. Supón que tienes tres tablas: Ventas (con campos como ID_Venta, Fecha, ID_Producto, Cantidad, Importe), Productos (ID_Producto, Nombre, Categoría, Costo) y una tabla Calendario (Fecha, Año, Mes, Trimestre). Tu tarea es crear un dashboard que muestre las Ventas Totales y el Margen de Beneficio por categoría de producto y por mes.

Paso 1: Evaluar el modelo. Debes verificar que las relaciones existan. Debería haber una relación entre Ventas[ID_Producto] y Productos[ID_Producto], y otra entre Ventas[Fecha] y Calendario[Fecha]. La cardinalidad debe ser de Uno a muchos (1:*) desde Productos hacia Ventas, y desde Calendario hacia Ventas. Esto significa que un producto (o una fecha) puede estar en muchas filas de ventas, pero una venta específica tiene un solo producto y una sola fecha. El filtro fluye desde las tablas de dimensión (Productos, Calendario) hacia la tabla de hechos (Ventas).

Paso 2: Crear las medidas DAX. La venta total es sencilla: Ventas Totales = SUM(Ventas[Importe]). Para el margen, necesitas primero calcular el costo total: Costo Total = SUMX(Ventas, Ventas[Cantidad] * RELATED(Productos[Costo])). Luego, el margen: Margen Bruto = [Ventas Totales] - [Costo Total] y % Margen = DIVIDE([Margen Bruto], [Ventas Totales], 0). Observa el uso de RELATED para traer el costo de la tabla Productos, lo cual solo funciona porque existe una relación activa entre las tablas.

Código en Acción: Ejemplos Funcionales de DAX y Estructura

A continuación, se presentan bloques de código reales que puedes probar en Power BI Desktop. Estos ejemplos ilustran medidas comunes y cómo interactúan con el modelo.

Medidas Básicas de Agregación


// 1. Medida simple de suma total
Ventas Totales = SUM(Ventas[Importe])

// 2. Medida de conteo distinto de clientes
Clientes Únicos = DISTINCTCOUNT(Ventas[ID_Cliente])

// 3. Cálculo de un promedio con manejo de división por cero
Ticket Promedio = DIVIDE(
    [Ventas Totales],
    [Cantidad Total Transacciones],
    0  // Valor a devolver en caso de error (división por cero)
)

Medidas con Contexto de Filtro y CALCULATE


// 4. Ventas del año anterior (requiere una tabla de fechas con relación activa)
Ventas Año Anterior =
CALCULATE(
    [Ventas Totales],
    SAMEPERIODLASTYEAR(Calendario[Fecha])
)

// 5. Ventas para una categoría específica, independientemente del filtro de la página
Ventas de Electrónicos =
CALCULATE(
    [Ventas Totales],
    KEEPFILTERS(Productos[Categoría] = "Electrónicos")
)

// 6. Porcentaje del total general (ALL remueve los filtros de contexto)
% del Total General =
DIVIDE(
    [Ventas Totales],
    CALCULATE([Ventas Totales], ALL(Productos))
)

Uso de Funciones Iteradoras y RELATED


// 7. Cálculo de costo total usando SUMX y RELATED (itera fila por fila)
Costo Total =
SUMX(
    Ventas,
    Ventas[Cantidad] * RELATED(Productos[Costo_Unitario])
)

// 8. Margen bruto utilizando medidas previamente definidas
Margen Bruto = [Ventas Totales] - [Costo Total]

// 9. Margen porcentual con formato
% Margen Bruto =
FORMAT(
    DIVIDE([Margen Bruto], [Ventas Totales], 0),
    "0.00%"
)

Errores Comunes y Cómo Evitarlos

Al comenzar con el modelado y DAX, es frecuente tropezar con los mismos obstáculos. Identificarlos temprano te ahorrará horas de depuración.

1. Relaciones de Muchos a Muchos (*:*) no administradas: Power BI permite relaciones directas de muchos a muchos, pero a menudo producen resultados inesperados o duplicaciones. Cómo evitarlo: Casi siempre, la solución es introducir una tabla puente (tabla de dimensiones compartida) que descomponga la relación en dos relaciones de uno a muchos. Normaliza tus datos antes de importarlos.

2. Uso de COLUMN en lugar de MEASURE para cálculos dinámicos: Crear una columna calculada para algo como "Ventas Totales" dará un valor fijo por fila, que al sumarse en un visual puede duplicar valores. Cómo evitarlo: Pregúntate: "¿Este cálculo debe agregarse (suma, promedio) en un gráfico o tabla?" Si la respuesta es sí, usa casi siempre una medida. Las columnas son para atributos estáticos (como un nombre completo concatenado).

3. Olvidar el contexto de filtro en CALCULATE: Un error común es no entender que CALCULATE primero evalúa sus argumentos de filtro, que sobrescriben los filtros existentes del contexto (como los segmentadores de datos). Cómo evitarlo: Usa funciones como KEEPFILTERS dentro de CALCULATE cuando quieras intersecar, no reemplazar, los filtros existentes. Practica con ejemplos simples.

4. No utilizar una tabla de fechos dedicada (Calendario): Intentar usar la columna de fecha de tu tabla de hechos para análisis de inteligencia de tiempo (YTD, comparación año anterior) es limitante y propenso a errores. Cómo evitarlo: SIEMPRE crea una tabla de fechas independiente y completa, que cubra todo el rango de tus datos. Usa la función CALENDAR() de DAX o la funcionalidad "Nueva tabla" en Power Query. Establece la relación desde esta tabla hacia tus tablas de hechos.

5. Ignorar el manejo de errores en DIVIDE: Usar el operador de división (/) en lugar de la función DIVIDE puede resultar en errores visibles en tus reportes si el denominador es cero. Cómo evitarlo: Adopta como estándar usar siempre DIVIDE(numerador, denominador, valor_alternativo). Es más legible y maneja automáticamente los errores de división por cero.

Tip del Experto: Cuando una medida no devuelve el resultado esperado, activa el "Análisis de rendimiento" en Power BI Desktop y revisa la "Vista de dependencias" del modelo. A menudo, el problema no está en la sintaxis de DAX, sino en cómo el filtro está (o no está) fluyendo a través de una relación inactiva, una cardinalidad incorrecta o un contexto de filtro conflictivo.

Checklist de Dominio: ¿Estás Listo para Avanzar?

Antes de proceder al siguiente módulo, verifica que puedes afirmar con seguridad cada uno de los siguientes puntos. Si tienes dudas en alguno, es el momento perfecto para repasar las lecciones anteriores.

  • Puedo explicar la diferencia entre una tabla de hechos (transaccional) y una tabla de dimensión (descriptiva) y dar ejemplos de cada una.
  • Comprendo los tipos de cardinalidad (Uno a Uno, Uno a Muchos, Muchos a Uno, Muchos a Muchos) y sé que la más común y recomendada en un modelo estrella es la de Uno a Muchos.
  • Sé crear y gestionar relaciones entre tablas en la vista de modelo de Power BI, y entiendo el concepto de dirección del filtro (single vs. bidirectional).
  • Puedo diferenciar claramente entre una columna calculada (se evalúa y almacena fila por fila durante la actualización de datos) y una medida (se calcula dinámicamente en el contexto de la consulta).
  • He creado con éxito medidas DAX básicas utilizando funciones como SUM, AVERAGE, DISTINCTCOUNT, y DIVIDE.
  • He utilizado la función CALCULATE en al menos una medida para modificar intencionalmente su contexto de filtro (por ejemplo, para calcular un total general con ALL).
  • Entiendo la importancia crítica de una tabla de fechas independiente y sé cómo crearla y relacionarla con mis tablas de hechos.
  • Puedo identificar y explicar al menos dos de los errores comunes listados en la sección anterior y sé cómo solucionarlos.

Si has logrado marcar la mayoría de estos ítems, tu comprensión de los fundamentos del modelado y DAX básico es sólida. Estás listo para avanzar hacia técnicas más avanzadas de DAX y el diseño visual de dashboards ejecutivos. Recuerda que la maestría viene con la práctica constante: carga tus propios datos, experimenta con las relaciones y prueba cada medida hasta que su comportamiento sea intuitivo para ti. ¡Buen trabajo!

De lección a portfolio

Convertí esta lección en una habilidad visible para entrevistas.

Guardá el curso, completá los ejercicios y conectá esta habilidad con una ruta de empleo, data, IA, programación o marketing.

Newsletter Cursalo

Recibí rutas y cursos nuevos

Sumate para recibir recursos orientados a empleo y portfolio.

  • Rutas de empleo
  • Cursos prácticos
  • Portfolio y entrevistas

Sin spam. También podés entrar con tu cuenta para guardar progreso. Iniciá sesión