Especialización en Power BI
Sesión 7
Docente: Arnaldo Eduardo Alvarado Vallejos
Reglas
Se requiere puntualidad para un mejor desarrollo del curso.
Para una mayor concentración mantener silenciado el micrófono durante la
sesión.
Las preguntas se realizarán a través del chat y en caso de que lo requieran
podrán activar el micrófono.
Realizar las actividades y/o tareas encomendadas en los plazos determinados.
Identificarse en la sala Zoom con el primer nombre y primer apellido.
Modelamiento de datos y lenguaje DAX
• Modelo de datos. Crear / eliminar relaciones.
• Modelo de datos. Creación de jerarquías.
• DAX. Creación de tablas. En blanco, con datos, tipo calendario.
• DAX. Creación de columnas. Funciones y operadores matemáticos, funciones para
fechas y funciones para textos.
• DAX. Creación de medidas. Uso de CALCULATE. Operaciones fila a fila (funciones X).
• DAX. Inteligencia de tiempo. Uso de YTD, TOTALYTD, SAMEPERIODLASTYEAR.
Variación entre periodos.
• DAX. Uso del comando condicional (IF).
• DAX. Textos y títulos dinámicos.
Introducción a DAX
Es el “lenguaje de programación” de:
Si usas Power BI sin conocer DAX te estás
Analysis Services (cubos OLAP)
perdiendo de más del 50% de las
Power Pivot para Excel.
funcionalidades de la herramienta
Power BI.
A simple vista puede parecer similar a las
DAX es diseñado para trabajar con
fórmulas de Excel (ambos son lenguajes
modelo de datos y generar insights de
“funcionales”), no obstante, la diferencia
negocios.
entre ambos es muy grande.
Introducción a DAX
DAX es un lenguaje diferente a cualquier otro, pero algunos conceptos nos pueden resultar familiar a simple
vista, esto puede resultar riesgoso.
MICROSOFT EXCEL LENGUAJE SQL
En SQL:
Funciones Comunes DAX: Funciones Filtro DAX En SQL: SELECT * FROM
En DAX: EVALUATE(), SELECTCOLUMNS()
En SQL: WHERE
En DAX: FILTER, CALCULATETABLE
Funciones LOGICAS DAX: En DAX:
En SQL: GROUP BY, HAVING
En DAX: GROUP BY, SUMMARIZECOLUMNS
Características de DAX
• DAX es un lenguaje funcional:
• Tipos de Datos en DAX:
-Número entero. Formato no es igual a tipo de dato!
-Número decimal.
-Número decimal fijo. Cambiar el formato no altera el valor
-Fecha y hora. subyacente, cambiar el tipo de dato si.
-Booleano (V o F)
-Texto
Características de DAX
• Data Analysis Expressions, más conocido como DAX, es el lenguaje de formulas que diferencia a
Power BI de otras soluciones de BI. Para dominarlo debemos:
Conocer 3 objetos:
COLUMNAS MEDIDAS TABLAS
Conocer 3 conceptos:
CONTEXTO DE FILA CONTEXTO DE FILTRO TRANSICIÓN DE CONTEXTO
TODAS las funciones de DAX utilizan de alguna manera uno o más de estos conceptos / objetos.
Objetos de Lenguaje DAX
COLUMNAS MEDIDAS TABLAS
Pueden provenir del mismo modelo (columnas originales) o Siempre las creamos (son calculadas) y retornan una Pueden provenir del mismo modelo, aunque también las
pueden ser columnas calculadas (creadas con DAX): magnitud. podemos crear con DAX, de forma física o virtual.
Columna Calculada
• Son columnas creadas con el lenguaje DAX (no se cargan desde Power Query).
• Cuando creas una columna calculada, modificas físicamente el modelo de datos.
• Siempre se ejecutan fila a fila (contexto de fila).
• Para hacer referencia a una columna calculada, usamos la siguiente notación:
• Las comillas pueden ser omitidas si el nombre de la tabla no contiene espacios.
• Es posible omitir el nombre de la tabla (no recomendable)
Medidas
• Son resúmenes asociados a una columna, conjunto de columnas o tablas.
• Para hacer referencia a una medida, usamos la siguiente notación:
• Por convención no es necesario asociarlo a una tabla.
• No se ejecutan fila a fila (no consideran contexto de fila).
• Para su cálculo, se consideran los filtros asociados al informe (contexto de filtro).
Medidas vs Columnas Calculadas en DAX
COLUMNAS CALCULADAS MEDIDAS
• Se calculan basados en la • Se calculan basados en la
información de cada fila de una tabla información de los filtros que lo
(contexto de fila). rodean (contexto de filtro).
• Insertan valores estáticos a cada fila • Por sí mismas no crear nueva data en
de una tabla y lo incorpora al modelo las tablas (no incrementan el tamaño
(incrementa el reporte). del reporte).
• Se recalculan cada vez que • Se recalculan con cualquier cambio
actualizamos las consultas. en los filtros asociados al modelo.
• Se usan como filas, columna, ejes o • Se usan prácticamente siempre en los
leyendas de las visualizaciones. “valores” de una visualización.
Los 3 pilares de DAX
Todas las expresiones de DAX se calculan tomando en cuenta al menos uno de los siguientes conceptos:
CONTEXTO CONTEXTO TRANSICIÓN
DE FILA DE FILTRO DE CONTEXTO
Capacidad de las columnas Capacidad de toda expresión de DAX Capacidad exclusiva de la función
calculadas y ciertas funciones de (excepto columnas calculadas) de usar CALCULATE (y CALCULATETABLE) de
iterar una tabla y “tomar una vista filtrada del modelo de datos, poder transformar un contexto de
conciencia” de los valores de cada el cual se modifica mediante los fila en un contexto de filtro durante
fila durante el proceso de cálculo. diferentes elementos de nuestro el calculo de una expresión.
reporte.
Otros conceptos: Orden de Evaluación, Linaje de Datos, Tabla Expandida.
Introducción a Funciones Iteradores: SUMX
Agregación a aplicar a las TABLA en la cual se va EXPRESION a ser
filas calculadas. Por ejemplo: a evaluar la evaluada en cada fila
EXPRESION fila a fila de la tabla brindada.
(bajo un contexto de
fila).
Esta función básicamente agrega de forma temporal una columna a la tabla, calculando el valor de cada fila
(basado en la expresión) y finalmente aplicando la agregación a esa nueva columna.
Operadores de DAX