CONTEXTO DE FILTRO. Domina el concepto teórico MAS IMPORTANTE de DAX.

CONTEXTO DE FILTRO. Domina el concepto teórico MAS IMPORTANTE de DAX.

¿Qué es el contexto de filtro?

Introducción al contexto de filtro

  • Julio presenta el tema del contexto de filtro, que es el segundo pilar teórico del lenguaje DAX. Se enfatiza la importancia de ver videos anteriores para una mejor comprensión.
  • Se menciona que se abordará la definición formal del contexto de filtro y su aplicación en medidas y tablas, así como funciones nuevas como VALUES.
  • Se anticipa que se explorará cómo los contextos de fila y filtro interactúan, además de introducir la función CALCULATE, fundamental en DAX.

Definición del contexto de filtro

  • El contexto de filtro se define como el conjunto de filtros que actúan sobre un modelo de datos durante la evaluación de una expresión DAX.
  • Un filtro restringe los registros en una tabla mediante valores específicos seleccionados en columnas; esto puede expresarse tanto extensivamente (nombre columna - valor) como en formato tabla.

Expresión y existencia del contexto de filtro

  • Es crucial entender que todo filtro debe expresarse como una tabla. Si no hay filtros aplicados, existe un "contexto vacío".
  • La pregunta clave es qué objetos son afectados por el contexto: las medidas y las tablas son los principales elementos impactados.

Creación del contexto de filtro

  • Solo hay dos funciones DAX que permiten crear un contexto: CALCULATE para medidas y CALCULATETABLE para tablas.
  • Aclaración sobre la función FILTER: aunque filtra tablas, no genera un nuevo contexto; lo hace a través de iteraciones.

Ejemplo práctico con Power BI

Aplicación práctica del concepto

  • En Power BI, se muestra cómo aplicar el concepto usando una matriz con la medida "monto de ventas", destacando que sin filtros, el total es 25.600.
  • Al agregar categorías a filas en la matriz, se generan diferentes valores más pequeños debido a las restricciones específicas impuestas por cada categoría.

Contexto específico dentro del reporte

  • Cada elemento calculado en el reporte tiene su propio contexto; por ejemplo, diferentes sumas para distintas categorías reflejan distintos contextos aplicados.

Análisis detallado del cálculo

Filtrado de Datos en Power BI

Contexto de Filtro y Aplicación

  • Se establece un contexto de filtro para la celda, utilizando género masculino y categoría "Games and Toys" como filtros provenientes de las columnas de la matriz.
  • Al filtrar por género masculino en la dimensión cliente, se obtienen todos los registros correspondientes. Luego, se filtran los productos que pertenecen a la categoría "Games", gracias a la relación entre las tablas.
  • El modelo filtrado incluye cinco clientes y cuatro productos. Este proceso ocurre independientemente de la fórmula que se aplicará posteriormente.

Aplicación de Fórmulas

  • La medida aplicada es una suma de los elementos en la columna "monto". El resultado obtenido es 440, destacando que el cálculo final depende del tipo de agregación utilizada.
  • Si se emplean otras funciones como MAX o MIN, el algoritmo permanece igual; solo cambia el valor resultante según la función elegida.

Funciones Avanzadas

  • Se introduce una función llamada COUNTROWS, que permite contar filas dentro del contexto filtrado. En este caso, retorna 4 para el contexto específico (masculino y games).
  • Al agregar esta medida a una matriz con el mismo contexto, se confirma que hay cuatro registros disponibles.

Contexto Adicional en Reportes

  • Se explica cómo diferentes visualizaciones pueden afectar el contexto del filtro. Por ejemplo, al hacer clic en un gráfico, se activan filtros adicionales como año o estado marital.
  • Un total de cinco filtros distintos conforman el contexto utilizado para calcular ciertos valores en los reportes.

Creación y Filtrado de Tablas

  • Se crea una tabla calculada fuera del nivel informe (a nivel modelo), lo cual significa que no está afectada por ningún filtro existente.
  • Aunque se puede aplicar un filtro mediante FILTER, esto no modifica el contexto general; simplemente evalúa fila por fila si cumple con ciertas condiciones.

Uso de Funciones Específicas

  • La función VALUES permite retornar valores únicos desde una columna específica. Esto ayuda a crear tablas con información relevante sin estar influenciadas por contextos externos.

Análisis de Contexto y Cálculo en Power BI

Introducción a la Fórmula y Contexto de Filtro

  • Se discute cómo el contexto de filtro afecta las medidas en Power BI, destacando que las tablas calculadas no se ven afectadas, mientras que las tablas virtuales sí.
  • Se presenta la fórmula count Rows para contar productos vendidos, utilizando la función count Rows sobre una tabla de valores.

Evaluación del Contexto de Filtro

  • Se explica que cada punto en un reporte se calcula independientemente bajo diferentes contextos. Se introduce un ejemplo para ilustrar este concepto.
  • Para calcular un valor específico (ejemplo: número 3), se deben seguir pasos claros: primero identificar el contexto de filtro (género masculino, categoría computadoras).

Aplicación del Modelo Filtrado

  • El modelo filtra dimensiones antes de aplicar la fórmula. Si solo se usara count Rows, el resultado sería 4 debido a cuatro filas en la tabla filtrada.
  • La fórmula utilizada crea una tabla virtual con valores distintos, resultando en tres valores únicos tras eliminar duplicados.

Comparación entre Funciones

  • Se analiza otro valor (10), donde el contexto de filtro es vacío, lo que significa que no hay restricciones aplicadas al cálculo.
  • La función values genera una tabla virtual con registros únicos; si fuera completa habría 21 registros, pero retorna solo los distintos.

Uso Avanzado de Funciones

  • Se menciona que combinar count Rows y values es similar a usar distinct count, pero esta combinación permite cálculos más complejos.
  • La función values es útil para crear indicadores complejos; se propone un nuevo indicador para contar registros con más de dos unidades vendidas.

Creación y Evaluación del Indicador

  • Se introduce la medida "número de registros mayores a dos unidades", utilizando funciones como filter.
  • Al evaluar el valor (2), se identifica el único filtro activo (género femenino). Esto permite filtrar adecuadamente el modelo antes de aplicar la fórmula.

Iteraciones y Resultados Finales

  • La función filter genera un contexto fila iterando sobre los datos filtrados.

¿Cómo se evalúan los contextos de filtro y fila en DAX?

Evaluación del contexto de filtro y fila

  • Se discute la importancia de evaluar primero el contexto de filtro antes del contexto de fila al trabajar con funciones en DAX.
  • Se menciona que, aunque no se tenga una columna específica (como "monto"), es posible utilizar funciones de iteración para calcular medidas sin necesidad de crear columnas calculadas.
  • Se explica cómo se evalúa una expresión en una matriz, destacando el proceso paso a paso para obtener un valor específico (7.995).
  • El concepto de filtro se aplica a las dimensiones y fluye hacia las tablas de hechos, lo que permite filtrar el modelo antes de aplicar la fórmula.
  • La función SUMX se utiliza bajo un contexto filtrado para realizar iteraciones y sumar valores específicos.

Aplicación práctica: Monto de ventas por continente

  • Se plantea un nuevo indicador: calcular el monto de ventas para clientes del continente asiático utilizando funciones adecuadas.
  • Se sugiere usar SUMX sobre una tabla filtrada donde la columna relacionada con el continente sea igual a Asia, aunque esta no es la forma más eficiente.
  • Se introduce la función CALCULATE, que permite modificar o alterar el contexto del filtro existente para simplificar cálculos complejos.
  • Al usar CALCULATE, se puede obtener el mismo valor deseado pero con una sintaxis más sencilla, eliminando dependencias innecesarias en iteraciones.
  • La medida original "monto de ventas" se compara con la nueva medida creada usando CALCULATE, mostrando diferencias significativas en los resultados.

Contexto adicional y su impacto

  • La función CALCULATE agrega un nuevo contexto al cálculo, permitiendo incorporar filtros adicionales como el continente asiático junto con otros existentes (género y categoría).
  • Se analiza cómo este nuevo contexto afecta los resultados finales al eliminar registros irrelevantes (por ejemplo, Estados Unidos).
  • El uso correcto del contexto adicional es crucial; ahora hay seis maneras diferentes de incorporar contextos en expresiones DAX.
  • Gracias a CALCULATE, se pueden realizar evaluaciones más precisas sobre las medidas deseadas dentro del modelo filtrado actualizado.

Transición de Contexto en DAX

Introducción a la Transición de Contexto

  • En esta semana se abordará el último tema teórico importante sobre DAX, que es la transición de contexto.
  • Se menciona que si los estudiantes han comprendido previamente el contexto de fila y el contexto de filtro, aprenderán este nuevo concepto con facilidad.
Video description

En el presente video veremos los temas más importantes relacionados al contexto de filtro en DAX, el cual es el concepto más importante que debes conocer, ya que siempre va a existir en nuestro reporte. Para aprovechar al máximo este video, es muy recomendable ver el video previo de contexto de fila. * Si tienes algun problema o consulta relacionada a Power BI, ya puedes acceder a consultas personalizadas en nuestro sitio web :) https://menquisbi.com/s/asesoria-personalizada * Ya está disponible nuestro primer curso de SQL :), puedes adquirirlo aquí: https://menquisbi.com/curso/sql-server-para-analisis-de-datos Conviértete en miembro del canal: https://www.youtube.com/channel/UCu25jQpvCNUgYV-Tl0iBnQg/join Enlace de descarga del material: https://drive.google.com/drive/folders/1II_tb2aQoQLP-_Y2mPOUKtmt5wRNs8hu?usp=sharing Contenido: 00:00 Introducción 01:19 Definición del Contexto de Filtro 04:11 Contexto de Filtro en Medidas 11:04 Contexto de Filtro en Tablas 17:29 Contexto de Filtro y Contexto de Fila 22:12 Introducción a CALCULATE