UnPivot dei dati di una tabella incrociata in gestione dati

Una tabella incrociata è un tipo comune di tabella contenente una matrice di valori tra due elenchi ortogonali di dati di intestazione. Generalmente non è il formato dati ottimale se si desidera associare i dati ad altre tabelle di dati. Questo argomento descrive come trasformare tramite UnPivot i dati caricati in una tabella incrociata, ossia trasporre parti dei dati in righe utilizzando gestione dati.

I dati UnPivot caricati nel formato tabella incrociata traspongono parti di questi nelle righe.

From crosstab to unpivoted crosstab.

Le tabelle incrociate

Una tabella incrociata contiene colonne di qualifica, che devono essere lette in modo diretto, e una matrice di valori. In questo caso vi è una colonna di qualifica, Year, e una matrice di dati sulle vendite per mese.

Tabella incrociata
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

Se questa tabella viene semplicemente caricata in Qlik Sense, il risultato sarà un campo per Year e un campo per ciascun mese. In genere, ciò non corrisponde al risultato desiderato. È probabilmente preferibile generare tre campi:

  • La colonna di qualifica, in questo caso Year, evidenziata in verde nella tabella precedente.
  • Il campo attributo, che in questo caso è rappresentato dai nomi dei mesi Jan - Jun, evidenziato in giallo. Questo campo può essere giustamente denominato Month.
  • Il campo dei dati, evidenziato in blu. In questo caso contiene i dati sulle vendite, quindi può essere denominato Sales.

Per ottenere questo risultato si può utilizzare l'opzione di UnPivot nell'editor tabelle di gestione dati, selezionando i campi Jan - Jun. Verrà creata la tabella seguente:

Tabella con pivoting annullato
Year Month Sales
2008 Jan 45
2008 Feb 65
2008 Mar 78
2008 Apr 12
2008 May 78
2008 Jun 22
2009 Jan 11
2009 Feb 23
... ... ...

Trasformazione tramite UnPivot di una tabella incrociata in una tabella flat

Procedere come indicato di seguito:

  1. Aggiungere all'app un file di dati in formato tabella incrociata.
  2. Fare clic su @ nella tabella in gestione dati per aprire l'editor tabelle.
  3. Fare clic su Trasforma tramite UnPivot.
  4. Selezionare i campi da trasporre in righe. È necessario avere almeno un campo di qualifica al quale non viene applicato l'UnPivot. Vi sono due modi per effettuare le selezioni.

    • Fare clic sulle intestazioni dei campi da trasporre. Non selezionare i campi da mantenere come campi di qualifica.
    • Fare clic sulle intestazioni dei campi da mantenere come campi di qualifica, quindi selezionare Inverti selezioni dal menu del campo. Questo è il modo più facile per procedere se si ha un gran numero di campi da trasporre.
  5. Fare clic su Applica UnPivot

    I dati selezionati verranno trasposti in righe con due campi, Tablename.Campo attributo e Tablename.Campo Dati.

  6. Cambiare Campo attributo in un nome significativo, nell'esempio precedente Month.
  7. Cambiare Campo dati in un nome significativo, nell'esempio precedente Sales.

È stato così eseguito l'UnPivot della tabella incrociata in un formato flat, che renderà più facile l'associazione ad altri dati nell'app.

Ripristino della tabella incrociata originale

È possibile ripristinare il formato originale della tabella incrociata della sorgente dati facendo clic su Annulla UnPivot nell'editor tabelle. Se sono state create associazioni ad altri dati nell'app, queste verranno eliminate.