Condividi tramite


Colonne Pivot

In Power Query è possibile creare una tabella contenente un valore aggregato per ogni valore univoco in una colonna. Power Query raggruppa ogni valore univoco, esegue un calcolo aggregato per ogni valore e inserisce la colonna in una nuova tabella.

Diagramma che mostra come le colonne pivot modificano una tabella.

Diagramma che mostra la tabella sinistra con una colonna e righe vuote. Una colonna Attributes contiene nove righe con A1, A2 e A3 ripetute tre volte. Una colonna Values contiene, dall'alto verso il basso, i valori da V1 a V9. Con le colonne trasformate tramite pivot, la tabella destra contiene una colonna vuota e righe vuote. I valori degli attributi A1, A2 e A3 sono intestazioni di colonna. La colonna A1 contiene i valori V1, V4 e V7. La colonna A2 contiene i valori V2, V5 e V8. Infine, la colonna A3 contenente i valori V3, V6 e V9.

Si immagini una tabella come quella nell'immagine seguente.

Screenshot della tabella originale usata per eseguire il pivot di una colonna.

Tabella contenente una colonna Country impostata come tipo di dati Testo, una colonna Date impostata come tipo di dati Data e una colonna Valore impostata come tipo di dati Numero intero. La colonna Country contiene stati Uniti nelle prime tre righe, Canada nelle tre righe successive e Panama nelle ultime tre righe. La colonna Date contiene una data nella prima, nella quarta e nella settima riga, una seconda data nella seconda, nella quinta e nell'ottava riga e la terza data nella terza, sesta e nona riga.

Questa tabella contiene valori per paese e data in una tabella semplice. In questo esempio si vuole trasformare questa tabella in modo che la colonna della data venga pivotata, come illustrato nell'immagine seguente.

Screenshot della tabella finale creata tramite il pivot della colonna.

Tabella contenente una colonna Country impostata come tipo di dati Testo, e una prima, una seconda e una terza colonna di date impostate come tipo di dati Numero intero. La colonna Country contiene il Canada nella riga 1, Panama nella riga 2 e stati Uniti nella riga 3.

Annotazioni

Durante l'operazione sulle colonne pivot, Power Query ordina la tabella in base ai valori trovati nella prima colonna, sul lato sinistro della tabella, in ordine crescente.

Per eseguire il pivot di una colonna

  1. Selezionare la colonna che si desidera per effettuare la pivot. In questo esempio selezionare la colonna Data .

  2. Nella scheda Trasforma del gruppo Qualsiasi colonna selezionare colonna Pivot.

    Screenshot della scheda Trasforma selezionata, della colonna Data nella tabella selezionata e dell'opzione Colonna pivot evidenziata.

  3. Nella finestra di dialogo Colonna pivot selezionare Valore nell'elenco Colonna valore.

    Screenshot della finestra di dialogo della colonna pivot con l'opzione Basic selezionata e la colonna Valore impostata su Valore.

    Per impostazione predefinita, Power Query tenta di eseguire una somma come aggregazione, ma è possibile selezionare l'opzione Avanzate per visualizzare altre aggregazioni disponibili.

    Screenshot della finestra di dialogo delle colonne pivot con l'opzione Avanzate selezionata e l'elenco a discesa della funzione di aggregazione visualizzato.

Le opzioni disponibili sono:

  • Non aggregare
  • Conta (tutti)
  • Conteggio (non vuoto)
  • Requisiti minimi
  • Maximum
  • Mediana
  • Somma
  • Medio

Colonne di pivot che non possono essere aggregate

È possibile eseguire il pivot delle colonne senza aggregare quando si utilizzano colonne che non possono essere aggregate oppure l'aggregazione non è necessaria per le operazioni che si sta tentando di eseguire. Si supponga, ad esempio, che una tabella come l'immagine seguente contenga campi Country, Position e Product .

Screenshot della tabella iniziale per illustrare una colonna pivot senza aggregazione.

Tabella con colonna Country contenente STATI UNITI nelle prime tre righe, Canada nelle tre righe successive e Panama nelle ultime tre righe. La colonna Posizione contiene il primo posto nella prima, quarta e settima riga, il secondo posto nella seconda, quinta e ottava riga e il terzo posto nella terza, sesta e nona riga.

Si supponga di voler pivotare la colonna Position in questa tabella in modo da poterne avere i valori come nuove colonne. Per i valori di queste nuove colonne, usare i valori della colonna Product . Selezionare la colonna Position e quindi selezionare Pivot column per ruotare la colonna.

Screenshot della tabella con la colonna Posizioni selezionata e il comando Colonne pivot evidenziato nella scheda Trasforma.

Nella finestra di dialogo Colonna pivot selezionare la colonna Product come colonna valore. Selezionare l'opzione Avanzate nella finestra di dialogo Colonne pivot, e poi selezionare Non aggregare.

Screenshot della finestra di dialogo Colonna pivot con la funzione Valore aggregato impostata su Non aggregare.

Il risultato di questa operazione restituisce il risultato illustrato nell'immagine seguente.

Colonne pivot non aggregano il risultato.

Tabella contenente le colonne Country, First Place, Second Place e Third Place, con la colonna Country contenente Il Canada nella riga 1, Panama nella riga 2 e USA nella riga 3.

Errori quando si usa l'opzione Non aggregare

Il funzionamento dell'opzione Don't aggregate consiste nel fatto che afferra un singolo valore per l'operazione pivot da posizionare come valore per l'intersezione della coppia di colonne e righe. Si supponga, ad esempio, di avere una tabella come quella nell'immagine seguente.

Lo screenshot della tabella iniziale con una colonna Pivot non aggrega l'esempio di errore.

Tabella con colonne Country, Date e Value. La colonna Country contiene stati Uniti nelle prime tre righe, Canada nelle tre righe successive e Panama nelle ultime tre righe. La colonna Date contiene una singola data in tutte le righe. La colonna value contiene vari numeri interi compresi tra 20 e 785.

Vuoi fare il pivot di quella tabella usando la colonna Date e vuoi utilizzare i valori della colonna Value. Poiché questo pivot rende la tabella avere solo i valori Country per le righe e le date come colonne, viene visualizzato un errore per ogni singolo valore di cella perché sono presenti più righe per ogni combinazione di Country e Date. Il risultato di questa operazione di colonna pivot restituisce i risultati mostrati nell'immagine seguente.

Screenshot della colonna Pivot che mostra un esempio di errore nella tabella finale non aggregata.

Si noti il messaggio Expression.Error: There were too many elements in the enumeration to complete the operation. di errore Questo errore si verifica perché l'operazione Non aggregare prevede solo un singolo valore per la combinazione di paese e data.