PowerPivot: come creare Pivot Tables da paura!

Come la maggior parte degli on-line Marketeer (o come mi definisce un caro amico, marchettari on-line) passo la maggior parte della mia giornata su Excel. Lo ammetto, non e’ molto elettrizzante, ma solo chi non usa Excel non sa cosa sia in grado di fare e rimarreste sconvolti nel pensare che praticamente qualunque cosa che abbia a che fare con i numeri in questo mondo passa per Excel. Non conosco nessuno alla NASA, ma sono sicuro che senza Excel non sarebbe partito neanche uno dei loro viaggi nello spazio come so, questa volta per certo, che compagnie come Airbus o Boing usano Excel per i loro calcoli strutturali. Insomma, senza Excel il nostro mondo non sarebbe quello che e’.

I-Love-Excel

Ovvio, si potrebbe dire che il merito non e’ di Excel ma, in generale, di tutti quei programmi che permettono di salvare, conservare e analizzare dati come, ad esempio, database vari etc. etc., ma il merito di Excel e’ quello di essere abbastanza semplice da essere usato da tutti e, allo stesso tempo, abbastanza sviluppato da fare qualsiasi sorta di calcolo, operazione, analisi. Tool come le Pivot Tables e comandi come VLOOKUPS sono solo alcuni dei punti forti di Excel, ma, ovviamente ci sono anche molti limiti.

Uno su tutti, almeno per me, e’ sempre stato la lentezza con la quale Excel fa operazioni su grossi fogli di calcolo (ok, certo, dipende anche dal pc che state usando) e il limite imposto il numero massimo di righe (1.048.576). Certo, se lavorate sempre e solo con Excel e file generati con Excel il problema non si pone dato che non creerete MAI un foglio di calcolo con piu’ di 1 milione di righe, ma se incominciate ad usare file CSV allora la storia si complica. E’ abbastanza comune, infatti, esportare grosse quantità di dati in CSV file, lo si può fare da Google Analytics, Omniture e in generale, da qualunque programma che analizza dati, database e fogli elettronici. I file CSV sono scelti per la loro leggerezza e per il fatto che non hanno alcun limite di grandezza. Proprio perché non hanno alcun limite di grandezza potete permettervi il lusso di esportare un CSV file con milioni di righe (ad esempio il l’analisi del traffico di un anno intero per il vostro sito), il punto e’ come fate a lavorarci su con Excel? Come potete creare una Pivot Table con quei dati? O, meglio ancora, come potete incrociare quei dati sul traffico con altri dati sulle conversions (che magari avete in un altro CSV file da milioni di righe)?

Beh, PowerPivot e’ un add-in gratuito di Excel che vi permette di caricare in Excel file con milioni di righe e correlarli ad altri file con milioni di righe e creare delle Pivot Table che, altrimenti, non avreste potuto creare.

Nell’esempio qui sotto ho appena finito di importare 4 CSV file in Excel grazie a PowerPivot, il primo file e’ un CSV file da piu’ di 10 milioni di righe che in un normale foglio elettronico non sarebbe possibile da usare.

PP-GP-test-11

PowerPivot e’ scaricabile gratuitamente a questo link: http://office.microsoft.com/it-it/excel/download-di-powerpivot-HA101959985.aspx

Una volta installato non dovete far altro che aprire Excel e modificare il menu’ in maniera da mostrarvi le opzioni legate, appunto, a PowerPivot. Se non sapete come fare, cliccate su File > Options e selezionate Customize Ribbon, cercate PowerPivot e aggiungetelo al vostro menu’

PP-GP-02

A questo punto tutte le opzioni legate a PowerPivot sono alla portata di un click.

PP-GP-03

Il primo tasto “PowerPivot Window” e’ quello che vi aprirà un altro foglio elettronico dove potrete importare e collegare tutti i dati che volete. In PowerPivot potete importare dati da diverse fonti (CSV, SQL, Access etc. etc.) e creare una correlazione tra di loro usando dei valori unici. Non mi metterò qui a fare l’elenco di tutto quello che potete fare con PowerPivot, primo perche’ esiste gia’ un manuale dettagliato in inglese sul sito della Microsoft e secondo perché se siete arrivati fin qui a leggere di queste cose avete, almeno, una vaga idea di come potrete macinare dati con questo tool, ma voglio fare solo un esempio per far vedere di cosa e’ capace di fare.

Tornando all’esempio di prima, immaginiamo che avete un CSV dove ci sono i dati relativi al traffico che e’ arrivato sul vostro sito di scarpe da un canale specifico. Il CSV ha i seguenti campi: data, id_prodotto, clicks, impressions, costi. In un altro CSV avete invece i dati del vostro back-office: data, id_prodotto, nome_prodotto, conversions, revenue. Se volete unire questi due file e tirarci furi un report dovete copiare i CSV file in Excel, lavorare di VLOOKUP e creare una Pivot Table. Tutto questo, ovviamente, se non superate il limite massimo di Excel. Ma se avete questi dati per un anno intero, o se il vostro sito e’ talmente grande da avere una mole di dati gigantesca anche solo per un mese, Excel non vi basta piu’ ed e’ qui che entra in gioco PowerPivot.

Il primo passo e’ quello di importare in PowerPivot i due file:

PP-GP--test-01

A questo punto avrete due tab, Traffic e Conversions, vediamo come possiamo collegarli. Cliccando sulla Diagram View nella toolbar avremo una visualizzazione delle tabelle di dati che abbiamo e possiamo decidere di creare delle relazioni tra gli elementi delle tabelle:

PP-GP-test-02

Proviamo a collegare, ad esempio, id_prodotto della tabella Traffico a id_prodotto in Conversions. Il sistema ci da’ un errore:

PP-GP-test-03

Abbiamo bisogno, quindi, di dati unici che non siano duplicati. Creiamo, allora, un altro CSV con le date (in maniera da non avere piu’ righe con la stessa data) e un CSV con il nostro inventario (in maniera da non avere i nostri id_prodotto duplicati in diverse righe) e vediamo cosa succede. Lo importiamo all’interno di PowerPivot e creiamo una relazione tra data nella tabella Traffico, data nella tabella Conversions e data nella tabella date. e facciamo lo stesso con id_prodotto in Conversions e Traffico con id_prodotto nel nostro inventario.

PP-GP-test-06

Una volta creata la relazione basta cliccare su PivotTable nella toolbar e abbiamo una sorta su super Pivot Table con tutti i nostri dati dentro. Rispetto ad una classica Pivot Table nel menu’ di creazione della Pivot ci sono 2 cose diverse. Nel rettangolo in rosso potete selezionare i dati da tutti i diversi CSV che avete importato all’interno dalla vostra PowerPivot. In quello verde, invece, ci sono due “slicers” che servono, praticamente, a applicare ulteriori filtri alla vostra Pivot.

PP-GP-test-07

Tornando all’esempio di cui parlavo prima, ipotizziamo che avete un file con i dati del traffic (clicks, impressions, costs. etc. etc.) ed uno con i dati delle conversions (ID_prodotto, revenue etc. etc.) e che volete vedere la performance dei vostri prodotti giorno per giorno.

PP-GP-test-08

Per aggiungere quello che nelle Pivot Tables normali sono i Calculated Fileds (ad esempio calcolare il guadagno definito come revenue costi) bisogna lavorare direttamente sulla sorgente della PowerPivot mentre, pero’, nella Pivot classica avremmo creato un Calculated Filed che risponde semplicemente all’operazione revenue costi nella PowerPivot l’operazione dobbiamo impostarla come SOMMA della revenueSOMMA dei costi

PP-GP-test-09

Creato questo campo ci comparirà nella schermata di creazione della Pivot

PP-GP-test-10

Ovviamente ogni volta che aggiorniamo uno dei CSV (ad esempio aggiungendo i dati diel mese prossimo) ci bastera’ fare un refresh della PowerPivot per avere i dati aggiornati.

Potrei stare qui per giorni ad elencare tutte le funzioni e tutti i calcoli che si possono fare con la PowerPivot, ma penso che questo esempio dia almeno una vaga idea delle potenzialità di questo tool che per tutti gli amanti di Excel (come me) e’ qualcosa di eccezionale per manipolare enormi quantità di dati.

Post che potrebbero interessarti: