Tableau es una gran herramienta para representar tus datos y, como hemos escrito a menudo, es una herramienta que no requiere que escribas mucho código: simplemente arrastrando y soltando objetos podemos construir dashboards completos. Una de las pocas partes que requiere escribir código es la de los campos calculados. Ya hemos hablado antes de los campos calculados en Tableau, pero en este artículo vamos a centrarnos en una de las funciones de cálculo más útiles que ofrece la herramienta: la función IF.
La función IF comprueba una condición especificada y, dependiendo del resultado de la condición, devolverá una salida u otra. Antes de profundizar en el uso de la función IF, es importante destacar los diferentes tipos de funciones IF en Tableau. En este artículo, mostraremos cómo utilizar los diferentes tipos de función IF con ejemplos y utilizando los datos de la hoja de cálculo de Excel de Tableau Desktop «Sample SuperStore».
IF simple con una condición
Después de configurar la fuente de datos, cambiaremos a la hoja de trabajo de Tableau para crear un campo calculado y ver juntos cómo utilizar la función IF. Nuestro objetivo es dividir los productos en grupos en función de la rentabilidad para ver qué productos han dado más dinero. En este caso, un campo calculado nos ayuda a identificar estos casos mediante una simple función IF THEN.
Empezaremos con un IF que compruebe si el beneficio es negativo o positivo, y después tendremos un ranking de los diferentes productos según el resultado de esta función IF.
Como puedes ver, Tableau siempre acompaña el cuadro de entrada de los campos calculados con una explicación del uso y la finalidad de cada función.
En nuestro primer ejemplo, hemos utilizado IF THEN ELSE. Así que hay una condición a comprobar: valores negativos de beneficio IF SUM([Profit]) < 0
Después, con THEN «Negativo» especificamos el resultado a devolver si la condición anterior es verdadera y con ELSE «Positivo» si es falsa.
IF con dos o más condiciones
¿Y si queremos añadir dos o más condiciones a comprobar? En este caso, debemos utilizar ELSEIF. Esto se utiliza para añadir una segunda condición a comprobar que tiene un resultado diferente al anterior. Veamos el siguiente ejemplo.
En este caso, hemos añadido la condición de que si el beneficio es igual a cero, tendremos un tercer caso en nuestro campo calculado.
En otro ejemplo, veremos cómo podemos añadir más condiciones al IF. En estos casos, Tableau nos proporciona una serie de operadores lógicos (estamos hablando de álgebra booleana) para comparar diferentes condiciones. Imaginemos que tenemos dos condiciones, la condición A y la condición B:
- IF condición A Y condición B = TRUE si se dan ambas condiciones. Si sólo uno de ellos es falso el resultado será FALSO.
- IF condición A O condición B = TRUE si se da al menos una de las condiciones. El resultado será FALSE si ambas condiciones son falsas.
- IF NOT (condición A) = TRUE si la condición A es falsa. NOT simplemente invierte el valor del operando.
Veamos un ejemplo. Nuestro objetivo es clasificar los envíos de «First class» en función del beneficio. En este caso, utilizaríamos AND para especificar dos condiciones: la primera condición sería el beneficio y la segunda el modo de envío, que siempre se especificaría como «First class».
Nested IF
La función IF anidada es simplemente una prueba lógica seguida de otra. Este cálculo anidado puede ser extremadamente útil cuando es necesario identificar diferentes miembros del mismo tamaño para proporcionar resultados diferentes a cada miembro.
Tomemos el mismo ejemplo del beneficio y el modo de envío. Nuestro objetivo es marcar las entregas de «Primera Clase» con beneficio negativo desde la Costa Este de los Estados Unidos.
Éste es el resultado del IF anidado que acabamos de calcular:
Por supuesto, el IF anidado es un cálculo más avanzado, pero resulta útil cuando, habiendo verificado una primera condición, se quiere verificar una segunda, pero que obviamente depende de la primera.