No conozco ningún usuario de Excel que no sepa escribir una fórmula, cualquiera que esta sea. El que menos, sabe escribir algo como =SUMA(A3:A8) o tal vez =SI(A3 <> 0, A4/A3, 0). Ya hay otros que escriben cosas tipo =BUSCARV(C12,C15:F22,2,FALSO) o fórmulas más ‘avanzadas’ aún. El caso es que si no conociéramos y usáramos esas fórmulas, Excel no serviría de mucho. Y además, mientras más fórmulas aprendamos, más cosas podremos hacer, y más provecho le sacaremos a Excel.

Algo parecido pasa con Power BI. Si conociéramos las fórmulas de Power BI, se le podría sacar un provecho increíble al software. La diferencia con el caso de Excel es que con Power BI se puede llegar mucho más lejos sin saber escribir fórmulas. Se pueden hacer cuadros enteros, paneles interactivos y demás, sin necesidad de fórmulas. Pero cuando se aprenden esas fórmulas, el poder de Power BI se multiplica muchísimo más. Se podrían hacer de manera muy sencilla cálculos que de otra manera serían difíciles o laboriosos, como por ejemplo:

  • Calcular montos tipo “Año hasta la fecha” o Year-To-Date (YTD) y similares (MTD, QTD)
  • Calcular el número de clientes nuevos en este periodo, el número de clientes leales o los clientes perdidos según un patrón de compra y para el producto a elegir,
  • Clasificación de clientes según su volumen de compra de determinado producto, cambiando dinámicamente el producto elegido.
  • Crecimiento entre periodos, promedios móviles, cumplimiento de cuotas.

El lector podría pensar que puede hacer esos cálculo en Excel restando u operando entre dos celdas particulares luego de haber hecho cierta secuencia particular de cálculos intermedios. Y con ello no habría que aprender nada de DAX. Bueno, podría hacerlo. Pero la idea es que el cálculo funcione automática y rápidamente para cualquier combinación arbitraria de filtros (e.g. combinación de productos, vendedores, fechas, agencias, tiendas, etc.) Y que siempre se obtenga la respuesta correcta. Y que funcione cuando la data se refresque (mejor dicho, con la data del siguiente mes, y la del subsiguiente, etc.)

Pues bien. Esas fórmulas se escriben en un idioma particular, en un lenguaje. Ese lenguaje se llama DAX (Data Analysis Expressions) y, dicho sea de paso, no solamente se puede usar en Power BI sino también en Power Pivot (dentro de Excel) y en los modelos tabulares de SQL Server Analysis Services para los interesados.

Por eso es importante DAX: porque puedo ir más allá de la simple suma o el promedio automático de ciertos valores, e implementar lógica de negocio para un buen análisis.


Nota:
El 4 de abril, Microsoft introdujo en Power BI Desktop una funcionalidad en vista previa denominada “Quick Measures”. Esta funcionalidad permite realizar automáticamente ciertos cálculos avanzados sobre los datos existentes. En otras palabras, escribe DAX automáticamente para ciertos escenarios. Creo que en el tiempo, estas capacidades de cálculos avanzados automáticos irán perfeccionándose y haciendo cosas más complejas.  También creo que, quien sepa DAX, podrá entender esos cálculos y realizar otros que no estén contemplados aún y que permitan resolver una situación de análisis de negocio. Puede revisar más sobre esta funcionalidad en el anuncio hecho en inglés aquí.


 

(*) Jadzia Dax, en la foto de este artículo, es un personaje ficticio de la serie Star Trek. Dax es un simbionte que se aloja dentro de humanoides. La foto es, en realidad, de Jadzia, porque Dax, que vive en su interior, es -digamos- poco fotogénico (véalo bajo su propio riesgo). La foto ha sido tomada de esta página.