Informazioni sulle colonne calcolate e sulle misure

Completato
Colonne calcolate Misure
Una nuova colonna viene in genere creata in funzione di altre colonne. Un valore aggregato creato con funzioni DAX.
Associate sempre a una tabella. Non associate a una tabella.
Valutate al momento della creazione. Valutate quando viene compilato l'oggetto visivo.
Calcolate a livello di riga della tabella a cui è associata. Aggregate in base al contesto di riga e filtro: contenuto della pagina del report.

Differenze tra misure e colonne calcolate.

Con le colonne calcolate, è possibile aggiungere nuovi dati a una tabella già presente nel modello di Power BI. Verranno illustrati alcuni casi d'uso comuni: colonne condizionali, operazioni aritmetiche tra colonne e colonne dipendenti da più tabelle.

Video: demo delle colonne calcolate

Creare colonne condizionali

Le colonne condizionali consentono agli analisti di testare scenari logici di variabili e di capire se una determinata condizione è vera o falsa. Il modo più semplice di considerare le colonne condizionali è tramite le funzioni logiche, ad esempio la funzione IF. Questa funzione controlla una condizione e restituisce un valore quando è vera, altrimenti restituisce un secondo valore.

Di seguito è riportato un esempio di colonna condizionale:

Active StoreName = IF( [Status] = "On", [StoreName], "Inactive" )

Nel frammento di codice precedente si verifica se il campo di stato per un archivio è impostato su "attivato". Se l'istruzione è true, si vuole visualizzarne il nome. altrimenti verrà visualizzata la parola "inattivo".

Suggerimento

IN TABLEAU: questo concetto è già noto nella finestra del campo calcolato di Tableau. In Tableau è possibile eseguire istruzioni condizionali usando la sintassi IF/THEN e/o la funzione IF. La funzione IF in Power BI è molto simile alla funzione IF in Tableau.

Eseguire operazioni aritmetiche nelle colonne

L'esecuzione di operazioni aritmetiche nelle colonne calcolate è nota agli analisti di Tableau, ma la sintassi è diversa per alcune funzioni.

Il codice seguente è un esempio di una colonna calcolata che usa una sintassi familiare:

DiscountedPrice = [FullPrice] - [Discount]

In base al codice precedente, "DiscountedPrice" è una colonna calcolata che restituisce il prezzo scontato per un elemento. Questa operazione viene eseguita sottraendo lo sconto applicato all'elemento dal prezzo completo.

Il codice seguente invece è un esempio di colonna calcolata con una sintassi diversa:

ProfitRatio = DIVIDE( [Profit], [Sales] )

Suggerimento

IN TABLEAU: nei campi calcolati la divisione si esegue usando il carattere "/": ProfitRatio = [Profit] / [Sales]

Creare colonne calcolate dipendenti da più tabelle

Power Query è una tecnologia di connessione dati che consente agli analisti di individuare, connettere, combinare e affinare le origini dati. Queste informazioni fanno pensare che Power Query potrebbe essere usato per creare colonne dipendenti da più tabelle. Sfortunatamente, questo non è possibile.

Per sopperire a questa mancanza di Power BI, gli analisti devono usare DAX perché si crea un calcolo che usa le relazioni configurate in Power BI Desktop.

Esempio costo del venduto

Ad esempio, all'utente è stato affidato un nuovo compito per cui deve calcolare il costo del venduto (COGS), usando il prezzo all'ingrosso del prodotto e il numero di unità vendute. Il prezzo all'ingrosso del prodotto è disponibile nella tabella delle dimensioni del prodotto e il numero di unità vendute è contenuto in una tabella dei fatti delle vendite. Ecco un'anteprima dei dati di tutti i componenti di questo esempio:

Anteprima dei dati dell'esempio COGS.

Il frammento di codice seguente è un esempio di colonna calcolata dipendente da più tabelle:

COGS = Sales[Quantity] * RELATED( Product[Wholesale Price] )

Suggerimento

IN TABLEAU: il frammento di codice di Tableau seguente funziona solo se i dati vengono fusi nella dimensione [ProductID] della tabella [Product]: COGS = [Quantity] * [Product].[Wholesales Price]

Suggerimento

IN TABLEAU: se i dati vengono denormalizzati in Tableau Desktop, il codice sarà simile al seguente: COGS = { FIXED [ProductID]: SUM([Quantity] * [Wholesale Price]) }

La funzione RELATED consente agli utenti di usare i valori di altre tabelle nelle colonne calcolate o nelle misure, in base a una relazione esistente.

Il video seguente illustra questa procedura:

Video: Creazione di una colonna calcolata

Un'altra funzione di relazione che è possibile usare è USERELATIONSHIP, che sostituisce le altre relazioni solo per la durata del calcolo. In altre parole, abilita la relazione indicata (in base ai parametri o ai nomi di due colonne) per la durata del calcolo.

Informazioni sulle misure

Le misure sono leggermente diverse dalle colonne calcolate. Non vengono calcolate per ogni riga, ma in base a un'aggregazione.

Video: Demo della creazione di una misura

Misure Definition
= SUM( Sales[Quantity] ) Somma la colonna delle quantità nella tabella delle vendite.
= SUMX( Sales, (Related( Product[Grossi Prezzi] ) * Sales[Quantity] ) ) Cerca il prezzo all'ingrosso nella tabella del prodotto e lo moltiplica per la quantità nella tabella delle vendite (esegue l'iterazione per ogni riga e quindi la somma). Per questa misura si presuppone che ci siano delle relazioni tra le tabelle a cui si fa riferimento.
= [Total Sales] -- [COGS] Sottrae la misura COGS dalla misura delle vendite totali (entrambe devono essere misure e non colonne calcolate).
= DIVIDE( [Gross Profit], [Total Sales] ) Divide la misura del profitto lordo per la misura delle vendite totali.
= SWITCH( DATE[Month], 1, "Gennaio", 2, "Febbraio", 3, "Giorno del mese sconosciuto" ) Modo abbreviato per creare istruzioni IF/THEN con molte condizioni.

Esempi di misure semplici che usano funzioni comuni, insieme alle relative definizioni.

Per altre informazioni sulle colonne calcolate, vedere Creare colonne calcolate in Power BI Desktop

Per altre informazioni su DAX, vedere: Usare DAX in Power BI Desktop