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 cabecera. 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.

Despivotar datos cargados en formato de tabla cruzada traslada partes de la misma a filas.

From crosstab to unpivoted crosstab.

¿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.

Crosstab
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:

Tabla despivotada
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:

  1. Añada un archivo de datos con un formato de tabla cruzada a su app.
  2. Haga clic en @ en la tabla en el gestor de datos para abrir el editor de tabla.
  3. Haga clic en Despivotar.
  4. 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 las cabeceras de los campos que desee transponer. No seleccione los campos que desee mantener como campos cualificadores.
    • Haga clic en las cabeceras 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.
  5. Haga clic en Aplicar despivotar

    Los datos seleccionados ahora se transponen a dos campos, Tablename.Campo de atributo y Tablename.Campo de datos.

  6. Renombre Campo de atributo a algo lógico, en el ejemplo anterior, Month.
  7. 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.