
Saper lavorare con i dati richiede la conoscenza dei diversi formati di dati che occorre analizzare.
Formati diversi, compressione diversa e su sistemi diversi: è facile fare confusione! Nel mondo reale, le persone raramente ricevono dati accurati e puliti.
Pertanto, come primo step è importante che qualsiasi analista dei dati sia a conoscenza di diversi formati di file, al fine di organizzarne la gestione e l’utilizzo nel modo più appropriato ed efficiente.
Questo articolo fornisce i principali formati utili che dovrebbe conoscere chi intende eseguire un’analisi dei dati. Per prima cosa mostreremo diversi formati di file comuni utilizzati nel settore e poi come essi possono essere raggruppati.
Formato file
Un formato file è un modo standard in cui le informazioni vengono codificate per l’archiviazione in un file. Innanzitutto, il formato del file specifica se il file è un file binario o ASCII. In secondo luogo, ci mostra come sono organizzate le informazioni.
Ad esempio, il formato di file con valori separati da virgola (CSV) memorizza i dati tabulari in testo semplice.
Per identificare un formato di file, di solito puoi dare un’occhiata all’estensione del file per avere un’idea. Ad esempio, un file salvato con il nome “Analisi” nel formato “CSV” apparirà come “Analisi.csv”. Notando l’estensione “.csv” possiamo chiaramente identificare che si tratta di un file “CSV” e che i dati sono memorizzati in un formato tabellare.
La modifica dell’estensione del file potrebbe non essere un problema per un programma che utilizza o riconosce un particolare formato di file, poiché può effettivamente esaminare i bit nel file per vedere se il formato (layout) è uno che riconosce.
Formati più comuni
Vediamo ora quindici formati file più diffusi.
1) Formato CSV (Comma Separated Values): Ogni riga nel file CSV rappresenta un’osservazione e viene comunemente chiamata record. Ogni record può contenere uno o più campi (colonne) che sono separati da una virgola, come possiamo vedere da immagine seguente.
In questo caso abbiamo 4 campi: X, Y1, Y2 e Y3. Di righe o record ne abbiamo 7 (vengono indicate con un invio a capo). Ad esempio, guardando la prima riga avremo 1,96 che fa riferimento al campo X, 3,90 al campo Y1, 4,76 al campo Y2 e 5,48 al campo Y3. E così via per tutte le altre righe.
2) Formato TSV (Tab Separated Values): A volte potresti incontrare file in cui i campi non sono separati usando una virgola ma sono separati usando il tasto tab, come mostra l’esempio seguente.
Codice Descrizione e Quantità sono le tre colonne, e ci sono 5 righe. Come prima AA1 fa riferimento al campo Codice, palla al campo Descrizione e 7 al campo quantità per quanto riguarda la prima riga. E così via per le altre righe.
3) Formato Txt: Nel formato di file testo normale, tutto è scritto in testo normale. Il formato di file txt può essere facilmente letto da qualsiasi programma, ma la sua interpretazione è molto più complessa.
4) Formato Docx: Un file con estensione DOCX è un file di documento in formato XML aperto di Microsoft Word. I file DOCX sono basati su XML e possono contenere testo, oggetti, stili, formattazione e immagini, tutti archiviati come file separati e infine compattati in un unico file DOCX compresso ZIP.
Microsoft ha iniziato a utilizzare i file DOCX in Microsoft Word a partire da Word 2007. Versioni precedenti di Word utilizzano l’estensione di file DOC.
Formati simili a Docx sono Pages per i Mac e Odt per chi si avvale di Open Office anziché Microsoft Office.
5) Formato PDF (Portable Document Format): è un formato di file che ha catturato tutti gli elementi di un documento stampato come un’immagine elettronica che è possibile visualizzare, navigare, stampare o inoltrare a qualcun altro. I file PDF vengono creati utilizzando Adobe Acrobat, Acrobat Capture o prodotti simili.
6) Formato immagine: I file di immagine sono probabilmente il formato di file più affascinante utilizzato nella scienza dei dati. Qualsiasi applicazione di computer vision si basa sull’elaborazione delle immagini.
Solitamente i file di immagine sono tridimensionali, con valori RGB. Ma possono anche essere bidimensionali (scala di grigi) o 4-dimensionali (come un’immagine composta da pixel e metadati ad essa associati).
Tra i formati immagine più diffusi abbiamo il Jpeg, il Png e Gif (ma ce ne sono anche altri, che puoi trovare qua).
7) Formato Zip: è un formato di file di archivio. Esso in pratica è un formato di compressione senza perdita di dati, il che significa che se si comprimono più file utilizzando il formato ZIP, è possibile ripristinare completamente i dati dopo la decompressione del file ZIP.
Il formato di file ZIP utilizza molti algoritmi di compressione per comprimere i documenti. Puoi facilmente identificare un file ZIP con l’estensione .zip.
Esistono molti formati di archivio dati di computer comuni per la creazione di file di archivio. Zip, RAR e Tar sono i formati di file di archivio più popolari per la compressione dei dati.
8) Formato HTML (HyperText Mark-up Language): è un linguaggio di Markup che viene utilizzato per creare pagine web. Si compongono di tag, o etichette che sono già definiti dagli standard del linguaggio. Ogni Browser riceve dal server il linguaggio HTML, lo interpreta e come risultato genera le pagine web dove navighiamo quotidianamente.
9) Formato SQL (Standard Query Language): linguaggio ampiamente conosciuto da chi conosce i database ed è molto utilizzato per l’analisi dei dati. Tramite una serie di comandi standard è possibile interrogare i database (attraverso stringhe di codice definite Query).
Da qualche mese ho iniziato a imparare il formato SQL perché richiesto in ambito lavorativo, nella piattaforma di Sequel Server Management Studio 2017. È uno strumento utilissimo per modificare la struttura di un database relazionale, per inserire, eliminare, aggiornare o estrarre i dati velocemente.
10) Formato XLSX: Introdotto con Microsoft Office 2007, rappresenta un formato di file basato su XML creato da Microsoft Excel, lo strumento giornaliero indispensabile per molti di noi, e che permette di salvare i dati sotto forma di tabelle utili a calcoli e analisi dei dati.
I dati in formato XLSX sono organizzati sotto le celle e le colonne in un foglio. Ogni file XLSX può contenere uno o più fogli.
L’alternativa all’XLS è il formato Ods di OpenOffice.
11) Formato HDF (Hierarchical Data Format): sono il formato di file standard per l’archiviazione di dati scientifici. Possono essere utilizzati per ogni dimensione e tipo di sistema e anche per archiviare dati semplici in quanto possiedono uno storage flessibile ed efficiente.
Sono presenti più formati HDF. Tuttavia, HDF5 è l’ultima versione progettata per risolvere alcune delle limitazioni dei vecchi formati HDF.
Il formato HDF5 ha alcune somiglianze con XML: in particolare sono entrambi auto-descrittivi e consentono agli utenti di specificare relazioni e dipendenze di dati complessi. Per maggiori informazioni su questo formato file vedi questo articolo.
12) Formato JSON (Javascript Job Notation): è un modo per archiviare le informazioni in modo organizzato e di facile accesso. In poche parole, ci fornisce una raccolta di dati leggibile a cui possiamo accedere in modo veramente logico.
Per questo motivo è molto usato nello sviluppo web soprattutto nella parte di comunicazione client- server. È il tipo di documento dei database non relazionali, come ad esempio MongoDB, in quanto più versatile rispetto a CSV.
13) XML (Extensible Markup Language): anch’esso utilizzato nella comunicazione client-server, anche se oggi è stato in gran parte sostituito dal più versatile JSON. Tale linguaggio di Markup, si basa sull’utilizzo di tag racchiusi tra un minore e maggiore. Questi ultimi possono essere definiti a piacimento per organizzare le informazioni.
14) Formato MP3: formato audio tra i più conosciuti e utilizzati. Si avvale di algoritmi di compressione per produrre file di buona qualità e dimensioni minime. Grazie alla compressione audio “Layer 3”, un file MP3 può essere rimpicciolito sino ad occupare 1/10 dello spazio occupato solitamente da file WAV.
Altri formati audio diffusi sono: WMA (Windows Media Audio), AAC (Advanced Audio Coding), AIFF (Audio Interchange File Format) e WAV (Waveform Audio Format). Per maggiori informazioni in merito vedi questo articolo.
15) Formato MP4: Il formato di file MP4 è un formato di file multimediale utilizzato per archiviare digitalmente file audio e video e anche per lo streaming video su Internet. Il formato file MP4 è fondamentalmente un contenitore che contiene file audio e video codificati digitalmente.
Sebbene le persone associno il più delle volte MP4 ad audio e video, perché è un contenitore, in realtà può contenere anche altri tipi di dati, come ad esempio, immagini e sottotitoli. Altre estensioni di file, come .M4v, .3gp, .M4R e .AAC sono anche associate a MP4 con .mp4, .m4A e .m4p (altri formati invece li puoi trovare qui).
Tipologia di dati contenuti all’interno dei file
Ci tenevo a concludere l’articolo enunciando le tipologie di dati che questi formati possono includere. Sappiamo tutti che i file contengono al proprio interno dei dati e sono proprio questi dati che, a seconda della loro natura, possono essere definiti in:
- Dati strutturati
- Dati semistrutturati
- Dati non strutturati
Dati strutturati
I dati strutturati sono informazioni, in genere file di testo, visualizzati in colonne e righe con titolo che possono essere facilmente ordinati ed elaborati dagli strumenti di data mining. Ciò potrebbe essere visualizzato come un archivio perfettamente organizzato in cui tutto è identificato, etichettato e di facile accesso.
I principali formati di file che rientrano in questa classificazione sono:
- CSV
- TSV
- SQL
- XLS
Per la maggior parte, i dati strutturati si riferiscono a informazioni con un alto grado di organizzazione, in modo tale che l’inclusione in un database relazionale sia semplice e facilmente ricercabile tramite semplici algoritmi e operazioni di ricerca.
Dati semistrutturati
I dati semi-strutturati mantengono tag e contrassegni interni che identificano elementi di dati separati, il che consente il raggruppamento e le gerarchie di informazioni. Questo tipo di dati rappresenta solo circa il 5-10% della torta di dati strutturata/semi-strutturata/non strutturata.
I principali formati di file che rientrano in questa classificazione sono:
- JSON
- XML
Considera che sia i documenti sia i database possono essere semi-strutturati. Ad esempio, un documento di Word è generalmente considerato come non strutturato. Aggiungendo tag di metadati sotto forma di parole chiave e altri metadati, che rappresentano il contenuto del documento, renderai il file semi-strutturato in quanto migliorerai la ricerca da parte degli utenti che cercheranno tali termini.
Tuttavia, il documento manca ancora dei legami che possiedono i database, quindi non è completamente strutturato.
Dati non strutturati
I dati non strutturati, a differenza dei precedenti tipi, non sono composti da nessun tipo di legame. Manca la struttura e bisogna crearla. Esempi di dati non strutturati più diffusi sono:
- File di testo: elaborazione testi, file pdf, word, presentazioni, log.
- Email: l’e-mail ha una struttura interna grazie ai suoi metadati e a volte ci si riferisce ad essa come semi-strutturati. Tuttavia, il suo campo messaggio non è strutturato e gli strumenti di analisi tradizionali non possono analizzarlo.
- Social media: dati da Facebook, Twitter, LinkedIn e qualsiasi altro social network.
- Sito web: YouTube, Instagram, siti di condivisione di foto.
- Dati mobili: messaggi di testo, posizioni.
- Comunicazioni: chat, messaggistica istantanea, registrazioni telefoniche, software di collaborazione.
- Media: MP3, foto digitali, file audio e video MP4.
- Applicazioni aziendali: documenti e applicazioni di produttività.
La gestione di questi tipi di file risulta più complessa, proprio perché non c’è un’organizzazione concisa del dato, ed è molto più difficile analizzarne i contenuti, anche se oggi con il machine learning e l’intelligenza artificiale si stanno facendo enormi passi in questo senso.