Per effettuare operazioni di Data Preparation, Power BI utilizza Power Query, un editor Microsoft con un proprio linguaggio di programmazione (M), che consente di effettuare svariate operazioni di trasformazione e pulizia dei dati.
Per chi (ahimè!) proviene dal mondo Excel, Power Query apparirà come una manna dal cielo: comfort layout Microsoft ed in grado di risolvere tutta una serie di problemi, spesso a fatica affrontati con il nostro caro software di gestione di fogli elettronici.
Ma per fortuna siamo qui a parlare di software di BI: vediamo quindi come effettuare in Power Query due delle più comuni operazioni di data preparation, la Join e la Union.
JOIN IN POWER QUERY
Abbiamo due modi immediati di accedere all’editor di Power Query: in fase di caricamento dei dati, cliccando sul pulsante Transform Data; oppure in ogni momento cliccando sullo stesso pulsante nella sezione Queries del ribbon in alto:
Le Join vengono chiamate Merge, ed è proprio dal pusante Merge Queries, nella sezione Home > Combine, che dobbiamo accedere per crearne una.
Abbiamo due opzioni: Merge Queries, che creerà la Join direttamente nella tabella di partenza, e Merge Queries as New, che creerà la Join in una nuova tabella.
Supponiamo di usare il primo esempio, Una volta aperto il pop up, possiamo selezionare le tabelle con le relative keys ed il join kind, che contiene tutte e sei le modalità di creazione della join.
E’ anche disponibile l’opzione di Fuzzy Matching, che ci permette di creare una join combinando parti di testo.
Una volta settata la join e cliccato su Ok, nella prima tabella apparirà una Table compressa in una colonna, che contiene tutte le colonne della seconda tabella. Possiamo espandere la Table cliccando sul pulsantino accanto al titolo e selezionare solo le colonne che vogliamo tenere nella nuova tabella (deselezionando, ad esempio, la colonna di join che altrimenti sarebbe un doppione). Possiamo anche scegliere di deselezionare l’opzione Use original column name as a prefix, che altrimenti inserirebbe il nome della tabella originaria come prefisso nel nome di ogni campo.
Et voilà, la nostra join è terminata! Ovviamente nel riquadro di destra sono sempre riportati tutti i passaggi effettuati, ed è possibile in ogni momento modificarli o rimuoverli:
UNION IN POWER QUERY
Le Union vengono chiamate Append Queries, ed il pulsante si trova sempre nella sezione Combine sotto Merge Queries:
Anche in questo caso, avremo l’opzione Append Queries e Append Queries as New, a seconda se vogliamo creare o meno una nuova tabella.
Una volta aperto il pop up, Power Query ci chiederà se vogliamo effettuare la Union tra due o più tabelle. Nel primo caso ci basterà selezionare la tabella desiderata, nel secondo dovremo aggiungere nel riquadro Tables to append le tabelle da unire:
Ed ecco pronta anche la nostra Union!
UNION DI PIU’ FILE IN FASE DI CARICAMENTO DATI
Se volessimo importare più file da una stessa cartella ed effettuare già una union, ci basta selezionare Folder come connettore in fase di caricamento dati ed inserire la cartella dal quale selezionare i file:
Nel pop ci appariranno tutti i file che Power Query importerà, e dovremo cliccare su Combine and Transform Data:
A questo punto dovremo scegliere un file come sample, che servirà da base per tutti i nomi dei campi negli altri file, selezionare il foglio da importare e cliccare su Ok:
La nostra union è completata e abbiamo importato in maniera veloce più file contemporaneamente.