Sostituire dati NULL o mancanti con zeri o dati esistenti
Pubblicato: 27 Mar 2017 Data dell'ultima modifica: 09 Feb 2024
Domanda
Come sostituire i valori NULL o mancanti con degli zero.
Nella vista di ogni progetto, ad esempio, dovrebbero essere presenti tre fasi. Nel caso in cui non vi siano dati [Importo] per una fase, la vista dovrebbe visualizzare zero.
Ambiente
Tableau Desktop
Risposta
FAI CLIC PER ESPANDERE L'OPZIONE 1
Opzione 1: usa ZN
Seleziona Analisi > Crea campo calcolato
Nella finestra di dialogo Campo calcolato che si apre, esegui le seguenti operazioni, quindi fai clic su OK:
Attribuisci un nome al campo calcolato. In questo esempio, il campo calcolato è denominato "Sostituisci celle vuote con zero (opz 1)"
Nel campo Formula, crea un calcolo simile a quello riportato di seguito:
ZN(SUM([Amount]))
La funzione ZN() sostituisce tutti i valori NULL con degli zero
Crea un campo calcolato con un nome come "Sostituisci celle vuote con l'ultimo valore(opz 1)" con un calcolo simile al seguente:
IFNULL( SUM([Importo]), PREVIOUS_VALUE(0) )
IFNULL(..., PREVIOUS_VALUE(0)) sostituirà qualsiasi valore NULL con l'ultimo valore di questo calcolo, che crea un ultimo valore in esecuzione.
Sostituisci [Importo] su Testo nella scheda Indicatori con [Sostituisci celle vuote con zero (opz 1)] oppure con [Sostituisci celle vuote con l'ultimo valore (opz 1)] a seconda del valore finale desiderato
(Facoltativo) Personalizza i valori nella vista facendo clic con il pulsante destro del mouse sul valore e formattandolo come desideri.
Per visualizzare i passaggi illustrati nel video riportato sotto, espandi la sezione sopra. Nota: il video è privo di audio.
FAI CLIC PER ESPANDERE L'OPZIONE 2
Opzione 2: sostituisci il filtro con un parametro
Questa opzione sostituirà con degli zeri i dati NULL e quelli esclusi dalla vista tramite filtri.
Fai clic sulla freccia verso il basso di fianco a Dimensioni nel riquadro Dati e seleziona Crea parametro…
Nella finestra di dialogo Crea parametro, esegui le seguenti operazioni e fai clic su OK:
Assegna un nome al parametro. In questo esempio verrà usato il nome "Parametro data"
Per il tipo di dati, seleziona Data
Per i valori consentiti, seleziona Tutti
Fai clic con il pulsante destro del mouse su [Parametri data] nel riquadro Dati e seleziona Mostra controllo parametro
Seleziona Analisi > Crea campo calcolato
Nella finestra di dialogo Campo calcolato che si apre, esegui le seguenti operazioni, quindi fai clic su OK:
Attribuisci un nome al campo calcolato. In questo esempio, il campo calcolato è denominato "Importo filtrato o zero (opz 2)"
Nel campo Formula, crea un calcolo simile a quello riportato di seguito:
ZN( IF [Date] >= [Date Parameter]
THEN [Amount]
END )
La funzione ZN() sostituirà qualsiasi valore NULL con zero. L'istruzione IF sostituisce il filtro [Data].
Crea un campo calcolato con un nome come "Importo filtrato o ultimo valore (opz 2)" con un calcolo simile al seguente:
IFNULL( SUM( IF [Data] >= [Parametro data] THEN [Importo] END ), PREVIOUS_VALUE(0) )
IFNULL(..., PREVIOUS_VALUE(0)) sostituirà qualsiasi valore NULL con l'ultimo valore di questo calcolo, che crea un ultimo valore in esecuzione.
Sostituisci [Importo] su Testo nella scheda Indicatori con [Importo filtrato o zero (opz 2)] oppure con [Importo filtrato o ultimo valore (opz 2)] a seconda del risultato finale desiderato
Rimuovi [Data] dallo spazio Filtri
(Facoltativo) Personalizza i valori nella vista facendo clic con il pulsante destro del mouse sul valore e formattandolo come desideri.
Per visualizzare i passaggi illustrati nel video riportato sotto, espandi la sezione sopra. Nota: il video è privo di audio.
FAI CLIC PER ESPANDERE L'OPZIONE 3
Opzione 3: riprogetta la vista e usa ZN(LOOKUP())
Questa opzione sostituirà con degli zeri i dati NULL, i dati mancanti o esclusi tramite filtri.
Sposta [Fase] dallo spazio Righe allo spazio Colonne
Seleziona Analisi > Crea campo calcolato
Nella finestra di dialogo Campo calcolato che si apre, esegui le seguenti operazioni, quindi fai clic su OK:
Attribuisci un nome al campo calcolato. In questo esempio, il campo calcolato è denominato "Sostituisci celle vuote con zero (opz 3)"
Nel campo Formula, crea un calcolo simile a quello riportato di seguito:
ZN(LOOKUP(SUM([Amount]),0))
Il calcolo LOOKUP() cercherà il valore della cella corrente (specificato dal secondo argomento di LOOKUP() che corrisponde a 0) nella vista; se tale valore è NULL, la funzione ZN() restituirà zero.
Tieni presente che affinché questa opzione funzioni è necessario che nella vista sia presente una cella vuota, in quanto questo calcolo non causerà l'aggiunta di righe/colonne ma scriverà solamente nelle celle vuote. Se ad esempio [Fase] è su Righe, allora "Hibagon" avrà solamente una singola riga di fase. Spostando [Fase] su Colonne, "Hibagon" avrà tre colonne fase in quanto ogni fase è presente in almeno un altro progetto della vista.
Crea un campo calcolato con un nome come "Sostituisci celle vuote con l'ultimo valore (opz 3)" con un calcolo simile al seguente:
Sostituisci [Importo] su Testo nella scheda Indicatori con [Sostituisci celle vuote con zero (opz 3)] oppure con [Sostituisci celle vuote con ultimo valore (opz 3)] in base al risultato desiderato
(Facoltativo) Personalizza i valori nella vista facendo clic con il pulsante destro del mouse sul valore e formattandolo come desideri.
Per visualizzare i passaggi illustrati nel video riportato sotto, espandi la sezione sopra. Nota: il video è privo di audio.
FAI CLIC PER ESPANDERE L'OPZIONE 4
Opzione 4: unisci i dati originali a un elenco principale di valori
Questa opzione mostrerà degli zeri quando i dati sono NULL, mancanti o esclusi tramite filtri.
Crea un file di testo che contenga un elenco principale di tutte le fasi.
Crea un join tra database tra i dati originali e l'elenco principale. Usa i calcoli join per unire le tabelle su 1 = 1
I calcoli join sono una nuova funzionalità introdotta in Tableau Desktop 10.2. Per le versioni precedenti, è necessario creare campi di collegamento fittizi nelle origini dati sottostanti.
Per ulteriori informazioni su come creare join tra database o calcoli join, vedi Creare un join dei dati.
Seleziona Analisi > Crea campo calcolato
Nella finestra di dialogo Campo calcolato che si apre, esegui le seguenti operazioni, quindi fai clic su OK:
Attribuisci un nome al campo calcolato. In questo esempio, il campo calcolato è denominato "Nuovo importo con zeri"
Nel campo Formula, crea un calcolo simile a quello riportato di seguito:
ZN( IF [Stage] = [Stage (Stage Master List)]
THEN [Amount]
END )
Il join crea duplicati dei dati. Di conseguenza, per rimuoverli mostriamo solo i dati in cui la dimensione è NULL o il valore è mancante rispetto allo stesso valore nell'elenco principale.
La funzione ZN() sostituirà qualsiasi valore NULL con zero.
Crea un campo calcolato con un nome come "Nuovo importo con ultimo valore" con un calcolo simile al seguente:
IFNULL( SUM( IF [Fase] = [Fase (Elenco principale)] THEN [Importo] END), PREVIOUS_VALUE(0) )
IFNULL(..., PREVIOUS_VALUE(0)) sostituirà qualsiasi valore NULL con l'ultimo valore di questo calcolo, che crea un ultimo valore in esecuzione.
Usa [Nuovo importo con zeri] o [Nuovo importo con ultimo valore] in base al risultato finale desiderato
(Facoltativo) Personalizza i valori nella vista facendo clic con il pulsante destro del mouse sul valore e formattandolo come desideri.
Per visualizzare i passaggi illustrati nel video riportato sotto, espandi la sezione sopra. Nota: il video è privo di audio.
FAI CLIC PER ESPANDERE L'OPZIONE 5
Opzione 5: aggiungere i dati mancanti all'insieme di dati sottostante
Modifica l'origine dati originale per aggiungere i dati mancanti.
A seconda del caso d'uso, la soluzione migliore potrebbe essere aggiungere dei record fittizi con misure NULL, quindi seguire le istruzioni indicate nell'opzione 1 di cui sopra.
Ulteriori informazioni
Nella cartella di lavoro di esempio allegata vengono utilizzati i dati campione Superstore per illustrare le opzioni precedenti. Tutte le istruzioni vengono avviate dal foglio di lavoro "Originale".
Vi sono tre scenari principali che consentono di creare spazi vuoti da sostituire con degli zeri:
Dati NULL: questo si verifica quando l'insieme di dati sottostanti include dei record ma i valori delle misure sono NULL o vuoti. Nella cartella di lavoro di Excel allegata ("NULL and Missing Examples.xlsx") il progetto "Brosnya" presenta valori NULL per "In corso" e "Completati".
Dati mancanti: questo si verifica quando non vi sono record nell'insieme di dati sottostante. Nei dati di esempio, dal progetto "Hibagon" risultano mancanti "In corso" e "Completati"
Dati di filtro: Nella cartella di lavoro allegata è presente un filtro [Data] che filtra anche "Iniziati" e "In corso" per il progetto "Dalmata". Il progetto "Dalmata" presenta dei record per ogni fase nell'origine dati sottostante.
Tutte le opzioni sostituiranno con degli zeri i dati NULL. Le opzioni 3, 4 e 5 sostituiranno con degli zeri i dati mancanti. Le opzioni 2, 3 e 4 sostituiranno con degli zeri i dati filtrati.
Nella vista è possibile visualizzare righe e colonne aggiuntive con l'opzione Analisi > Layout tabella > Mostra righe/colonne vuote. Tuttavia, in queste righe non è possibile scrivere dati.
Se la tabella incrociata presenta una sola misura, tutti i valori NULL possono essere sostituiti nelle opzioni di formattazione. Consulta Formattare i valori NULL
Grazie per aver inviato il tuo feedback sull'efficacia dell'articolo.