Orden de operaciones

En la entrada anterior terminamos la sección de organización de datos, por lo que ahora comenzaremos con la sección de filtros. En esta entrada cubriremos el tópico de “orden de operaciones”, donde explicaremos qué significa, cual es su importancia en Tableau y cómo afecta nuestros filtros. Al final del artículo también les mostraré los tres ejemplos más importantes en que podemos usar el orden de operaciones.

¿Qué es el orden de operaciones?

El orden de operaciones es un documento “vivo” el cual tiende a actualizarse con el lanzamiento de nuevas funcionalidades en Tableau. Si estas leyendo esto en una versión superior a 2020.2, te recomiendo revisar el orden de operaciones en este vínculo.

Orden de operaciones
Orden de operaciones

Hablando desde mi experiencia en los foros de Tableau, yo diría que el orden de operaciones es uno de los tópicos que más se repiten en los foros y es una parte fundamental en el entendimiento de Tableau y los filtros. Cuando pensamos en orden de operaciones, probablemente lo primero que se nos viene a la cabeza es el orden de las operaciones en matemáticas – PEMDAS (paréntesis, exponentes, multiplicación y división, adición y sustracción). En el caso de Tableau esto no es muy diferente, ya que el orden de operaciones nos indica el orden en que las consultas (queries) se ejecutan en Tableau, lo que es particularmente importante en el caso de los filtros.

Ejemplos del orden de operaciones

Tal como podemos observar en la imagen siguiente, el orden de operaciones es de principal importancia cuando consideramos que tipo de filtro estamos utilizando. Por lo tanto, si no has revisado la entrada sobre tipos de filtro, te recomiendo leerla acá. Aunque el esquema comienza con los filtros de extracto, desde mi parecer la parte más importante a considerar en el orden de operaciones ocurre entre los filtros de contexto y los filtros de dimensión. Para esto revisemos dos ejemplos básicos:

TOP N

Uno de los ejemplos más comunes, el cual se observa mucho en los exámenes, es si queremos calcular el TOP N de un elemento. Por ejemplo, supongamos que en el siguiente caso quiero obtener el TOP 5 de las ciudades de México según ganancia.

Ejemplo orden de operaciones top N
Ejemplo orden de operaciones top N

Uno de los acercamientos más comunes sería filtrar primero a México.

Ejemplo paso 2
Ejemplo paso 2

Y luego filtramos TOP 5, arrastrando nuestro campo de ciudad al filtro (esto lo cubrimos también en la entrada de filtros).

Ejemplo paso 3
Ejemplo paso 3

Tal como podemos observar en la imagen, nuestro TOP 5 solo nos devuelve un resultado: “Ciudad de México”. Si es que revisamos la imagen de nuestro orden de operaciones podemos ver que el filtro TOP N en nuestro campo Ciudad se ejecuta antes que nuestro filtro de dimensión País/Región. Por lo tanto, lo que ocurre es que primero estamos filtrando por TOP N en toda nuestra base de datos y luego, dentro de el TOP N, estamos filtrando por México.

Ejemplo paso 4
Ejemplo paso 4

Por lo tanto, para obtener el resultado que queremos, lo que debemos hacer primero es añadir nuestro filtro de País/Región a contexto para primero filtrar por México y luego TOP N.

Ejemplo paso 5
Ejemplo paso 5

Operaciones de nivel de detalle

El segundo ejemplo más común es cuando se utilizan operaciones de Nivel de Detalle (LOD). Este tipo de operaciones, que cubrimos en esta entrada, nos permiten realizar cálculos a un nivel diferente de agregación al que tenemos en nuestra vista. Otro de sus usos principales es que nos ayudan a “saltarnos” los filtros de dimensión, pero si es que no sabemos como funciona el orden de operación nos encontraremos con que nuestros filtros “no funcionan”. Por ejemplo, si es que creo el cálculo

{ SUM([Ganancia])}  podemos ver el total de ganancias en América Latina al costado de las ganancias regionales.

Ejemplo orden de operaciones con nivel de detalle
Ejemplo orden de operaciones con nivel de detalle

Luego, si es que aplico un filtro por país es común pensar que el TOTAL LATAM se actualizaría también. Sin embargo, debido a que nuestro FIXED LOD ocurre antes que nuestro filtro de dimensión, observaremos que nuestro filtro no afecta nuestro cálculo TOTAL LATAM.

Ejemplo paso 2
Ejemplo paso 2

Al igual que en el caso anterior, para resolver esto lo que debemos hacer es añadir nuestro campo País/Región a contexto, ya que de esta manera el filtro ocurrirá antes que nuestro cálculo de Nivel de Detalle.

Ejemplo paso 3
Ejemplo paso 3

Comentarios finales

El orden de operaciones va a venir muy a la mano cuando comencemos a utilizar diferentes tipos de filtro y cálculos más avanzados, tales como Niveles de Detalle. Sin embargo, la razón por la que hemos cubierto solo dos ejemplos es que el orden de operaciones es una característica de Tableau que, en general, es cubierta con más detalle en niveles más avanzados de Tableau. Antes de terminar, recuerda que es un documento vivo, por lo que es recomendable revisarlo de vez en cuando para saber cómo afecta nuevas funcionalidades. Con esto terminamos la sección de filtros y en la siguiente entrada hablaremos sobre el ordenamiento de los datos.

Agregar un comentario

Su dirección de correo no se hará público. Los campos requeridos están marcados *