Power bi fórmulas dax

24.11.2025
Una guía didáctica para reforzar los conceptos aprendidos en clase con ejemplos prácticos y ejercicios interactivos


Autor: Eco. Marco Acosta

Repaso Interactivo: Power BI, DAX, R y SQL

Repaso Interactivo: Power BI, DAX, R y SQL

Una guía didáctica para reforzar los conceptos aprendidos en clase con ejemplos prácticos y ejercicios interactivos

Lenguaje DAX: Expresiones de Análisis de Datos

¿Qué es DAX?

DAX (Data Analysis Expressions) es un lenguaje de fórmulas utilizado en Power BI, Excel y otros productos de Microsoft para crear cálculos personalizados en modelos de datos tabulares.

Conceptos Fundamentales

Columnas Calculadas vs. Medidas

Columnas Calculadas: Se calculan por fila y se almacenan en la tabla.

Medidas: Se calculan en contexto de filtro y se evalúan dinámicamente.

Ejemplo: Columna Calculada
Ingreso Neto = Ventas[Ingresos] - Ventas[Costos]
Ejemplo: Medida
Total Ventas = SUM(Ventas[Monto])

Contexto de Fila y Contexto de Filtro

Contexto de Fila: Determina qué fila está siendo evaluada en una expresión.

Contexto de Filtro: Determina qué filas están disponibles para una expresión.

Ejemplo: Contexto de Filtro con CALCULATE
Ventas 2023 = CALCULATE(SUM(Ventas[Monto]), Ventas[Año] = 2023)

Funciones DAX Importantes

CALCULATE y FILTER

CALCULATE modifica el contexto de filtro, mientras que FILTER itera sobre una tabla y aplica un filtro.

Ejemplo: CALCULATE con múltiples condiciones
Ventas Laptops 2023 = CALCULATE(
SUM(Ventas[Monto]),
Productos[Categoría] = "Laptops",
Ventas[Año] = 2023
)

Funciones de Inteligencia de Tiempo

Estas funciones permiten realizar análisis temporales como comparaciones año tras año.

Ejemplo: Comparación con año anterior
Ventas Año Anterior = CALCULATE(
SUM(Ventas[Monto]),
SAMEPERIODLASTYEAR(Calendario[Fecha])
)
Ejemplo: Acumulado del año
Ventas YTD = TOTALYTD(
SUM(Ventas[Monto]),
Calendario[Fecha]
)

Funciones Iteradoras

Las funciones iteradoras como SUMX, AVERAGEX, etc., iteran sobre una tabla y aplican una expresión a cada fila.

Ejemplo: SUMX
Total Ingresos = SUMX(Ventas, Ventas[Cantidad] * Ventas[Precio Unitario])

Uso de Variables

Las variables mejoran la legibilidad y el rendimiento de las fórmulas DAX.

Ejemplo: Variables en DAX
Margen Beneficio =
VAR Ingresos = SUM(Ventas[Ingresos])
VAR Costos = SUM(Ventas[Costos])
RETURN (Ingresos - Costos) / Ingresos

Power BI: Modelado y Visualización

Modelado de Datos en Power BI

Un modelo de datos bien estructurado es fundamental para análisis efectivos en Power BI.

Esquema Estrella

El esquema estrella consiste en:

  • Tablas de hechos: Contienen medidas cuantitativas (ej. Ventas, Transacciones)
  • Tablas de dimensiones: Contienen atributos descriptivos (ej. Productos, Clientes, Tiempo)

Tipos de Relaciones

  • Uno a varios (1:*): La relación más común
  • Varios a varios (*:*): Menos común, requiere consideraciones especiales
  • Uno a uno (1:1): Poco común en modelos analíticos

Buenas Prácticas de Visualización

Selección de Gráficos

  • Gráficos de barras: Comparación entre categorías
  • Gráficos de líneas: Tendencias en el tiempo
  • Gráficos de dispersión: Relación entre dos medidas
  • Mapas: Datos geográficos
  • Tablas y matrices: Datos detallados

Interactividad

  • Utiliza tooltips para información adicional
  • Implementa botones para navegación
  • Usa paneles de selección para filtros interactivos
  • Configura interacciones entre visuales

Integración de R en Power BI

¿Por qué usar R en Power BI?

R amplía las capacidades de Power BI permitiendo:

  • Análisis estadísticos avanzados
  • Visualizaciones personalizadas
  • Procesamiento de datos complejos
  • Machine Learning

Ejemplos de Uso de R en Power BI

Visualizaciones Personalizadas

Ejemplo: Gráfico de correlación
library(ggplot2)
library(GGally)

# Crear matriz de correlación
ggpairs(dataset, columns = c("Ventas", "Publicidad", "Clientes"))

Análisis Estadístico

Ejemplo: Regresión lineal
# Modelo de regresión
modelo <- lm(Ventas ~ Publicidad + Temporada, data = dataset)

# Resumen del modelo
summary(modelo)

# Predicciones
dataset$Prediccion <- predict(modelo, dataset)

Flujo de Trabajo R + Power BI

  1. Importar datos desde Power BI a R
  2. Realizar transformaciones y análisis en R
  3. Exportar resultados o visualizaciones a Power BI
  4. Integrar con el modelo de datos y dashboards

SQL para Análisis de Datos

Consultas SQL Básicas

Ejemplo: SELECT básico
SELECT
Producto,
SUM(Ventas) as Total_Ventas
FROM Ventas
WHERE Año = 2023
GROUP BY Producto
ORDER BY Total_Ventas DESC

JOINs en SQL

Los JOINs permiten combinar datos de múltiples tablas:

Ejemplo: INNER JOIN
SELECT
v.ProductoID,
p.Nombre,
SUM(v.Cantidad) as Total_Vendido
FROM Ventas v
INNER JOIN Productos p ON v.ProductoID = p.ProductoID
GROUP BY v.ProductoID, p.Nombre

Funciones de Ventana

Permiten realizar cálculos sobre un conjunto de filas relacionadas:

Ejemplo: ROW_NUMBER()
SELECT
Producto,
Vendedor,
Ventas,
ROW_NUMBER() OVER(PARTITION BY Vendedor ORDER BY Ventas DESC) as Ranking
FROM Ventas

Integración SQL + Power BI

Power BI puede conectarse directamente a bases de datos SQL para:

  • Importar datos mediante consultas SQL
  • Realizar transformaciones en el origen
  • Actualizaciones automáticas de datos

Ejercicios Prácticos

Ejercicio 1: Medida DAX con CALCULATE

Crea una medida que calcule las ventas totales solo para la categoría "Electrónicos" en el año 2023.

Solución
Ventas Electronicos 2023 = CALCULATE(
SUM(Ventas[Monto]),
Productos[Categoría] = "Electrónicos",
Ventas[Año] = 2023
)

Ejercicio 2: Comparación con Año Anterior

Crea una medida que muestre las ventas del mismo período del año anterior.

Solución
Ventas Año Anterior = CALCULATE(
SUM(Ventas[Monto]),
SAMEPERIODLASTYEAR(Calendario[Fecha])
)

Ejercicio 3: Uso de Variables

Crea una medida que calcule el margen de beneficio usando variables para mejorar la legibilidad.

Solución
Margen Beneficio =
VAR Ingresos = SUM(Ventas[Ingresos])
VAR Costos = SUM(Ventas[Costos])
RETURN (Ingresos - Costos) / Ingresos

Ejercicio 4: Función Iteradora

Crea una medida que calcule el promedio de ventas por cliente usando una función iteradora.

Solución
Promedio Ventas por Cliente = AVERAGEX(
VALUES(Clientes[ClienteID]),
[Total Ventas]
)

Quiz de Evaluación

1. ¿Cuál es la diferencia principal entre una columna calculada y una medida en DAX?

2. ¿Qué función de DAX se utiliza para modificar el contexto de filtro?

3. ¿Qué función de inteligencia de tiempo se utiliza para comparar con el mismo período del año anterior?

Recursos Adicionales

Documentación Oficial de DAX

Guía completa de referencia de funciones DAX con ejemplos.

Visitar Sitio

Power BI Documentation

Documentación oficial de Microsoft para Power BI.

Visitar Sitio

SQL Tutorial

Tutorial interactivo de SQL para principiantes.

Visitar Sitio

R para Ciencia de Datos

Libro gratuito sobre R para análisis de datos.

Visitar Sitio

DAX Guide

Guía completa de funciones DAX con ejemplos detallados.

Visitar Sitio

Power BI Community

Foro oficial de la comunidad de Power BI.

Visitar Sitio

© 2023 Repaso Interactivo: Power BI, DAX, R y SQL | Material Didáctico para Estudiantes

Share
© 2020 ACOSCONSULTING , Quito-Ecuador
Creado con Webnode
¡Crea tu página web gratis! Esta página web fue creada con Webnode. Crea tu propia web gratis hoy mismo! Comenzar