Insights / Blog

Connettore PDF in Tableau

Uno dei punti di forza di Tableau, prima ancora delle straordinarie possibilità di visualizzazione, consiste da sempre nella capacità di connettersi a una moltitudine di tipi diversi di basi di dati da utilizzare come data source. Excel, CSV e file di tipo geospaziale (spatial file) sono quelli usati più frequentemente, ma costituiscono solo una piccola parte degli oggetti ai quali Tableau riesce a connettersi (per non parlare poi delle potenzialità server).

Il nostro software di Data Visualization preferito prevede poi la lettura di un tipo di file che ad oggi è tuttavia poco utilizzato, nonostante ciò sia possibile dalla versione 10.3 (come peraltro già anticipato qui). Stiamo parlando del formato Portable Document Format (PDF). Tutti noi ne abbiamo usufruito almeno una volta, costituisce una delle tipologie di file di testo più diffuse nonché uno degli standard di realizzazione di una infinita gamma di documenti (dai moduli per gli abbonamenti ai trasporti pubblici, alle tesi di laurea fino agli articoli scientifici). Nonostante ciò, capita raramente di utilizzare questi file come data source per Tableau. Per questo motivo, ho deciso di spiegare in questo blog come fare per connettere i file PDF a Tableau e come importare correttamente i dati in esso contenuti. Iniziamo!

Importare dati da un file PDF in Tableau

Un PDF può presentarsi in molteplici modi: può contenere i dati che abbiamo bisogno sotto forma di tabella e null’altro, oppure può capitare che le nostre tabelle di interesse siano “immerse” nel testo di un report o di un articolo, oppure siano circondate da immagini e grafici. È possibile dunque per Tableau riuscire a leggere i dati che ci interessano, isolandoli da tutto il resto? La risposta, ovviamente, è si.

Apriamo dunque il nostro software, scegliamo dal menù a sinistra Connect to a file -> PDF file e selezioniamo il documento che ci interessa (per questo caso pratico utilizzerò l’Annuario Statistico Italiano 2017, scaricabile gratuitamente dal sito dell’Istat). A questo punto comparirà la seguente schermata:

Da questa finestra possiamo dire a Tableau se i dati che ci interessano si trovano:

  • in tutto il file;
  • in una pagina specifica;
  • in più pagine consecutive.

Negli ultimi due casi, basta inserire il numero della pagina (o delle pagine) e il software procederà ad analizzarla alla ricerca di dati da utilizzare come input. Attenzione però! Tableau considera la prima pagina del documento come la pagina 1, come gran parte dei lettori PDF. Sul documento, tuttavia, la stessa pagina potrebbe comparire con un numero diverso o addirittura senza numero (ad esempio se il file prevede un frontespizio e/o un indice). Quindi, nella finestra di dialogo vista in precedenza va inserito il numero effettivo della pagina mostrato dal lettore PDF, e non il numero indicato nel documento.

Importare una singola pagina

Ad esempio, voglio importare i dati presenti nella tabella Volontari per età e settore di attività prevalente presente alla pagina 725 (vedi immagine sotto). Per riuscire nel mio intento, tuttavia, il numero che devo inserire non è 725 ma 749, cioè il numero di pagina effettivo del file.

Inseriamo quindi il numero giusto e diamo OK. Adesso vediamo sulla sinistra il nostro file PDF mostrato col nome “Page 749 Table 1” il, siccome in questa pagina è presente un’unica tabella, viene caricato direttamente nel canvas. Notiamo subito che Tableau visualizza correttamente i nostri dati. La tabella infatti era già nel formato ideale (nomi dei campi e valori entrambi disposti su una singola linea), senza colori (i quali possono alterare l’identificazione del dato). Nonostante ciò, potrebbe comunque capitare che Tableau possa non riconoscere i campi numerici. In questo caso basta abilitare il Data Interpreter sulla sinistra spuntando l’apposita casellina per avere finalmente i dati pronti all’uso.

 

Il Data Interpreter risulta molto utile anche quando le tabelle non si presentano nel formato preferito da Tableau. Prendiamo ad esempio la tabella Variazioni amministrative e territoriali per ripartizione geografica a pagina 10 (numero effettivo 34).

 

Dalla schermata Data Source di Tableau portiamo il mouse sul nome del file in alto a sinistra sotto Connections, clicchiamo sulla freccetta al lato e selezioniamo Rescan PDF file. Si aprirà così la finestra di dialogo che ci consentirà di poter importare la nuova tabella, mettiamo dunque il numero corretto e diamo OK. Questa volta vediamo che i nomi dei campi sono distribuiti su più righe. Ciò crea dei problemi di riconoscimento in Tableau. Quando infatti proviamo a importare la tabella, seguendo la stessa procedura descritta in precedenza, otteniamo il seguente risultato:

La parte dei nomi relativi ai campi presente nella prima riga compare correttamente negli header, mentre il resto è finito nel corpo della tabella, producendo così un “miscuglio” di testo e numeri. Anche stavolta però il Data Interpreter ci viene in soccorso risolvendo tutti i nostri problemi. Una volta abilitato, infatti, il risultato migliora drasticamente:

Il Data Interpreter ha riconosciuto che i valori presenti nelle prime righe sono in realtà parti dei nomi delle colonne, e li ha riportati tutti nella prima riga, lasciando nel corpo della tabella solo i valori numerici (interpretando dunque correttamente i campi come misure).

Importare tabelle da più pagine

Vediamo adesso un ultimo caso, l’importazione di tabelle che continuano in più pagine. Supponiamo di voler importare i dati presenti nella tabella Persone di 6 anni e più che negli ultimi 12 mesi hanno visitato musei, mostre o siti archeologici e monumenti
per frequenza, classe di età, sesso, regione e tipo di comune presente nella pagine 371-372 (395-396 effettive). Selezioniamo di nuovo il comando Rescan PDF file così da far comparire la finestra di dialogo, nella quale immetteremo i seguenti comandi:

Dopo aver dato OK, noteremo subito che nella sezione Tables sono apparse due tabelle: “Page 395 Table 1” e “Page 396 Table 1”. Per ottenere un dataset unico che contenga tutti i dati, spostiamola prima tabella nel canvas, poi prendiamo la seconda e trasciniamola verso la prima. Noteremo che sotto la prima tabella compare adesso la scritta “Drag table to union”. Portiamo la seconda tabella sopra questa scritta e rilasciamola. Abbiamo così ottenuto una union delle tue tabelle. Abilitiamo infine il Data Interpreter per consentire al software di riconoscere le Misure. Il risultato finale sarà quello mostrato di seguito:

Avete notato? Tableau ha aggiunto una nuova colonna in fondo al dataset – Table Name – contenente il nome della tabella alla quale i dati si riferiscono. In questo modo possiamo continuare a portarci dietro l’informazione relativa all’origine dei dati, senza alcuna operazione aggiuntiva.

Per questo articolo è tutto, gente. Seguitemi su Tableau Public, Twitter e Linkedin per altre novità relative al mondo di Tableau!

Pharma
Predictive analytics healthcare

Predictive analytics healthcare: come l’AI rivoluziona la medicina

Il mondo dell’healthcare è storicamente legato ai dati. Gli esami, le diagnosi, i successi degli...

Blog
tableau pulse

Tableau Pulse: La GeneAI sbarca su Tableau

Tableau Pulse, introdotto da Salesforce come parte della suite Tableau AI, sfrutta l’intelligenza artificiale generativa...