Aggiunta di campi calcolati - Amazon QuickSight

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

Aggiunta di campi calcolati

Crea campi calcolati per trasformare i dati utilizzando uno o più opzioni tra le seguenti:

  • Operatori

  • Funzioni

  • Funzioni aggregate (puoi aggiungerle solo a un'analisi)

  • Campi che contengono dati

  • Altri campi calcolati

Puoi aggiungere campi calcolati a un set di dati durante la preparazione dei dati oppure dalla pagina di analisi. Un campo calcolato aggiunto a un set di dati durante la preparazione dei dati è disponibile per tutte le analisi che utilizzano quel set di dati. Un campo calcolato aggiunto a un set di dati in un'analisi è disponibile solo per quell'analisi.

Le analisi supportano sia operazioni su riga singola che operazioni di aggregazione. Le operazioni su riga singola sono operazioni che restituiscono un risultato (potenzialmente) diverso per ogni riga. Le operazioni di aggregazione restituiscono risultati che sono sempre identici per i set di righe nel loro complesso. Ad esempio, se utilizzi una funzione di stringa semplice senza condizioni, ogni riga risulta modificata. Se utilizzi una funzione di aggregazione, essa verrà applicata a tutte le righe di un gruppo. Se richiedi l'importo totale delle vendite per gli Stati Uniti, lo stesso numero è valido per l'intero set. Se richiedi i dati relativi a uno stato specifico, l'importo totale delle vendite cambia in base al nuovo raggruppamento. Viene comunque restituito un risultato per l'intero set.

La creazione di un campo calcolato aggregato all'interno dell'analisi ti consentirà quindi di eseguire il drill-down dei dati. Il valore del campo aggregato viene ricalcolato in modo appropriato per ogni livello. Questo tipo di aggregazione non è possibile durante la preparazione del set di dati.

Ad esempio, supponiamo che si desideri calcolare la percentuale del profitto per ogni paese, regione e stato. All'analisi puoi aggiungere un campo calcolato (sum(salesAmount - cost)) / sum(salesAmount). Questo campo viene quindi calcolato per ogni paese, regione e stato nel momento in cui l'analista esegue il drill-down nell'area geografica.

Aggiunta di campi calcolati a un'analisi

Quando aggiungi un set di dati a un'analisi, ogni campo calcolato esistente nel set di dati viene aggiunto all'analisi. È possibile aggiungere campi calcolati aggiuntivi a livello di analisi per creare campi calcolati disponibili solo in quell'analisi.

Aggiunta di un campo calcolato a un'analisi
  1. Apri la QuickSight console.

  2. Apri l'analisi che desideri modificare.

  3. Nel riquadro Dati, scegli Aggiungi in alto a sinistra, quindi scegli + CAMPO CALCOLATO.

    1. Nell'editor di calcoli che si apre, procedi come segue:

    2. Inserisci un nome per il campo calcolato.

    3. Inserisci una formula utilizzando i campi del set di dati, delle funzioni e degli operatori.

  4. Al termine, scegli Save (Salva).

Per ulteriori informazioni su come creare formule utilizzando le funzioni disponibili in QuickSight, consultaFunzione di campo calcolata e riferimento dell'operatore per Amazon QuickSight .

Aggiunta di campi calcolati a un set di dati

QuickSight Gli autori di Amazon possono generare campi calcolati durante la fase di preparazione dei dati della creazione di un set di dati. Quando crei un campo calcolato per un set di dati, il campo diventa una nuova colonna nel set di dati. Tutte le analisi che utilizzano il set di dati ereditano i campi calcolati del set di dati.

Se il campo calcolato funziona a livello di riga e il set di dati è archiviatoSPICE, QuickSight calcola e materializza il risultato in. SPICE Se il campo calcolato si basa su una funzione di aggregazione, QuickSight conserva la formula ed esegue il calcolo quando viene generata l'analisi. Questo tipo di campo calcolato è chiamato campo calcolato non materializzato.

Aggiunta o modifica di un campo calcolato per un set di dati
  1. Aprire il set di dati che si desidera utilizzare. Per ulteriori informazioni, consulta Modifica di set di dati.

  2. Nella pagina di preparazione dei dati, completa una delle seguenti operazioni:

    • Per creare un nuovo campo, scegli Aggiungi campo calcolato sulla sinistra.

    • Per modificare un campo calcolato esistente, selezionalo da Campi calcolati sulla sinistra, quindi scegli Modifica dal menu contestuale (fai clic con il pulsante destro del mouse).

    Edit calculated field interface showing YoY%diff formula and function categories.
  3. Nell'editor di calcolo, inserisci un nome descrittivo in Aggiungi titolo per assegnare un nome al nuovo campo calcolato. Questo nome apparirà nell'elenco dei campi del set di dati, quindi dovrebbe essere simile agli altri campi. Per questo esempio, assegnamo un nome al campo Total Sales This Year.

  4. (Facoltativo) Aggiungi un commento, ad esempio per spiegare a cosa serve l'espressione, racchiudendo il testo tra barre e asterischi.

    /* Calculates sales per year for this year*/
  5. Identifica i parametri, le funzioni e gli altri elementi da utilizzare. Per questo esempio, dobbiamo identificare quanto segue:

    • Il parametro da usare

    • Le funzioni ifelse e datediff

    Vogliamo creare una istruzione del tipo "Se la vendita è avvenuta durante quest'anno, mostra le vendite totali, altrimenti mostra 0".

    Per aggiungere la funzione ifelse, apri l'elenco Funzioni. Scegli Tutto per chiudere l'elenco di tutte le funzioni. Ora dovresti vedere i gruppi di funzioni: Aggregato, Condizionale, Data e così via.

    Scegli Condizionale, quindi fai doppio clic su ifelse per aggiungerlo all'area di lavoro.

    ifelse()
  6. Posiziona il cursore all'interno della parentesi nell'area di lavoro e aggiungi tre righe vuote.

    ifelse( )
  7. Posiziona il cursore sulla prima riga vuota, individua la funzione dateDiff. È elencata in Funzioni in Date. Puoi trovarla anche inserendo date in Cerca funzioni. La funzione dateDiff restituisce tutte le funzioni che hanno date come parte del loro nome. Non restituisce tutte le funzioni elencate in Date; ad esempio, la funzione now non è presente nei risultati della ricerca.

    Fai doppio clic su dateDiff per aggiungerla alla prima riga vuota dell'istruzione ifelse.

    ifelse( dateDiff() )

    Aggiungi i parametri utilizzati da dateDiff. Posiziona il cursore all'interno delle parentesi dateDiff per iniziare ad aggiungere date1, date2 e period:

    1. Per date1: il primo parametro è il campo che contiene la data. Individualo in Campi e aggiungilo all'area di lavoro facendo doppio clic su di esso o inserendone il nome.

    2. Per date2, aggiungi una virgola, quindi scegli truncDate() per Funzioni. All'interno della parentesi, aggiungi periodo e data, in questo modo: truncDate( "YYYY", now() )

    3. Per period: aggiungi una virgola dopo date2 e inserisci YYYY. Questo è il periodo dell'anno. Per visualizzare un elenco di tutti i periodi supportati, cerca dateDiff nell'elenco Funzioni e apri la documentazione scegliendo Scopri di più. Se stai già visualizzando la documentazione, come stai facendo ora, consulta dateDiff.

    Aggiungi degli spazi per una maggiore leggibilità, se lo desideri. L'espressione avrà un aspetto simile al seguente.

    ifelse( dateDiff( {Date}, truncDate( "YYYY", now() ) ,"YYYY" ) )
  8. Specifica il valore di ritorno. Per il nostro esempio, il primo parametro in ifelse deve restituire il valore TRUE o FALSE. Poiché vogliamo l'anno corrente e lo stiamo confrontando con quest'anno, specifichiamo che l'istruzione dateDiff deve restituire 0. La parte if di ifelse viene valutata true per le righe in cui non vi è differenza tra l'anno di vendita e l'anno corrente.

    dateDiff( {Date}, truncDate( "YYYY", now() ) ,"YYYY" ) = 0

    Per creare un campo TotalSales per l'anno passato, puoi cambiare 0 in 1.

    Un altro modo per fare la stessa cosa è usare addDateTime invece di truncDate. Quindi, per ogni anno precedente, si modifica il primo parametro per addDateTime in modo che rappresenti ciascun anno. A tale scopo, si utilizza -1 per l'anno scorso, -2 per l'anno precedente e così via. Se si utilizza addDateTime, si lascia la funzione dateDiff = 0 per ogni anno.

    dateDiff( {Discharge Date}, addDateTime(-1, "YYYY", now() ) ,"YYYY" ) = 0 /* Last year */
  9. Sposta il cursore sulla prima riga vuota, appena sotto dateDiff. Aggiungi una virgola.

    Per la parte then dell'istruzione ifelse, dobbiamo scegliere la misura (parametro) che contiene l'importo delle vendite, TotalSales.

    Per scegliere un campo, apri l'elenco Campi e fai doppio clic su un campo per aggiungerlo allo schermo. Oppure puoi inserire il nome. Aggiungi parentesi graffe { } attorno ai nomi che contengono spazi. È probabile che il parametro abbia un nome diverso. Puoi sapere quale campo è un parametro dal simbolo numerico che lo precede (#).

    L'espressione dovrebbe avere il seguente aspetto.

    ifelse( dateDiff( {Date}, truncDate( "YYYY", now() ) ,"YYYY" ) = 0 ,{TotalSales} )
  10. Aggiungi una clausola else. La funzione ifelse non ne richiede una, ma vogliamo aggiungerla. Ai fini della rendicontazione, di solito non si desidera avere valori nulli, perché a volte le righe con valori null vengono omesse.

    Abbiamo impostato la parte else di ifelse su 0. Il risultato è che questo campo è 0 per le righe che contengono le vendite degli anni precedenti.

    Per fare ciò, nella riga vuota aggiungi una virgola e poi un 0. Se hai aggiunto il commento all'inizio, l'espressione ifelse completa dovrebbe essere simile alla seguente.

    /* Calculates sales per year for this year*/ ifelse( dateDiff( {Date}, truncDate( "YYYY", now() ) ,"YYYY" ) = 0 ,{TotalSales} ,0 )
  11. Salva il tuo lavoro selezionando Salva in alto a destra.

    Se ci sono errori nell'espressione, l'editor visualizza un messaggio di errore in basso. Controlla se nell'espressione è presente una linea ondulata rossa, quindi posiziona il cursore su quella linea per vedere qual è il messaggio di errore. Gli errori più comuni includono punteggiatura mancante, parametri mancanti, errori di ortografia e tipi di dati non validi.

    Per uscire senza apportare modifiche, scegli Annulla.

Aggiunta di un valore di parametro a un campo calcolato
  1. Puoi fare riferimento ai parametri nei campi calcolati. Aggiungendo il parametro all'espressione, si aggiunge il valore corrente di quel parametro.

  2. Per aggiungere un parametro, apri l'elenco Parametri e seleziona il parametro di cui desideri includere il valore.

  3. (Facoltativo) Per aggiungere manualmente un parametro all'espressione, digita il nome del parametro. Quindi racchiudilo tra parentesi graffe {} e aggiungi il prefisso $, ad esempio ${parameterName}.

È possibile modificare il tipo di dati di qualsiasi campo del set di dati, inclusi i tipi di campi calcolati. Puoi scegliere solo i tipi di dati che corrispondono ai dati presenti nel campo.

Modifica del tipo di dati di un campo calcolato
  • Per Campi calcolati (a sinistra), scegli il campo che desideri modificare, quindi scegli Cambia tipo di dati dal menu contestuale (clic con il pulsante destro del mouse).

A differenza degli altri campi del set di dati, i campi calcolati non possono essere disabilitati. Invece, eliminali.

Eliminazione di un campo calcolato
  • Per Campi calcolati (a sinistra), scegli il campo che desideri modificare, quindi scegli Elimina dal menu contestuale (clic con il pulsante destro del mouse).

Gestione dei valori decimali nei campi calcolati

Quando il set di dati utilizza la modalità query diretta, il calcolo del tipo di dati decimale è determinato dal comportamento del motore di origine da cui proviene il set di dati. In alcuni casi particolari, QuickSight applica gestioni speciali per determinare il tipo di dati del calcolo di output.

Quando il set di dati utilizza la modalità di interrogazione SPICE e viene materializzato un campo calcolato, il tipo di dati del risultato dipende dagli operatori di funzione specifici e dal tipo di dati dell'input. Le tabelle seguenti mostrano il comportamento previsto per alcuni campi calcolati numerici.

Operatori unari

La tabella seguente mostra quale tipo di dati viene emesso in base all'operatore utilizzato e al tipo di dati del valore immesso. Ad esempio, se si immette un numero intero in un calcolo abs, il tipo di dati del valore di output è intero.

Operatore Input type (Tipo input) Output type (Tipo di output)
abs Fisso con valori decimali Fisso con valori decimali
Int Int
Flottante decimale Flottante decimale
ceil Fisso con valori decimali Int
Int Int
Flottante decimale Int
exp Fisso con valori decimali Flottante decimale
Int Flottante decimale
Flottante decimale Flottante decimale
floor Fisso con valori decimali Int
Int Int
Flottante decimale Int
ln Fisso con valori decimali Flottante decimale
Int Flottante decimale
Flottante decimale Flottante decimale
log Fisso con valori decimali Flottante decimale
Int Flottante decimale
Flottante decimale Flottante decimale
round Fisso con valori decimali Fisso con valori decimali
Int Fisso con valori decimali
Flottante decimale Fisso con valori decimali
sqrt Fisso con valori decimali Flottante decimale
Int Flottante decimale
Flottante decimale Flottante decimale

Operatori binari

La tabella seguente mostra quale tipo di dati viene emesso in base ai tipi di dati dei due valori immessi. Ad esempio, per un operatore aritmetico, se si forniscono due tipi di dati interi, il risultato del calcolo viene restituito come numero intero.

Per gli operatori di base (+, -, *):

Numero intero Fisso con valori decimali Flottante decimale

Numero intero

Numero intero

Fisso con valori decimali

Flottante decimale

Fisso con valori decimali

Fisso con valori decimali

Fisso con valori decimali

Flottante decimale

Flottante decimale

Flottante decimale

Flottante decimale

Flottante decimale

Per gli operatori di divisione (/):

Numero intero Fisso con valori decimali Flottante decimale

Numero intero

Flottante decimale

Flottante decimale

Flottante decimale

Fisso con valori decimali

Flottante decimale

Fisso con valori decimali

Flottante decimale

Flottante decimale

Flottante decimale

Flottante decimale

Flottante decimale

Per operatori esponenziali e mod (^, %):

Numero intero Fisso con valori decimali Flottante decimale

Numero intero

Flottante decimale

Flottante decimale

Flottante decimale

Fisso con valori decimali

Flottante decimale

Flottante decimale

Flottante decimale

Flottante decimale

Flottante decimale

Flottante decimale

Flottante decimale