1. DATA ANALYTICS POWER BI
NIVEL BÁSICO
Capítulo 3: Modelamiento e Inteligencia a los datos
(básico)
2. OBJETIVOS
• Identificar o crear relaciones.
• Distinguir las bases de las expresiones DAX.
• Crear columnas y medidas calculadas.
3. AGENDA
1. Introducción al modelo de datos.
2. La cinta de opciones de modelo de datos.
3. Importar datos.
4. Relaciones entre tablas.
5. Introducción a expresiones DAX.
6. Contexto de fila.
7. Contexto de filtro.
8. Funciones DAX básicas.
9. Ordenar campos con otra columna.
10. Crear Jerarquías.
4. 1. INTRODUCCIÓN AL MODELO DE DATOS
Pestañas de vista de Datos
Panel de
Campos
Datos del Modelo
5. Pestaña de vista de Modelo
Panel de Campos
Panel de
Propiedades
Relaciones del modelo
1. INTRODUCCIÓN AL MODELO DE DATOS
6. 2. LA CINTA DE OPCIONES DE MODELO DE
DATOS
• La opción de Datos.
Estructura
Permite asignar
nombre a la tabla
Calendarios
Esta opción permite asignar
como tabla del tiempo a
una columna de tipo Date
Formato
Permite asignar el Formato a las
columnas, definir decimales,
separadores de miles y moneda
Propiedades
Este grupo permite asignar la
propiedad de resumir a los
valores numéricos y definir una
categoría a los datos.
Estructura
Permite asignar tipo de
datos y nombre a una
columna
Relaciones
Permite
administrar las
relaciones entre las
tablas
Cálculos
Este grupo le permite crear fácilmente
algunas medidas básicas y crear nuevas
columnas
Ordenar
Permite ordenar una
columna por otra
Relaciones
Permite
administrar las
relaciones entre
las tablas
Cálculos
Permite crear
mediante cálculos
nuevas columnas
7. 2. LA CINTA DE OPCIONES DE MODELO DE
DATOS
• La opción de Modelo
Portapapeles
Permite copiar, pegar
y cortar datos
Datos
Este grupo permite conectarse a diferentes
orígenes de datos. También permite crear
tablas de forma manual mediante
especificar datos
Consultas
Este grupo permite
transformar los datos desde
Editor de Power Query y
actualizar los mismos.
Relaciones
Permite
administrar las
relaciones entre las
tablas
8. 3. IMPORTAR DATOS
• Especificar datos:
− Permite crear una tabla y poblarla de forma manual e incorporarla al modelo de datos, a diferencia de
una fuente de datos.
− Inclusive se puede crear una tabla usando los controles Copiar y Pegar datos.
− Usado para crear tabla de fechas, para tener escala de tiempo completas, feriados o fechas especiales
a considerar.
− También usado para datos puntuales como valores objetivos de KPI.
9. 3. IMPORTAR DATOS
• Crear un modelo de datos.
− El modelo de Power BI Desktop dispone de una diversidad de fuentes de orígenes de datos.
10. 3. IMPORTAR DATOS
• Desde Excel:
− Importar datos de Excel.
− Obtener Datos / Libro de Excel.
12. 3. IMPORTAR DATOS
• Desde base de datos:
− De existir relaciones entre las tablas de un modelo relacional, están son heredadas a los
modelos de Power BI Desktop.
− Las conexiones de base de datos requieren credenciales con excepción de la BD Access.
13. EJERCICIO Nº 1: CREAR UN MODELO DE
DATOS
Utilizar Power BI Desktop para preparar un modelo de datos para
análisis.
Al finalizar el laboratorio, el alumno logrará:
• Obtener información de una base de datos Access, Excel y CSV.
• Relacionar las fuentes de datos para crear un modelo.
14. 4. RELACIONES ENTRE TABLAS
• En los modelos de datos de Power BI, una relación es una conexión entre dos
tablas de datos.
• La mayoría de las relaciones entre las tablas de un único origen de datos
relacional se detectarán automáticamente y se crearán en el modelo.
• Si el modelo contiene datos de varios orígenes (Excel, archivos texto, Tablas de
BD, Access, entre otros) se deberán crear las relaciones manualmente.
– A. Ícono de vista de relaciones.
– B. Relación: puede situar el
cursor sobre una relación para
ver las columnas usadas.
A
B
15. 4. RELACIONES ENTRE TABLAS
• ¿Por qué crear relaciones entre tablas?
– Para realizar un análisis significativo, los
orígenes de datos tienen que tener
relaciones entre ellos.
– Las relaciones se habilitan para:
Filtrar los datos de una tabla por las columnas
de las tablas relacionadas.
Integrar las columnas de varias tablas en una
tabla dinámica o un gráfico dinámico.
Buscar valores de tablas relacionadas
utilizando fórmulas de expresiones de análisis
de datos (DAX).
16. EJERCICIO Nº 2: CREAR RELACIONES
ENTRE TABLAS
Utilizar Power BI Desktop para preparar un modelo de datos para
análisis.
Al finalizar el laboratorio, el alumno logrará:
• Adicionar otras fuentes de datos al modelo.
• Relacionar las tablas de diferentes fuentes de datos.
17. 5. INTRODUCCIÓN A EXPRESIONES DAX
• Data Analysis eXpression (DAX).
• DAX, es un lenguaje de funciones que permite recabar en los confines de los
datos para hacer análisis. Por lo tanto, supone un lenguaje poderoso para
usuarios de Excel que pueden hacer inteligencia de negocios y enfocar la toma
de decisiones.
• El corazón del funcionamiento del lenguaje DAX se basa en tres “sabores” de
tipos de cálculos:
− Medidas calculada
− Columnas calculadas
− Tablas calculadas
18. 5. INTRODUCCIÓN A EXPRESIONES DAX
A. Nombre de la medida Total Sales
B. El operador signo igual (=) indica
principio de la formula. Devolverá
un resultado.
C. Función de agregación DAX SUM,
suma todos los números en la
columna Sales[sales amount].
D. Los paréntesis () devuelven una
expresión que contiene uno o
más argumentos.
E. La tabla de referencia Sales.
F. La columna referenciada [sales
amount].
19. 5. INTRODUCCIÓN A EXPRESIONES DAX
• Data Analysis eXpression (DAX)
Lista de funciones disponible DAX:
− Funciones de fecha y hora (DAX)
− Funciones matemáticas y trigonométricas (DAX)
− Funciones de filtro (DAX)
− Funciones de información (DAX)
− Funciones lógicas (DAX)
− Funciones estadísticas (DAX)
− Funciones de texto (DAX)
https://www.interactivechaos.com/recursos-educativos/funciones-dax
21. 6. CONTEXTO DE FILA
Se evalúan fila a fila toda la tabla. En Power BI Desktop el concepto de “Campo” que
se maneja en Excel desaparece. Es decir, el cálculo siempre se aplicará a todas las
filas de la tabla.
22. 6. CONTEXTO DE FILA
- Columnas calculadas –
• Las columnas calculadas permiten agregar nuevos datos al modelo.
• Cuando una columna contiene una fórmula DAX, el valor se calcula para cada fila.
• Se puede cambiar el nombre de una columna calculada por un nombre personalizado.
• Evaluados en el contexto de fila.
Columna = InternetSales[SalesAmount]-InternetSales[TotalProductCost]
23. 7. CONTEXTO DE FILTRO
• Es el conjunto de valores permitido en cada columna, basado en las restricciones de filtro que se
aplicaron a la fila o que se han definido por expresiones de filtro dentro de la fórmula. Es decir, el
cálculo podría aplicarse a todas las filas de la tabla o a un conjunto de filas.
% Ganancia = DIVIDE(Venta[Ganancia],Venta[Venta Total])
Costo Total = SUM(Venta[Costo])
24. 7. CONTEXTO DE FILTRO
- Medidas calculadas -
• Una medida es un cálculo numérico usado en el análisis de datos.
• Las medidas se usan en algunos de los análisis de datos, tal como: sumas, promedios, valores
mínimos o máximos, recuentos o cálculos más avanzados creados mediante una fórmula DAX.
• Las medidas se crean y se utilizan en la vista Informes o la vista Datos.
• Las medidas que se creen aparecerán en la lista de campos con un ícono de calculadora.
• Evaluados en el contexto de fitro Filas/Columnas/Filtros/Slicers.
Internet Total Venta Size L = CALCULATE(Medidas[Internet Total Sales Amount],FILTER('Product','Product'[Size]="L"))
25. 8. FUNCIONES DAX BÁSICAS
• Funciones de fecha y hora
ꟷ YEAR
ꟷ MONTH
ꟷ DAY
ꟷ WEEKDAY
ꟷ TODAY()
ꟷ DATEDIFF
• Función matemáticas y trigonométricas
ꟷ SUM
ꟷ SUMX
ꟷ DIVIDE
• Funciones de filtro
ꟷ ALL
ꟷ ALLEXCEP
ꟷ CALCULATE / FILTER
ꟷ RELATED
• Función lógica
ꟷ IF
ꟷ SWITCH
• Función texto
ꟷ FORMAT
ꟷ CONCATENATE
26. 8. FUNCIONES DAX BÁSICAS
• Función fecha y hora
– Función YEAR: devuelve el año de un campo fecha.
– Función MONTH: devuelve el mes como un número de un campo fecha.
– Función DAY: devuelve el número del día de un campo fecha.
– Función WEEKDAY : devuelve el número del día de la semana.
– Función aplicada como Contexto de Fila (columna Calculada).
– Sintaxis:
= YEAR (Date)
= MONTH(Date)
= DAY(Date)
= WEEKDAY(Date)
Ejemplo:
= YEAR (‘OrderDate'[FullDateAlternateKey])
27. 8. FUNCIONES DAX BÁSICAS
• Función fecha y hora
− Retorna la fecha actual. Útil para mostrar la fecha actual, sin importar en qué momento se
abre el archivo. También, útil para calcular intervalos.
− Función aplicada como Contexto de Fila (Columna Calculada).
− Sintaxis:
= TODAY ()
Ejemplo:
TiempoTranscurridoPriCompra= YEAR (TODAY()) – YEAR(Customer[DateFirstPurchase])
28. 8. FUNCIONES DAX BÁSICAS
• Función fecha y hora
– Devuelve el número de unidades entre dos fechas de entrada.
– Función aplicada como Contexto de Fila (Columna Calculada).
– Sintaxis:
= DATEDIFF (<start_date>;<end_date>;<interval>)
Ejemplo:
Años desde la última venta
= DATEDIFF(InternetSales[OrderDate];TODAY();YEAR)
29. 8. FUNCIONES DAX BÁSICAS
• Función matemáticas y trigonométricas
– Suma todos los números de una columna.
– Función aplicada como Contexto de Fila (Medida calculada).
– Sintaxis:
= SUM (<columns>)
Ejemplo:
Internet Total Sales Amount = SUM (InternetSales[SalesAmount])
30. 8. FUNCIONES DAX BÁSICAS
• Función matemáticas y trigonométricas
– Devuelve la suma de una expresión evaluada por cada fila de una tabla.
– Función aplicada como Contexto de Filtro (medida Calculada).
– Sintaxis:
= SUMX(<table/filtro>,<expression>)
Ejemplo:
Internet Total Quantity Red Color
= SUMX(FILTER(InternetSales, RELATED('Product'[Color]) = "Red"), InternetSales[OrderQuantity])
31. 8. FUNCIONES DAX BÁSICAS
• Función matemáticas y trigonométricas
– Se diseñó para manejar automáticamente la división por cero casos.
– Si no se pasa un resultado alternativo y el denominador es cero o EN BLANCO, la función
devuelve EN BLANCO. Cuando se pasa un resultado alternativo, se devuelve en lugar de EN
BLANCO.
– Sintaxis:
= DIVIDE (<numerator>, <denominator> [,<alternateresult>])
Ejemplo:
• Internet Distribución Porcentual de la Venta =
• DIVIDE (Medidas[Internet Total Sales Amount,
• SUMX(ALL(InternetSales);InternetSales[SalesAmount];0)
32. 8. FUNCIONES DAX BÁSICAS
• Función filtro
– Devuelve todas las filas de una tabla o todos los valores de una columna; se omiten los filtros
que se puedan haber aplicado. Esta función resulta útil para borrar filtros y crear cálculos en
todas las filas de una tabla.
– Contexto de filtro (Medida Calculada).
– Sintaxis:
ALL( {<table> | <column>[, <column>[, <column>[,…]]]} )
Table: la tabla de la que desea borrar filtros.
Column: la columna de la que desea borrar filtros.
Ejemplo:
Medidas[Internet Monto Total Venta Anual
: = SUM(InternetSales[SalesAmount]) / SUMX(ALL(InternetSales), InternetSales[SalesAmount])
33. 8. FUNCIONES DAX BÁSICAS
• Función filtro
– Quita todos los filtros de contexto de la tabla, excepto los filtros que se han aplicado a las
columnas especificadas.
– Contexto de filtro (medida calculada).
– Sintaxis:
ALLEXCEPT (<table>,<Column>, [,<column>[,…..]])
Table: la tabla de la que se quitan todos los filtros de contexto, excepto los filtros de la columnas que se
especifican en los argumentos subsiguientes.
Column: la columna en la que se deben mantener los filtros de contexto.
Ejemplo:
Internet Total Venta por Año (ALLEXCEPT)
=CALCULATE(SUM(InternetSales[SalesAmount),ALLEXCEPT(OrderDate, OrderDate[año]))
34. 8. FUNCIONES DAX BÁSICAS
• Función filtro
− Evalúa una expresión en un contexto que esta modificado por los filtros especificados.
− Sintaxis:
=CALCULATE <expression,<filter1>,<filter2>..)
Expresión: suma, promedio, máximo, mínimo, entre otros.
Filtro: criterio para filtrar.
Ejemplo:
Internet Total Venta Size L =CALCULATE(SUM(InternetSales[SalesAmount]);
FILTER(Product;Product[Size] ="L"))
35. 8. FUNCIONES DAX BÁSICAS
• Función filtro
− Obtiene valores de una tabla relacionada. Hay que añadir las relaciones.
− Funciona cuando se navega desde el lado de “muchos” valores hacia el lado de “un valor” en
una relación (uno a muchos).
− Retorna blanco para valores faltantes.
− Puede hacer múltiples “saltos” (mas de una relación / copo de nieve).
− Contexto de fila (columna calculada)
− Sintaxis:
= RELATED(<column>)
Ejemplo:
Product Subcategory Name = RELATED(ProductSubCategory[EnglishProductSubcategoryName])
36. 8. FUNCIONES DAX BÁSICAS
• Funciones de texto
− Operador Ampersand (&): útil para trabajar texto y, especialmente, cuando se quiere trabajar
rápido.
= Customer[LastName] & " , " & Customer[FirstName].
− Función CONCATENATE (): une dos textos válidos en una cadena de texto. Se puede
concatenar también números y booleanos. Acepta solo dos argumentos, pero se puede anidar
para más de dos funciones concatenate ().
= CONCATENATE(Customer[LastName] , CONCATENATE(" , ",Customer[FirstName]))
37. 8. FUNCIONES DAX BÁSICAS
• Funciones de texto:
– Convierte un valor en texto, según el formato especificado.
– Sintaxis:
= FORMAT(<value>; <format_string>)
Ejemplo:
= FORMAT(OrderDate[FullDateAlternateKey];”mmm-yy”)
38. 8. FUNCIONES DAX BÁSICAS
• Funciones lógicas:
− Verifica una condición y retorna el primer argumento si es verdadero y segundo argumento si
es falso. Si el valor referenciado es una columna, IF () retorna el valor de la fila actual.
− Si los valores retornados en verdadero o falso son de diferentes tipos de datos, IF() convertirá
implícitamente los tipos de datos.
− Sintaxis:
IF (prueba lógica, valor si verdadero, [valor si falso])
Ejemplo:
=IF(Customer[TiempoTranscurridoPriCompra]>=8,“Oro",
IF(Customer[TiempoTranscurridoPriCompra]>=6,“Plata",
IF(Customer[TiempoTranscurridoPriCompra]>=5,"Bronze", “Nuevo")))
39. 8. FUNCIONES DAX BÁSICAS
• Funciones lógicas:
− Evalúa una expresión con lista de valores y devuelve una de las varias expresiones de
resultados posibles.
− Sintaxis:
=SWITCH (<expression>,<value>,<result>[,<value>,<result>]..[,<else>])
Ejemplo:
=SWITCH ('Geography - Customer'[SpanishCountryRegionName]
Estados Unidos";"EU";"Australia";"AU";"Canada";"CA";"Alemania";"AL";"Francia"; "FR";"Reino
Unido";"RU";"Ninguno")
40. EJERCICIO Nº 3: APLICAR FUNCIONES
DAX BÁSICAS
Utilizar Power BI Desktop para preparar un modelo de datos para
análisis.
Al finalizar el laboratorio, el alumno logrará:
• Adicionar funciones DAX básicas a un modelo de datos:
− Funciones de fecha y hora (YEAR, MONTH, DAY, DATEIFF, TODAY).
− Funciones matemáticas (SUM, SUMX, DIVIDE).
− Funciones de filtro (ALL, ALLEXCEPT, RELATED, CALCULATE).
− Funciones de texto (CONCATENATE, FORMAT).
− Funciones lógicas (IF, SWITCH).
41. 9. ORDENAR CAMPOS CON OTRA
COLUMNA
• Una necesidad recurrente es la de querer ordenar ciertos datos en un orden
particular, diferente al orden alfabético o al código.
• Se puede utilizar una columna particular para ordenar los datos de una columna.
• Esto se logra con la opción Ordenar por columna:
Sin ordenamiento
Con ordenamiento
42. 10. CREAR JERARQUÍAS
• Una jerarquía es la asociación de datos en niveles.
• Establece los niveles de agrupación y navegación de los datos.
• Se muestra como un solo conjunto en la lista de campos.
• La jerarquía se crea en la vista de modelo de datos y se construye automáticamente en base a la
cardinalidad de los datos.
• Permite navegar los datos en los diferentes niveles de la jerarquía.
43. EJERCICIO Nº 4: CREAR JERARQUÍAS Y
ORDEN DE DATOS
Utilizar Power BI Desktop para preparar un modelo de datos para
análisis.
Al finalizar el laboratorio, el alumno logrará:
• Ordenar campos de una tabla por otra.
• Crear y visualizar jerarquías.
44. TAREA Nº 3: PROFUNDIZAR SOBRE LAS
TECNOLOGÍAS Y CONCEPTOS DE
MODELAMIENTO POWER BI
Al finalizar la tarea, el alumno logrará:
• Identificar las diferentes tecnologías utilizadas por Power BI.
• Profundizar el concepto de KPI e identificar KPIs relevantes para sus
labores profesionales.
45. LECTURAS ADICIONALES
Se sugiere revisar los siguientes enlaces para profundizar los conceptos
tratados en el presente capítulo:
• Aprenda sobre aspectos básicos de DAX en Power BI Desktop
https://learn.microsoft.com/es-es/power-bi/transform-model/desktop-
quickstart-learn-dax-basics
• Especificación de categorías de datos en Power BI Desktop
https://learn.microsoft.com/es-es/power-bi/transform-model/desktop-data-
categorization
46. RESUMEN
En este capítulo, usted aprendió:
• Con las funcionalidades de modelado de Power BI se puede conectar a varios
orígenes de datos y combinarlos, de tal forma que se cree un modelo de datos
único que se adapte a las necesidades del negocio.
• La creación de columnas calculadas y medidas calculadas representa una forma
sencilla de enriquecer y mejorar los datos.
• Una de las grandes virtudes de DAX, es que tiene una enorme cantidad de
funciones útiles, especialmente relativas a cálculos temporales.