Power Query vs Power Pivot – Filtros avanzados en Tabla dinámica

Anteriormente, en esta serie, vimos Power Query vs Power Pivot – Filtros en tabla dinámica

En esta entrada vimos diferentes posibilidades de filtrar datos con tablas dinámicas que consumen modelos tabulares creados con Power Pivot.

Estamos en la serie Power Query vs Power Pivot analizando que desde Power Query no es posible acceder a herramientas clientes de visualización de modelo de datos, sino que necesitamos Power Pivot como herramienta de diseño del modelo tabular, que luego expondremos. Esta es una gran diferencia y estamos dedicando varias entradas de blog por la importancia que tienen todas estas funcionalidades dentro de MS Office Excel.

Hoy vamos a hablar de filtros avanzados sobre tablas dinámicas, específicamente Segmentadores y filtros de Escala de tiempos

Anteriormente vimos que al filtrar desde área de Filtros de tabla dinámica, al filtrar por más de un valor, no se muestran los valores seleccionados ni los dejados de seleccionar, luego analizando los filtros de cabecera de fila y cabecera de columna, vemos que los seleccionados quedan a la vista; pero seguimos sin saber cuáles son los otros valores. Veamos entonces, una vía para solucionar estos inconvenientes en columnas con relativamente pocos valores diferentes.

Segmentadores

Desde MS Office Excel 2010, encontramos una funcionalidad de filtrado en tablas dinámicas, los segmentadores o slicers. Son muy útiles para el análisis dinámico, ofreciendo aspecto de cuadro de mando, muy cómodo, a mí me gustan mucho. Todos los valores disponibles se muestran todo el tiempo, por lo que podemos saber cuáles de ellos están filtrando la tabla dinámica, cuáles no, y cuáles no están disponibles dada la combinación del resto de los filtros. Más sobre segmentadores en la serie sobre MS Office Excel 2013

Para crear un segmentador vamos al menú, Herramientas de tabla dinámica, ficha Analizar, grupo Filtrar, comando Insertar Segmentación de datos.

menuinsseg

Muestra la lista de campos disponibles, incluyendo las jerarquías y sus niveles, así como las columnas calculadas, numéricas o no. Lo que no incluyen son las medidas asociadas a cada tabla. Como primer ejemplo, vamos a definir un segmentador basado en la columna calculada LineaDescrita2 de la tabla Productos del Modelo de datos. La finalidad de esta columna es describir mejor la línea de producto y pasar de una letra M,T,R, S o vacío a una cadena más descriptiva.

listasegm

La columna calculada se ha obtenido mediante una expresión DAX que se muestra en la imagen.

colcalcdescri

Como el nombre de este campo no es del todo afortunado, para cambiar el título del segmentador, vamos al menú de Excel, en el que aparece una nueva ficha Herramienta de segmentación de datos, que a su vez tienen una única ficha hija, Opciones.

menuopcionesseg

Nos vamos al grupo Segmentación de datos y escribimos en el cuadro de texto: Título de Segmentación de datos. Podemos cambiar además los colores, la cantidad de columnas y varias propiedades más.

menutitulosegm

Este es el resultado.

seglinea

En la imagen se observa un cambio de coloración para el valor “Sin Asignar”, lo que significa que en el contexto de filtro actual de la tabla dinámica no hay productos con el valor Sin Asignar. El análisis de lo que es el contexto de filtro actual, y lo que significa para evaluar las expresiones DAX,  está fuera del alcance del tema que estamos viendo. Al menos comento que el contexto de filtro depende de los filtros que se apliquen sobre la tabla. En este caso no hay ningún aplicado a la tabla dinámica, no hay filtros por segmentadores ni por campo de área de filtro ni por cabecera de fila y columna. A nivel de celda sí que hay un filtro, cada celda se le aplica el contexto de filtro individual en correspondencia con sus valores de la fila y columna.

En la tabla de Ventas, que es la que define los valores de la tabla dinámica, no hay ventas de Productos con Línea en blanco; pero en la tabla Productos sí, esa es la diferencia. Los valores no disponibles se muestran al final de la lista, ordenados alfabéticamente.

El segmentador Líneas no está realizando ninguna labor de filtrado sobre la tabla dinámica.

  • Segmentadores y filtros

Los segmentadores, como he dicho antes, son filtros; pero a su vez, y también lo he dicho, su apariencia depende del contexto de filtro que afecte a la tabla dinámica. Si, por ejemplo, filtramos por la cabecera de columna Año=2005, obtenemos el siguiente resultado.

filtra2005

Al contexto de filtro de cada celda que teníamos antes, he añadido una nueva condición de filtro, que es un AND que se añade a las anteriores. Al filtrar por el Año=2005, resulta que no existen ventas de productos de Líneas que no sean Montaña y Ruta, por eso los valores Sencilla y Turismo han quedado también ocultos. Como dije antes, los valores no disponibles se muestran al final de la lista, ordenados alfabéticamente.

Para demostrar que es cierto vamos a filtrar esta vez desde el segmentador. Para ello basta con seleccionar el valor, en este caso Línea=Sencilla.

filtrasencilla

Ahora, no hay filtros sobre las cabeceras de filas y columnas de la tabla dinámica ni sobre el campo del área Filtros. Sin embargo, todas las celdas están filtradas ahora además por la condición Línea=Sencilla. La coloración del resto de valores del segmentador ha cambiado para mostrar que el resto de valores no ha sido incluido en la condición de filtro y para el caso de Sin Asignar, vemos que el cambio de tonalidad continúa marcando la diferencia en cuanto a la disponibilidad.

En la tabla vemos que no hay valores para el Año=2005, lo que confirma la acción anterior y además vemos que tampoco hay para Año=2006.

  • Segmentadores sobre Jerarquías del modelo tabular

Vamos a insertar un segmentador, que a su vez serán tres, sobre los tres niveles de una jerarquía del modelo de datos correspondientes a Categoría, Subcategoría y Productos de la tabla Productos.

segmjerarq

Este es el aspecto de nuestro informe, tras añadir los segmentadores, recolocar bien, agregar columnas, ajustar tamaños, etc.

informesegm

Si filtramos por Línea=Montaña podemos ver el efecto que tiene en el resto de segmentadores y por supuesto, como sabemos, en las celdas de tabla dinámica.

segmjerarfiltro1

Si filtramos por Categoría=Bikes.

segmjerarfiltro2

Si combinamos filtros de varios segmentadores:

segmjerarfiltro3

Y si combinamos, además con el campo Ocupación, del área de Filtros de la tabla dinámica.

segmjerarfiltro3

Y para finalizar, si combinamos además, con un filtro sobre la cabecera de columnas, para Año=2015.

segmjerarfiltro5

Para resumir, los segmentadores son una excelente funcionalidad que nos permite filtrar las celdas de tabla dinámica y combinar con las condiciones creadas por el resto de opciones de filtrado de la tabla dinámica. Crea una sensación de cuadro de mando con altísimas ventajas en cuanto al dinamismo del trabajo con los filtros.

Hay que destacar que no todas las columnas son buenas como segmentadores, en nuestro caso, es mala idea utilizar Nombre de Producto, por la gran cantidad de valores que tiene. En la siguiente imagen vemos como es inviable seleccionar desde un segmentador por Nombre de Producto.

segmproducto

Debemos aprovechar cada funcionalidad adecuadamente. Un buen ejemplo de uso de filtros y segmentadores podría ser el siguiente:

segfinal

Filtros por escala de tiempos

Desde MS Office Excel 2013, encontramos una funcionalidad de filtrado en tablas dinámicas, los filtros por escala de tiempo. Más sobre filtros de escala de tiempos en la serie sobre MS Office Excel 2013

Para crear un segmentador vamos al menú, Herramientas de tabla dinámica, ficha Analizar, grupo Filtrar, comando Insertar escala de tiempos.

menufiltrofecha

Se muestra la lista con todas las tablas que contengan columnas tipo Fecha.

listafiltrofecha

Digamos que seleccionamos las dos columnas disponibles y las agregamos a un informe de tabla dinámica en el que vemos que no se ha aplicado ningún filtro sobre la tabla.

Podemos ver que los filtros de Escala de tiempos se pueden mostrar a diferentes niveles que son: Años, Trimestres, Meses y Días.

informefiltrofecha

Los filtros por escala de tiempos tienen una barra de desplazamiento que nos permite seleccionar cómodamente un rango continuo de tiempo para analizar en el informe. No es posible seleccionar elementos alternos.

Tras jugar un poco con los valores y combinar filtros como hicimos antes, el informe puede quedar con este aspecto.

informefiltrofecha2

La próxima entrada veremos los gráficos dinámicos y con ellos terminaremos este espacio dedicado a la visualización de modelos de datos desde tabla dinámica y sus componentes.

No te pierdas el resto de entradas de la serie Power Query vs Power Pivot

Deja una respuesta

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Salir /  Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Salir /  Cambiar )

Conectando a %s

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.