← Volver

Ejercicios de Power BI — Power Query + DAX + Visualizaciones

Power Query — Nivel Básico

1) Remover filas vacías

Eliminar filas donde todas las columnas están vacías.

= Table.SelectRows(Source, each not List.IsEmpty(List.RemoveNulls(Record.FieldValues(_))))

2) Cambiar tipos de datos automáticamente

Aplicar tipos: número, texto, fecha.

= Table.TransformColumnTypes(Source, {
    {"Fecha", type date}, 
    {"Precio", type number}, 
    {"Producto", type text}
})

3) Filtrar filas usando condición

= Table.SelectRows(Source, each [Precio] > 1000)

Power Query — Nivel Intermedio

1) Unpivot — convertir columnas en filas

Transformar columnas de meses en filas "Mes - Valor".

= Table.UnpivotOtherColumns(Source, {"Producto"}, "Mes", "Valor")

2) Merge entre dos tablas

= Table.NestedJoin(
    TablaVentas, "ProductoID", 
    TablaProductos, "ID", 
    "DatosProducto", JoinKind.LeftOuter
)

3) Agregar columna personalizada

= Table.AddColumn(Source, "PrecioConIVA", each [Precio] * 1.21)

DAX — Nivel Básico

1) Suma total de ventas

Total Ventas = SUM(Ventas[Importe])

2) Cantidad de productos distintos

Productos Distintos = DISTINCTCOUNT(Ventas[ProductoID])

3) Cálculo básico por contexto

Ventas por Categoría = SUM(Ventas[Importe])

DAX — Nivel Intermedio

1) Ventas del año anterior (Time Intelligence)

Ventas Año Anterior =
CALCULATE(
    [Total Ventas],
    SAMEPERIODLASTYEAR(Calendario[Fecha])
)

2) Variación porcentual

Variación % =
DIVIDE([Total Ventas] - [Ventas Año Anterior], [Ventas Año Anterior])

3) Ranking de vendedores

Ranking Vendedor =
RANKX(ALL(Ventas[Vendedor]), [Total Ventas], , DESC)

DAX — Nivel Avanzado

1) Cálculo con FILTER + CALCULATE

Ventas Premium =
CALCULATE(
    [Total Ventas],
    FILTER(Ventas, Ventas[Importe] > 5000)
)

2) Medida iterativa con SUMX

Margen Total =
SUMX(Ventas, Ventas[Importe] - Ventas[Costo])

3) Valor máximo según selección del usuario

Máximo Selección =
CALCULATE(MAX(Ventas[Importe]), ALLSELECTED(Ventas))

Visualizaciones y Dashboards

1) Crear un KPI de Ventas

1) KPI Visual  
2) Indicador: [Total Ventas]  
3) Tendencia: Fecha  
4) Meta manual o medida "Meta Ventas"

2) Gráfico combinado (líneas + columnas)

Usar "Gráfico combinado":
- Columnas: Total Ventas
- Línea: Ventas Año Anterior
- Eje compartido: Mes

3) Segmentadores y relaciones

1) Crear Segmentadores:
   - Categoría
   - Vendedor
   - Año

2) Verificar modelo con relaciones en estrella:
   - DimProducto
   - DimFecha
   - DimVendedor
   - FactVentas

Proyectos Reales

1) Dashboard de Ventas Completo

Incluye:
- 4 medidas DAX:
  Total Ventas
  Ventas Año Anterior
  Variación %
  Ranking Vendedor

- Gráficos:
  Barras por categoría
  Líneas por mes
  Mapa por región
  KPI de ventas

- Segmentadores:
  Año, Producto, Vendedor

2) Modelo estrella desde cero

FactVentas
DimProducto
DimCliente
DimFecha
DimVendedor

Relaciones:
Dim → Fact (uno a muchos)

Medidas:
Margen Total
Ticket Promedio
Ventas por Región

3) Limpieza + Unpivot + DAX (completo)

Power Query:
- Unpivot meses
- Cambiar tipos
- Eliminar duplicados

DAX:
- Total Ventas
- Ventas Año Anterior
- Variación %

Visual:
- Gráfico combinado
- KPI
- Segmentadores
whatsapp