Vai al contenuto principale Passa a contenuto complementare

Trasformazione dei dati

È possibile trasformare e manipolare i dati utilizzando svariate tecniche in Editor caricamento dati.

Uno dei vantaggi offerti dalla manipolazione dei dati è che è possibile scegliere di caricare solo un sottogruppo di dati da un file, ad esempio alcune colonne di una tabella, per rendere la gestione dei dati più efficiente. È inoltre possibile caricare i dati più volte per suddividere i dati non elaborati in molte nuove tabelle logiche. È infine possibile caricare i dati da più sorgenti e unirli in una tabella in Qlik Sense.

In questo argomento verranno illustrate alcune trasformazioni di base dei dati utilizzando un'istruzione LOAD Resident seguita da un'istruzione LOAD Preceding.

Resident LOAD

È possibile utilizzare il qualificatore di sorgente Resident in un'istruzione LOAD per caricare i dati da una tabella caricata in precedenza. Questo risulta utile quando si desidera eseguire calcoli sui dati caricati con un'istruzione SELECT in cui non è possibile utilizzare le funzioni di Qlik Sense, come la gestione di valori numerici o di data.

In questo esempio si creerà una nuova tabella denominata Sales_Buckets e si caricheranno i dati da Table1 utilizzando un'istruzione LOAD Resident. Nella tabella Sales_Buckets si creerà una variabile denominata quantity_threshold, quindi si utilizzerà un'istruzione Where per caricare solo i dati che soddisfano i requisiti di soglia.

  1. Aprire l'editor caricamento dati nell'app Scripting Tutorial.
  2. Fare clic sulla scheda Sales.
  3. Aggiungere quanto segue alla fine dello script:
  4. SET quantity_threshold = 12000;
    
    					Sales_Buckets:
    					LOAD
    					"Sales Qty" as "High_Quantity",
    					"Item Description" as "Item",
    					"Customer Number" as "Customer"
    					Resident Table1
    					Where ("Sales Qty" > $(quantity_threshold));
    				

    Lo script avrà questo aspetto:

    Finestra dello script di caricamento con lo script per creare una nuova tabella denominata Sales_Buckets

    Finestra dello script di caricamento con lo script per creare una nuova tabella denominata Sales_Buckets.
  5. Fare clic su Carica dati.
  6. Aprire il sistema di visualizzazione modello dati. È possibile vedere che è stata creata una nuova tabella denominata Sales_Buckets con i dati caricati in base ai campi specificati in precedenza, insieme alla soglia impostata.
  7. Tabella Sales_Buckets nel sistema di visualizzazione modello dati

    Tabella Sales_Buckets nel sistema di visualizzazione modello dati.
  8. Aggiungere i dati a una tabella nell'app. Aggiungere Item e Customer come dimensioni. Aggiungere High-Quantity come misura aggregata per Count, quindi di nuovo come misura aggregata per Sum. Aggiungere quindi una nuova colonna come misura con la seguente formula:
  9. = Sum(High_Quantity) / Count(High_Quantity)

    Nuova misura con formula

    Nuova misura con formula.

    La tabella mostra, ad esempio, che Customer 10025737 ha effettuato 4 grandi ordini di High Top Dried Mushrooms, con una quantità media di 14.800. Per ordinare i dati nei campi, chiudere la modalità di Modifica facendo clic su Fine.

    Tabella che mostra i clienti che hanno effettuato grandi ordini

    Tabella che mostra i clienti che hanno effettuato grandi ordini.
  10. Ora che abbiamo completato l'esempio, impostare come commento lo script per la variabile quantity_threshold e la tabella Sales_Buckets.
  11. La parte finale dello script avrà ora il seguente aspetto:

    Script impostato come commento

    Script impostato come commento.

LOAD precedente

Un'istruzione LOAD precedente consente di eseguire trasformazioni e applicare filtri in modo da poter caricare i dati in un unico passaggio. Fondamentalmente si tratta di un'istruzione LOAD che viene caricata dall'istruzione LOAD o SELECT sottostante, senza la specifica di un qualificatore di sorgente quale From o Resident come si farebbe normalmente. In questo modo è possibile impilare qualsiasi numero di istruzioni LOAD. L'istruzione in fondo viene valutata per prima, quindi viene valutata l'istruzione sopra e così via fino ad arrivare alla valutazione dell'istruzione più in alto.

Come menzionato in precedenza in questo tutorial, è possibile caricare i dati in Qlik Sense utilizzando le istruzioni LOAD e SELECT. Ciascuna di queste istruzioni genera una tabella interna. L'istruzione LOAD viene utilizzata per caricare i dati dai file o da una tabella inline, mentre l'istruzione SELECT viene utilizzata per caricare i dati dai database. In questo tutorial sono stati utilizzati dati caricati da file. In questo esempio si utilizzerà una tabella inline. È tuttavia opportuno precisare che per manipolare i dati è possibile utilizzare un'istruzione LOAD prima di un'istruzione SELECT. I concetti di base sono gli stessi di quelli illustrati qui per LOAD.

Questo esempio non è correlato ai dati che si stanno caricando in questo tutorial. Viene utilizzato solo per mostrare un esempio dell'aspetto che un'istruzione LOAD precedente può avere. Creeremo una tabella inline denominata Transactions nell'editor caricamento dati. L'interpretazione della data verrà eseguita nell'istruzione LOAD precedente, in cui verrà creato un nuovo campo denominato transaction_date. Questo campo viene creato in base al campo sale_date.

  1. Creare una nuova app e denominarla ReformatDate.
  2. Aprire l'editor caricamento dati e creare una nuova scheda denominata TransactionData.
  3. Aggiungere il seguente script:
  4. Transactions: 
    Load *,
    Date(Date#(sale_date,'YYYYMMDD'),'DD/MM/YYYY') as transaction_date;
    Load * Inline [ transaction_id, sale_date, transaction_amount, transaction_quantity, customer_id, size, color_code 
    3750, 20180830, 23.56, 2, 2038593, L, Red 
    3751, 20180907, 556.31, 6, 203521, m, orange 
    3752, 20180916, 5.75, 1, 5646471, S, blue 
    3753, 20180922, 125.00, 7, 3036491, l, Black 
    3754, 20180922, 484.21, 13, 049681, xs, Red 
    3756, 20180922, 59.18, 2, 2038593, M, Blue 
    3757, 20180923, 177.42, 21, 203521, XL, Black ];

    Lo script avrà questo aspetto:

    Script di caricamento con istruzione LOAD precedente

    Script di caricamento con istruzione LOAD precedente.
  5. Fare clic su Carica dati.
  6. Aprire il sistema di visualizzazione modello dati. Selezionare ed espandere la tabella Transactions. Si noti come tutti i campi siano stati caricati come specificato dal simbolo * nell'istruzione LOAD precedente. È stato creato un nuovo campo denominato transaction_date, con la data riformattata.
  7. Nuovo campo denominato transaction_date nel sistema di visualizzazione modello dati

    Nuovo campo denominato transaction_date nel sistema di visualizzazione modello dati.

Hai trovato utile questa pagina?

Se riscontri problemi con questa pagina o con il suo contenuto – un errore di battitura, un passaggio mancante o un errore tecnico – facci sapere come possiamo migliorare!