DATA ANALYSIS EXPRESSIONS (DAX)
Av. Arequipa 333 - Cercado - Lima
(01) 4686807 | 960607555
informes@[Link] | [Link]
Introducción a DAX
• ¿Qué es DAX? ¿DAX?
• Siglas de Data Analysis Expression.
• DAX es el lenguaje de expresiones analíticas de Power BI.
• Creado para manipular un modelo de datos tabular.
• Es una extensión del lenguaje de fórmulas de Excel, de ahí que podamos encontrarlos muy
parecidos.
• DAX es una colección de
• Funciones, Operadores y Constantes que pueden ser utilizados en fórmulas o expresiones
para calcular y retornar uno o más valores.
Fórmula Excel Expresión DAX
=sum(A5:A10)/10 =sum([ventas])/10
Las referencias siempre utilizan celdas Las referencias siempre apuntan a
o rangos de celdas. tablas o columnas.
Av. Arequipa 333 - Cercado - Lima
(01) 4686807 | 960607555
informes@[Link] | [Link]
Introducción a DAX
• ¿Por qué DAX?
• Pensado para alcanzar a mayor cantidad de usuarios
• Menor curva de aprendizaje para los analistas de datos
• Más fácil de aprender que lenguajes técnicos tradicionales que manipulan un
modelo de datos analítico
• Aprovecha el conocimiento existente de trabajar con fórmulas Excel
Por ejemplo: = IF (Ventas > 0, “GANÓ”, “PERDIÓ”)
• Tiene más capacidades que las formulas de Excel.
• Relaciones de Navegación
• Cálculo dinámico de dimensiones
• Manejo de dimensiones de tiempo (Time Intelligence).
Av. Arequipa 333 - Cercado - Lima
(01) 4686807 | 960607555
informes@[Link] | [Link]
Introducción a DAX
• Consideraciones relevantes:
• No hay concepto de celda ni de fila
• Diferente sistema de tipos de datos que Excel:
• Numéricos: Whole Number, Decimal, Currency, Date/DateTime,
TRUE/FALSE
• Otros tipos: Text, Binary, etc.
Av. Arequipa 333 - Cercado - Lima
(01) 4686807 | 960607555
informes@[Link] | [Link]
Introducción a DAX
Podemos usar DAX, cuando nos encontremos un escenario
en el cual necesitemos crear una medida mediante cálculos
o cuando necesitemos crear una columna adicional que
contenga algún tipo de información que consideremos ¿Cuándo usar
importante, en el último caso el concepto es el mismo que el DAX?
de “columnas calculadas” en Excel.
Dos diferencias entre medidas y columnas
calculadas con las siguientes:
Columnas Calculadas Medidas
Permite calcular campos y Permite realizar calculos a nivel
ver los resultados a nivel de tablas columnas.
de filas.
Tiene la misma estructura Tiene la estructura de las
que las fórmulas Excel. fórmulas embebidas en
Power Pivot.
Av. Arequipa 333 - Cercado - Lima
(01) 4686807 | 960607555
informes@[Link] | [Link]
Funciones básicas en DAX
Funciones para manipulación de texto
Formating Concatenating Casing Trimming Splitting Searching Replacing
FORMAT CONCATENATE LOWER LEFT MID SEARCH REPLACE
UPPER RIGHT FIND SUBSTITUE
TRIM
Funciones condicionales y lógicas
Testing (T/F) Logical
ISBLANK AND
ISERROR IF
ISLOGICAL IFERROR
ISNONTEXT NOT
ISNUMBER OR Documentación DAX de referencia:
ISTEXT [Link]
Av. Arequipa 333 - Cercado - Lima
(01) 4686807 | 960607555
informes@[Link] | [Link]
Sintaxis DAX para referenciar columnas
• El formato general:
• ‘NombreDeTabla’[NombreDeColumna]
• Por ejemplo: ‘Producto’[Precio]
• Comilla simple puede ser omitida:
• Si NombreDeTabla no contiene espacios
• Omitir comilla simple, si no usa espacios
• NombreDeTabla puede ser omitido:
• La tabla actual contiene el NombreDeColumna
• Evítelo, hace difícil de entender el modelo de datos
• Brackets no pueden ser omitidos
Av. Arequipa 333 - Cercado - Lima
(01) 4686807 | 960607555
informes@[Link] | [Link]
¿Qué podemos crear con DAX ?
• Columnas Calculadas
• Crea nuevas columnas en el modelo de datos
• Método para conectar tablas con múltiples columnas clave
• Tablas Calculadas
• Crea una nueva tabla derivada de otra tabla
• Puede ser utilizada para crear una tabla de tiempo (calendario) cuando aún no
se encuentra creada
• Medidas Calculadas
• Crea cálculos agregados y dinámicos
• Soporta la inteligencia de tiempo (Time Intelligence: YTD, Last Year, etc.)
Av. Arequipa 333 - Cercado - Lima
(01) 4686807 | 960607555
informes@[Link] | [Link]
Columnas Calculadas
• Creando Columnas Calculadas
• Creadas utilizando expresiones DAX
• Se comportan igual que las columnas creadas por la carga de datos
• Los resultados se ven inmediatamente al ser definidas
• Los resultados se almacenan en disco (ocupan espacio)
• Referencian nombres de columnas
• Siempre evalúan los valores de la fila actual (current row conext)
• Current Row Context
FacturaID Producto Cantidad Valor Total Venta
10001 Samsumg S9+ 10 3000 30000
10001 Protector S9+ 20 100 2000
• [Total Venta] = [Cantidad]*[Valor]
• Igual ocurre en una tabla Excel
Av. Arequipa 333 - Cercado - Lima
(01) 4686807 | 960607555
informes@[Link] | [Link]
Tablas Calculadas
• Crea una nueva tabla derivada de otra tabla
• Puede ser utilizada para crear una tabla de tiempo (calendario) cuando
aún no se encuentra creada
• Pruébalo tu mismo:
• Click en Ribbon Modeling New Table
• En la barra de fórmula escriba:
• Calendario = CALENDAR(“1/1/2017”, “31/12/2017”)
Av. Arequipa 333 - Cercado - Lima
(01) 4686807 | 960607555
informes@[Link] | [Link]
Medidas Calculadas
• Creando Medidas Calculadas
• Creadas utilizando expresiones DAX
• Los resultados se ven en tiempo de ejecución en un reporte
• Los resultados no se almacenan en disco (no ocupan espacio)
• No trabajan fila por fila
• Sino, trabajan a nivel de tablas (múltiples filas de una columna) y agregaciones
• No existe el concepto “fila actual” (current row context)
Av. Arequipa 333 - Cercado - Lima
(01) 4686807 | 960607555
informes@[Link] | [Link]
MedidasCalculadas
Medidas Calculadas
C
Formula = [SalesAmount] – [TotalCost] Formula = SUM(Fact[SalesAmount]) D
A B C D A B E F
A. El símbolo igual, indica el inicio de una
A. El nombre de la columna
fórmula.
calculada.
B. El nombre de lo primera columna que
B. El símbolo igual, indica el inicio del
deseamos operar.
cálculo.
C. El operados matemático.
C. Función de agregación.
D. El nombre de la segunda
D. Parámetros de la función de agregación.
columna que deseamos operar. E. La tabla referenciada.
F. La columna referenciada,
perteneciente a la tabla.
Av. Arequipa 333 - Cercado - Lima
(01) 4686807 | 960607555
informes@[Link] | [Link]
Medidas Calculadas
• Medidas implícitas
• Agregaciones por defecto que ocurren en columnas numéricas. Por ejemplo: al arrastrar una
columna numérica de una tabla a una visualización, una medida implícita se crea de forma automática.
• Medidas explícitas
• Una medida definida por usuario creada escribiendo una fórmula en el editor
• RECOMENDACIÓN: Evite medidas implícitas
• Las medidas explícitas pueden ser referenciadas por otras medidas o columnas
• Las medidas explícitas encapsulan código, haciendo más fácil la implementación de cambios
Av. Arequipa 333 - Cercado - Lima
(01) 4686807 | 960607555
informes@[Link] | [Link]
Columnas Calculadas vs Medidas Calculadas
• MargenBruto = MontoVentas – CostoProducto
• Columna Calculada
• Pero también podría ser una Medida Calculada
• [MargenBruto %] = MargenBruto / MontoVentas
• No debe ser calculado fila por fila, sino a nivel de agregaciones
• Necesita ser calculado con una Medida Calculada - ¿Por qué?
• Una medida calculada es requerida:
• SUMATORIA (MargenBruto / MontoVentas)
• ES DIFERENTE QUE
• SUMATORIA (MargenBruto) / SUMATORIA (MontoVentas)
Av. Arequipa 333 - Cercado - Lima
(01) 4686807 | 960607555
informes@[Link] | [Link]
Funciones DAX básicas
• Conjunto de funciones que operan sobre tablas (y retornan tablas como resultado):
• FILTER ( <TABLA>, <EXPRESIÓN> ) Añade una nueva condición al filtro existente
• ALL ( <TABLA_O_COLUMNA> ) Remueve todas las condiciones existentes sobre una tabla
o columna
• DISTINCT ( <COLUMNA> ) Retorna una lista de valores distintos en una columna, no
considera BLANK
• El resultado de estas funciones es usado como input de otras funciones
• Estas funciones pueden combinarse para formar expresiones más complejas y potentes
Av. Arequipa 333 - Cercado - Lima
(01) 4686807 | 960607555
informes@[Link] | [Link]
EJERCICIOS
Crear medidas y columnas calculadas
Crear una tabla de flechas
Crear una medida para Inteligencia de Tiempo
Crear KPI´s
Av. Arequipa 333 - Cercado - Lima
(01) 4686807 | 960607555
informes@[Link] | [Link]
01 CREAR UNA COLUMNA CALCULADA Y UNA MEDIDA EN POWER BI
Crear medidas y columnas
calculadas
Al finalizar el ejercicio
seremos capaces de:
• Crear una columna calculada
en el entorno de Power BI
Desktop.
• Crear 2 medidas que
muestren el total de Ventas
usando la función SUM y La
cantidad de Clientes con la
función DISTINCTCOUNT.
Av. Arequipa 333 - Cercado - Lima
(01) 4686807 | 960607555
informes@[Link] | [Link]
INTELIGENCIA DE TIEMPO
Av. Arequipa 333 - Cercado - Lima
(01) 4686807 | 960607555
informes@[Link] | [Link]
INTELIGENCIA DE TIEMPO
Inteligencia de Tiempo
Por Inteligencia de Tiempo, hacemos referencia a las El concepto de “Tiempo” está presente en todas
técnicas, herramientas y metodologías que nos las soluciones de Inteligencia de Negocios. Sirve
permiten analizar nuestras medidas minuciosamente como punto de partida para explotar la
a través del tiempo. información.
Año Desde analizar la evolución de nuestras medidas
en tiempo, monitorear el crecimiento de manera
Semestre detallada o realizar proyecciones, todo esto es
posible aplicando Inteligencia de Tiempo.
Trimestre
Mes
Semana
Día
INTELIGENCIA DE TIEMPO
Inteligencia de Tiempo
Para poder trabajar con el tiempo en Power BI, necesitamos considerar lo siguiente:
Requerimientos KPI´S de la Definir Funciones INTELIGENCIA DE
Tabla de Tiempos
de Usuarios Organización DAX TIEMPO
Av. Arequipa 333 - Cercado - Lima
(01) 4686807 | 960607555
informes@[Link] | [Link]
02 CREAR UNA TABLA DE FECHAS
Crear una tabla de fechas
Al finalizar el ejercicio
seremos capaces de:
• Entender la necesidad de
crear una tabla de Fechas.
• Crear una tabla de fechas en
Power BI y relacionarla a
nuestro modelo.
Av. Arequipa 333 - Cercado - Lima
(01) 4686807 | 960607555
informes@[Link] | [Link]
03 CREAR UNA MEDIDA PARA INTELIGENCIA DE TIEMPO
Crear una medida para
Inteligencia de Tiempo
Al finalizar el ejercicio
seremos capaces de:
• Crear una medida con una
función DAX de tiempo, para
obtener el crecimiento de las
ventas mes a mes.
• Entender la estructura de las
funciones DAX de tiempo.
Av. Arequipa 333 - Cercado - Lima
(01) 4686807 | 960607555
informes@[Link] | [Link]
KEY PERFORMANCE INDICATORS
CREAR UN KPI
Key Performance Indicators KPI´s
El concepto de KPI esta relacionado a la planificación
y los objetivos que se deseen alcanzar en un periodo Al hablar de KPI, se hace referencia a
de tiempo, generalmente, anual. términos medibles y cuantificables con los
que se puede determinar numéricamente
una variable. Conocer el cumplimiento, o
KPI no, de los objetivos puestos en cada
temporada.
Alinear el
¿Qué quiero
plan de la
lograr?
empresa
Establecer
Objetivos Indicadores
clave
CREAR UNA KPI
KPI´s en Power BI
Power BI cuenta con un objeto visual que permite mostrar nuestros KPI´S
de manera efectiva.
Existen mas visualizaciones con las que podemos mostrar nuestros KPI’S
Además, podemos mostrar indicadores como totales, usando las Tarjetas
04 CREAR KPI´s
Crear KPI´s
• Utilizar funciones DAX para
generar un KPI.
Al finalizar el ejercicio
seremos capaces de:
• Visualizar el KPI usando la
visualización KPI
• Visualizar el KPI usando la
visualización Gauge
• Visualizar el KPI usando una
tarjeta.
Av. Arequipa 333 - Cercado - Lima
(01) 4686807 | 960607555
informes@[Link] | [Link]
¡GRACIAS!
Av. Arequipa 333 - Cercado - Lima
(01) 4686807 | 960607555
informes@[Link] | [Link]