El propósito principal detrás de la creación de cualquier tablero es resumir y agregar información de una manera que se pueda comunicar de manera visual y clara. Tradicionalmente, este resumen y agregación solía ocurrir fuera del alcance de la herramienta de tablero.
Así es como se ve una arquitectura de BI tradicional:
Las fuentes de entrada suelen ser de naturaleza transaccional y todos los resúmenes que normalmente se realizan en Datamarts. Sin embargo, Qlikview funciona en una arquitectura diferente, se conecta directamente a los sistemas de entrada y puede agregar capas internamente para que no necesite datamarts o data warehouse. Aquí hay una representación de cómo podría verse:
Dado que Qlikview ofrece una opción para realizar la agregación dentro, necesita una función de agregación sólida. La idea de esta publicación es presentarle el uso de la función AGGR () en Qlikview.
La (s) función (es) agregada (s) se desarrolla de tal manera que podamos usarla para múltiples aplicaciones como retorno de valor condicional, retorno de valor múltiple o muchas más. Esta función agregada avanzada puede mejorar nuestros paneles e informes en varias ocasiones.
AGGR es una función de agregación muy poderosa en QLikview que a veces se pasa por alto debido a la falta de comprensión o familiaridad. Las declaraciones AGGR crean una tabla temporal de resultados, con una expresión que puede agruparse en una o más dimensiones. Es similar a «Agrupar por» en SQL.
Los resultados de la tabla virtual pueden ser utilizados por funciones agregadas externas. Se puede utilizar tanto en expresión como en dimensión (dimensión calculada).
Sintaxis:
aggr ([ distinct | nodistinct ] [{set_expression}]expression {, dimension})
¿Cuándo debemos usar AGGR?
- Siempre que hacemos agregación en dos pasos como Suma de ventas del producto más vendido por empresa o Promedio más alto venta por Producto y Compañía, en ambos estados estamos haciendo dos agregaciones.
- Queremos identificar la población superior / inferior en el segmento.
- Se vuelve más poderoso cuando se usa con el análisis de conjuntos, Rank (), FirstSortedValue ().
Ejemplo de conjunto de datos:
Tenga en cuenta que he elegido datos transaccionales para resaltar los aspectos de agregación de una mejor manera.
Lea también: Cree un tablero de ventas simple y efectivo con Qlikview
Ahora, exploraremos cómo usar la función AGGR simple en CHART, Pivot Table o Straight tables. A continuación se muestran ejemplos en los que podemos usar la función AGGR:
- Ventas del producto más vendido
- Venta promedio más alta de producto
Las ventas totales de la empresa se pueden calcular usando la función SUM () simplemente (como SUM (Venta)). Sin embargo, necesitamos calcular la venta del producto más vendido por parte de una empresa. Para resolver esto usaremos la función AGGR haciendo dos agregaciones en un solo paso.
Para lograr la venta del producto más vendido para cada empresa, necesitamos tener esas dimensiones (Company_Name y Product) en nuestra declaración AGGR….
= Max (aggr (suma (Venta), Nombre_empresa, Producto))
Como se mencionó anteriormente, cuando usamos la función AGGR, crea una tabla temporal. En este caso, QlikView ha calculado la venta de cada Producto por Empresa. A partir de esta tabla virtual tenemos que identificar el valor máximo de venta y lo hace la función MAX ().
El siguiente escenario es calcular la venta promedio más alta de producto por empresa. Para resolver esto, necesitamos tener una expresión para la venta promedio como «SUMA (Venta) / Recuento (Producto)» y las dimensiones requeridas dentro de nuestra declaración AGGR:
= Max (aggr (suma (venta) / recuento (producto), nombre_empresa, producto))
También en este caso, Qlikview generará una tabla temporal para la venta promedio por Producto y Compañía y publicará que la función MAX identificará el valor más grande.
Lea también: 2 trucos simples para mejorar la densidad de la información en sus paneles de Qlikview
En los ejemplos anteriores, la expresión estaba trabajando con conjuntos de selección actuales donde, como si quisiéramos comparar la venta del año anterior del producto más vendido con el año actual, entonces tenemos que usar la metodología de análisis de conjuntos en nuestra expresión.
En caso de que sea nuevo en el análisis de conjuntos, consulte mi publicación anterior «Análisis de conjuntos en QlikView – ¡simplificado!».
Para devolver las ventas del producto más vendido del año anterior, necesitamos escribir una expresión de conjunto:
= Max ({} aggr (sum ({} Venta), Company_Name, Product) )
Para entenderlo con más claridad, se verá así:
= Max ({} aggr (sum ({} Venta), Company_Name, Product))
En la expresión anterior, he usado la expresión de conjunto dos veces, una para la función MAX y otra para AGGR.
Tomemos un escenario, donde tenemos que identificar el nombre del producto que más se vendió durante el período seleccionado por empresa. Para hacerlo, tenemos que usar AGGR función junto con función FIRSTSORTEDVALUE ().
PRIMER VALOR La función devuelve el primer valor de expresión ordenado por el peso de clasificación correspondiente. El peso de clasificación debe ser un valor numérico y devuelve un valor NULO si más de un valor de expresión comparten el mismo orden de clasificación, por lo que si hay un empate en la clasificación, devuelve un valor NULO a menos que haga algo más para superar este problema.
Para extraer el último valor ordenado que es opuesto al primer valor ordenado, necesitamos agregar un signo menos (-) para ordenar la expresión de peso. También podemos utilizar el análisis de conjuntos y Total en PRIMER VALOR función.
Sintaxis: – FIRSTSORTVALUE (Field, Sort-Weight)
Como se mencionó anteriormente, para identificar el nombre del producto en función del producto de mayor venta por empresa, tenemos que escribir una expresión como:
= FIRSTSORTEDVALUE (Producto, – aggr (suma (Venta), Nombre_empresa, Producto))
En la expresión anterior, la declaración AGGR genera una tabla virtual que tiene las ventas totales por empresa y producto. Luego, la función FIRSTSORTEDVALUE identifica el nombre del producto de la mesa virtual para mayor venta. Debido a que la función aggr está precedida por el signo menos (-), devolverá el nombre del producto contra las ventas más altas.
Uno de los mejores escenarios de casos de uso donde uso la función AGGR es identificar el segmento superior / inferior. Aquí, identificaremos los 2 productos principales en los años 2012 y 2013 dentro de un objeto de texto como se ve a continuación:
Para lograr esto, usaremos las funciones Concat () y Rank () junto con la declaración AGGR. La expresión completa es la siguiente:
= concat (IF (aggr (Rank (suma (Venta)), Producto) <= 2, Producto & chr (10)))
Expresión «aggr (Rango (Suma (Venta)), Producto) ”, crea una tabla virtual con Producto y Rango frente a su venta. El siguiente paso es agregar nuestra declaración IF para solicitar que solo recibamos los 2 productos principales en el resultado. Por lo tanto, si el rango en nuestra tabla AGGR virtual es <= 2, muestre el producto; de lo contrario, devuelva null ().
Finalmente, queremos mostrar los resultados de esto en un objeto de texto. Hemos utilizado la función CONCAT () para concatenar los 2 valores de Producto juntos. Para agregar una línea separada entre ambos productos, hemos usado chr (10).
Esta publicación fue un ejemplo en el que presentamos métodos para usar AGGR en Qlikview. ¿Tienes más trucos para hacer que AGGR sea más interesante? Si no es así, ¿cree que este artículo le permitirá utilizar la función AGGR en su próximo panel de control?
Hágame saber lo que piensa sobre el uso de esta función en QlikView.
Si le gusta lo que acaba de leer y desea continuar con su aprendizaje sobre análisis, suscríbete a nuestros correos electrónicos o como nuestro pagina de Facebook.
Relacionado
Posts Relacionados:
- ¡Bases de datos NoSQL que todo científico de datos debería conocer en 2020!
- ¡El Cuadrante Mágico 2020 de Gartner ya está disponible! Consulte las mejores herramientas de análisis
- Libros electrónicos de aprendizaje automático para científicos de datos e ingenieros de inteligencia artificial
- ¿Qué es la atribución de canal? Modelado de atribución de canal