Despivotar datos de una tabla cruzada en el gestor de datos
Una tabla cruzada es un tipo habitual de tabla, que ofrece una matriz de valores entre dos listas ortogonales de datos de encabezado.
Por lo general no es el formato de datos más óptimo si queremos asociar los datos con otras tablas de datos. Esta sección describe cómo podemos despivotar datos cargados en un formato de tabla cruzada, esto es, transponer (o trasladar) partes del mismo a filas utilizando el gestor de datos.
¿Qué es una tabla cruzada?
Una tabla cruzada contiene una serie de columnas cualificadoras, las cuales deben leerse de una determinada manera, y una matriz de valores. En este caso hay una columna de calificación, Year, y una matriz de datos de ventas por mes.
Year | Jan | Feb | Mar | Apr | May | Jun |
---|---|---|---|---|---|---|
2008 | 45 | 65 | 78 | 12 | 78 | 22 |
2009 | 11 | 23 | 22 | 22 | 45 | 85 |
2010 | 65 | 56 | 22 | 79 | 12 | 56 |
2011 | 45 | 24 | 32 | 78 | 55 | 15 |
2012 | 45 | 56 | 35 | 78 | 68 | 82 |
Si esta tabla simplemente se carga en Qlik Sense el resultado será una tabla con un campo por Year y otro campo por cada uno de los meses. Por regla general, éste no es el resultado que interesa. Probablemente preferiríamos tener tres campos generados:
- El campo cualificador, en este caso Year, marcado con verde en la tabla superior.
- El campo de atributo, en este caso representado por los nombres de mes Jan - Jun marcados con amarillo. Este campo se puede denominar de forma adecuada Month.
- El campo de datos, marcado en azul. En este caso representan datos de ventas, por lo que pueden nombrarse Sales de forma adecuada.
Esto se puede lograr usando la opción Despivotar en el editor de tablas del gestor de datos y seleccionando los campos Jan - Jun. Esto crea la tabla siguiente:
Year | Month | Sales |
---|---|---|
2008 | Ene | 45 |
2008 | Feb | 65 |
2008 | Mar | 78 |
2008 | Abr | 12 |
2008 | May | 78 |
2008 | Jun | 22 |
2009 | Ene | 11 |
2009 | Feb | 23 |
... | ... | ... |
Despivotar una tabla cruzada para tener una tabla plana
Haga lo siguiente:
- Añada un archivo de datos con un formato de tabla cruzada a su app.
- Haga clic en en la tabla en el gestor de datos para abrir el editor de tabla.
- Haga clic en Despivotar.
-
Seleccione los campos que desee transponer en filas. Es necesario tener al menos un campo cualificador que no esté despivotado. Hay dos maneras de hacer las selecciones.
- Haga clic en los encabezado de los campos que desee transponer. No seleccione los campos que desee mantener como campos cualificadores.
- Haga clic en los encabezados de los campos que desee mantener como campos cualificadores y después seleccione Invertir selecciones en el menú de campo. Esta es la forma más fácil de hacerlo si tiene un gran número de campos que transponer.
-
Haga clic en Aplicar despivotar
Los datos seleccionados ahora se transponen a dos campos, Tablename.Campo de atributo y Tablename.Campo de datos.
- Renombre Campo de atributo a algo lógico, en el ejemplo anterior, Month.
- Renombre Campo de datos a algo lógico, en el ejemplo anterior, Sales.
Ahora ha despivotado la tabla cruzada a un formato plano, lo que hará que sea más fácil de asociar a otros datos en la app.
Revertir el formato a la tabla cruzada original
Puede volver al formato original de tabla cruzada de su fuente de datos haciendo clic en Deshacer despivotar en el editor de tabla. Si ha creado alguna asociación a otros datos en la app, se eliminarán las asociaciones.