Variables ficticias: cómo usarlas para escribir DAX más inteligente

En este tutorial, hablaré sobre cómo usar variables ficticias para escribir mejores medidas DAX. Esto es especialmente aplicable en los casos en que se necesita un DAX más complejo. Usando esta técnica, puede ser más flexible al tratar con diferentes variables y condicionales. Puede ver el video completo de este tutorial en la parte inferior de este blog.

Decidí hacer este tutorial debido a una pregunta que encontré en el .

Variables ficticias: cómo usarlas para escribir DAX más inteligente

Basado en esta pregunta, Harvey quería combinar un análisis de Pareto con algunos criterios adicionales. Quería observar el 20 % superior del rango de ventas y, al mismo tiempo, observar su intersección con otros productos que tenían márgenes por encima de cierto porcentaje.

Tabla de contenido

Solución de redacción para rango de ventas y límite de margen de beneficio

Según los requisitos que mencionó Harvey, creé un borrador de solución que tiene controles deslizantes para el Rango de ventas y el Límite de margen de ganancias .

Variables ficticias: cómo usarlas para escribir DAX más inteligente

Dependiendo de los parámetros que establezca en esos controles deslizantes, la visualización de dispersión mostrará los productos que cumplen con ambos criterios .

Variables ficticias: cómo usarlas para escribir DAX más inteligente

Digamos que el rango de ventas es A y el margen de beneficio es B. Esto básicamente muestra una condición . Esto requiere medidas DAX relativamente estándar. Estos se muestran aquí en el panel derecho bajo medidas, donde tengo el Rango de ventas , que usa un básico . También tengo costos totales, ganancias totales y otras variables que obtienen sus valores de los controles deslizantes.

Variables ficticias: cómo usarlas para escribir DAX más inteligente

Uso de variables ficticias para condiciones AND

En cuanto a la condición AND , es esta medida la que hace el trabajo pesado.

Variables ficticias: cómo usarlas para escribir DAX más inteligente

Hay un par de cosas interesantes que puede notar en esta medida. Básicamente, estos condicionales se suelen utilizar en un criterio / . Pero en lugar de hacer eso, usé lo que llamo variables ficticias donde si la condición es VERDADERA, obtiene un 1. Si es FALSO, obtiene un 0.

Variables ficticias: cómo usarlas para escribir DAX más inteligente

Entonces, esta medida muestra que si el Rango de ventas es menor o igual que el Límite de rango de ventas, obtiene un 1. Si el Margen de ganancias es mayor que el Límite de margen de ganancias, obtiene un 1. De lo contrario, obtienen un cero.

Este enfoque es muy común en el análisis estadístico y de regresión, pero también puede ser útil cuando se trata de DAX.

Usé ese enfoque porque necesito esos valores para la siguiente parte donde combino esas dos variables multiplicándolas .

Variables ficticias: cómo usarlas para escribir DAX más inteligente

Una vez que se combinan las dos variables ficticias Rnk y Marg , puedo pasar a la siguiente parte de la medida. Si ese valor combinado es mayor que cero, le asigné el color rojo. Si no es así, se le asigna el color azul.

Variables ficticias: cómo usarlas para escribir DAX más inteligente

Uso de variables ficticias para condiciones OR

¿Qué sucede si desea utilizar este enfoque en una condición

Puede usar el mismo proceso, pero cuando se trata del paso en el que combina las variables, use un signo más en lugar de un asterisco .

Entonces, una condición AND requeriría un asterisco como este:

Variables ficticias: cómo usarlas para escribir DAX más inteligente

Una condición OR requeriría un signo más como este:

Variables ficticias: cómo usarlas para escribir DAX más inteligente

Una vez que presione aceptar, aplicará esas condiciones en el gráfico de dispersión. Los productos que cumplan con esas condiciones establecidas se mostrarán como estos puntos rojos aquí.

Variables ficticias: cómo usarlas para escribir DAX más inteligente

Por qué funcionan las variables ficticias

Si se pregunta por qué funcionan estas variables ficticias, aquí tengo algunos diagramas que podrían ayudar.

Comencemos con la condición AND .

Variables ficticias: cómo usarlas para escribir DAX más inteligente

Y implica que ambas o todas las condiciones son VERDADERAS. Esto se caracteriza por la multiplicación. Una vez multiplicada, cualquier condición FALSA establece el término completo en 0. Entonces, si tiene dos variables, A y B, y ambas son verdaderas, eso daría un producto de 1, que devuelve VERDADERO.

Pero si A es igual a cero o B es igual a cero, obtienes tres condiciones en las que todo el término terminará en cero. Esa es la intersección.

Si nos fijamos en la condición O, por otro lado, significa que cualquiera de las condiciones es VERDADERA. En lugar de multiplicación, esto requiere suma. Por lo tanto, ningún conjunto FALSO individual dará como resultado 0, pero siempre que una condición sea verdadera, incrementa esa condición en 1.

Variables ficticias: cómo usarlas para escribir DAX más inteligente

Entonces, en el diagrama de la condición O, si tanto A como B son VERDADEROS, el término obtiene un 2. Si A es falso pero B es verdadero, obtiene un 1. Lo contrario también obtiene un 1, mientras que solo obtiene un 0 si ambas condiciones son falsas.

Dónde son útiles las variables ficticias

Evidentemente, puede usar las condiciones AND u OR básicas para casos simples. Sin embargo, eso no funcionará tan bien cuando se trata de casos más complejos. Aquí hay un ejemplo.

Variables ficticias: cómo usarlas para escribir DAX más inteligente

Este caso muestra siete variables. La combinación de A, B y C son VERDADERAS. También lo son las combinaciones de D y E o F y G.

Si tuviera que escribir una medida DAX para esta condición, puede imaginar lo largo y complicado que sería. Pero si aplica variables ficticias, puede hacerlo mucho más simple. Solo necesita sustituir esos operadores para obtener la fórmula más simple.

Variables ficticias: cómo usarlas para escribir DAX más inteligente

A partir de ahí, utiliza la condición de que si el resultado es mayor que 0, sería VERDADERO. Si resulta ser igual a 0, obtienes un FALSO.

Volvamos al archivo de LuckyTemplates para ver cómo funciona en un informe real.

Entonces, en este caso, los puntos rojos muestran una instancia en la que ambas condiciones son verdaderas, mientras que los puntos morados muestran que solo una condición es verdadera.

Variables ficticias: cómo usarlas para escribir DAX más inteligente

Al entrar en la medida, verá las variables ficticias Rnk y Marg donde tenemos una condición OR como se muestra con el signo más .

Variables ficticias: cómo usarlas para escribir DAX más inteligente

Luego, también verá que bajo la construcción TRUE , tiene un 2 que resulta en rojo, lo que significa que tiene dos declaraciones VERDADERAS . Si una de las afirmaciones es verdadera, se vuelve violeta. Si ninguno de los dos es cierto, eso da como resultado un 0, que le mostrará puntos azules.

Variables ficticias: cómo usarlas para escribir DAX más inteligente

Eso corresponde directamente a la matriz del diagrama OR de la que hablamos anteriormente.

Volviendo a nuestra última condición, podemos ver lo que sucede si queremos ver dos conjuntos de valores atípicos. Básicamente, si queremos ver lo que cumple con las condiciones A y B, los dos puntos aquí arriba que representan los Productos 4 y 15 cumplen ese criterio.

Variables ficticias: cómo usarlas para escribir DAX más inteligente

Por otro lado, también puede mirar el valor atípico inferior, que es el Producto 1.

Variables ficticias: cómo usarlas para escribir DAX más inteligente

Recuerde también que todo este informe es dinámico. Entonces, cuanto más mueva los controles deslizantes, más puntos verá potencialmente.

Mirando la medida a continuación, muestra el caso final del que hablamos donde tiene cuatro variables ficticias: el rango superior (TopRnk), los valores mayores o iguales al margen (GTEMarg), el rango inferior (BotRank) y el menor o igual al margen (LEMar).

Variables ficticias: cómo usarlas para escribir DAX más inteligente

En cuanto al valor combinado, multiplicamos TopRnk y GTEMarg, y luego lo sumamos al producto de BotRank y LEMarg.

Variables ficticias: cómo usarlas para escribir DAX más inteligente

Si alguna de esas condiciones regresa como VERDADERA, se mostrará un punto rojo en el gráfico. Si no, mostraría un punto azul.

Variables ficticias: cómo usarlas para escribir DAX más inteligente


Uso de DAX avanzado para declaraciones IF múltiples en LuckyTemplates
Cómo usar SWITCH True Logic en
funciones DAX de LuckyTemplates en LuckyTemplates: uso de iteradores

Conclusión

Mediante el uso y la combinación de estas variables ficticias, puede obtener los resultados que desea utilizando medidas simples en comparación con las medidas DAX complicadas habituales que requieren las medidas textuales VERDADERO/FALSO.

Comience a probar este enfoque en otros informes que tenga que usaron condiciones VERDADERO o FALSO en el pasado y vea cómo eso afecta sus medidas a medida que complica las condiciones.

Mis mejores deseos,

Leave a Comment

Time Intelligence en LuckyTemplates: cómo calcular el número de transacciones realizadas en los últimos N días

Time Intelligence en LuckyTemplates: cómo calcular el número de transacciones realizadas en los últimos N días

Descubra cómo calcular el total de transacciones realizadas en los últimos N días y obtenga información útil utilizando la inteligencia de tiempo en LuckyTemplates.

Cómo evaluar clústeres en sus datos mediante la técnica DAX en LuckyTemplates

Cómo evaluar clústeres en sus datos mediante la técnica DAX en LuckyTemplates

En este tutorial, demuestro cómo mostrar clústeres en sus datos permite extraer información valiosa usando técnicas DAX avanzadas.

¿Cuánto personal tenemos actualmente? Lógica de fechas múltiples en LuckyTemplates usando DAX

¿Cuánto personal tenemos actualmente? Lógica de fechas múltiples en LuckyTemplates usando DAX

En este tutorial, aprenderá a calcular la <strong>población actual del personal</strong> para las relaciones múltiples de la tabla de calendario mediante la función COUNTROWS y FILTER en LuckyTemplates.

Hacer una solicitud HTTP en Power Automate

Hacer una solicitud HTTP en Power Automate

Aprenda a crear una solicitud HTTP con Power Automate y cómo implementar soluciones efectivas para la automatización de tareas.

Programe un flujo de escritorio para que se ejecute en Power Automate

Programe un flujo de escritorio para que se ejecute en Power Automate

En este tutorial, aprenda cómo programar un flujo de escritorio en Power Automate para automatizar tareas en la web y su escritorio.

Power Automate Terminar Control de acción en flujos

Power Automate Terminar Control de acción en flujos

Aprenda a usar correctamente el control Terminar acción de Power Automate que termina las acciones en un flujo si no se cumple alguna de las condiciones.

Power Query: combinar archivos de varias carpetas

Power Query: combinar archivos de varias carpetas

Aprenda a combinar archivos de varias carpetas en su red, escritorio, OneDrive o SharePoint utilizando Power Query.

Tipos de flujo de Power Automate y cuándo usarlos

Tipos de flujo de Power Automate y cuándo usarlos

En este blog, analizamos las similitudes y diferencias entre los tipos de flujo de Power Automate y determinamos cuándo usar cada flujo. Encuentra la mejor opción de automatización.

Conectores de Power Automate: número, texto y fecha y hora

Conectores de Power Automate: número, texto y fecha y hora

Familiarízate con algunos conectores Power Automate integrados que transforman cadenas en otro formato: número, texto y fecha y hora.

Tutorial del analizador VertiPaq: relaciones e integridad referencial

Tutorial del analizador VertiPaq: relaciones e integridad referencial

Este tutorial detallado sobre el analizador VertiPaq en DAX Studio le enseñará cómo usar la pestaña Relaciones para optimizar su DAX y resolver problemas de integridad referencial.