KNOWLEDGE BASE

Quando usare una funzione attributo (ATTR)


Pubblicato: 27 May 2014
Data dell'ultima modifica: 30 Nov 2023

Domanda

Come funziona la funzione Attributo (ATTR) e come differisce dalle altre aggregazioni quali MIN o SUM.

Ambiente

Tableau Desktop

Risposta

ATTR() indica più valori

L'aggregazione di ATTR() indica la presenza di più valori, ma ne era previsto solo uno.

Ad esempio, quando unisci due o più origini dati, i campi dell'origine dati secondaria vengono inclusi automaticamente in ATTR() perché i campi di un'origine dati secondaria devono essere aggregati. Se sono presenti più valori per una dimensione secondaria, ATTR(Dimensione secondaria) mostrerà un asterisco nella vista, come spiegato ulteriormente in Risoluzione dei problemi di combinazione dei dati: Nel .

Se hai utilizzato un'altra aggregazione al posto di ATTR(), Tableau Desktop mostrerà informazioni fuorvianti. Funzioni come MIN(Dimensione secondaria) mostrerebbero il valore della prima dimensione e sarebbe impossibile dimostrare la presenza effettiva di più valori nell'origine dati secondaria. L'asterisco indica che devi regolare la relazione o la vista.
 

Funzionamento

ATTR() confronta tutti i valori di ciascun record nei dati sottostanti che vengono raggruppati in un'unica partizione nella vista (ad esempio, una barra, un cerchio, una cella, ecc...) e se i valori sono tutti gli stessi, ATTR() restituirà tale valore. Altrimenti ATTR() restituirà un asterisco.

Nella sua forma più semplice, la formula si legge così:
 
IF MIN ([dimension]) = MAX ([dimension]) THEN MIN ([dimension]) ELSE "*"  END

La funzione ATTR valuta tutti i membri all'interno del campo e restituisce un valore se 1) è presente un solo valore (MIN = MAX) o 2) tutti i membri sono identici (MIN = MAX) altrimenti restituisce "*". Ciò può essere interpretato come "è presente più di un valore".

Puoi creare la funzione di base ATTR aggiungendo condizioni che indichino quando la funzione ATTR deve essere attivata, per esempio:
 
IF ISNULL ([dimension]) THEN NULL
ELSEIF MIN ([dimensione]) = MAX ([dimensione]) THEN MIN ([dimensione])
ELSE "*" 
END

 
(Aggiorna i campi dimensione [dimensione] con le tue dimensioni).
 

Usa i casi per ATTR()

  • Nell'esempio sopra, ATTR() può indicare la presenza di più valori provenienti dall'origine dati secondaria.
     
  • Le dimensioni aggiunte a Informazioni nella scheda Indicatori vengono incluse automaticamente in ATTR() perché le dimensioni sulla descrizione devono essere aggregate. Se utilizzi un'altra aggregazione, come MIN(), nella descrizione viene visualizzato un valore singolo che può indurre il visualizzatore a pensare erroneamente che esista solo un unico valore. Pertanto, in ATTR() verrà visualizzato un asterisco a indicare che devi regolare la vista o i valori aggiunti nella descrizione. Vedi Visualizzazione degli asterischi nelle descrizioni.
     
  • Come con altre aggregazioni, puoi utilizzare ATTR() per modificare un valore non aggregato in un valore aggregato per risolvere errori di aggregazione nel calcolo. Vedi Aggregare messaggi di errore in un editor di calcolo.

    Nota: quando un calcolo che restituisce dati numerici contiene ATTR(), se ATTR() contiene più valori, il calcolo restituirà NULL al posto di un asterisco.
     
  • ATTR() può essere utilizzato come precauzione per proteggersi da eventuali modifiche ai dati.

Limiti

Con questo articolo hai risolto il problema?