Date post: | 16-Jan-2017 |
Category: |
Data & Analytics |
Upload: | vincenzo-manzoni |
View: | 874 times |
Download: | 0 times |
INTRODUZIONE AI BIG DATA E ALLA SCIENZA DEI DATI
Vincenzo Manzoni vincenzomanzoni.com | [email protected]
Lezione 1 Introduzione al corso; I principali formati dei dati;
Analisi esplorativa dei dati con Excel e SQL.
Introduzione ai Big Data e alla scienza dei dati, Palazzolo Digital Hub, 2014. Copyright: Vincenzo Manzoni
I PARTECIPANTI
2
6
9
Corsisti Uditori
Introduzione ai Big Data e alla scienza dei dati, Palazzolo Digital Hub, 2014. Copyright: Vincenzo Manzoni
DEFINIZIONI
3
Introduzione ai Big Data e alla scienza dei dati
Introduzione ai Big Data e alla scienza dei dati, Palazzolo Digital Hub, 2014. Copyright: Vincenzo Manzoni
DEFINIZIONI
Big Data n. Computing data of a very large size, typically to the extent that its manipulation and management present significant logistical challenges; (also) the branch of computing involving such data (Oxford English Dictionary, 2013).
3
Introduzione ai Big Data e alla scienza dei dati
Introduzione ai Big Data e alla scienza dei dati, Palazzolo Digital Hub, 2014. Copyright: Vincenzo Manzoni
DEFINIZIONI
Big Data n. Computing data of a very large size, typically to the extent that its manipulation and management present significant logistical challenges; (also) the branch of computing involving such data (Oxford English Dictionary, 2013).
3
Introduzione ai Big Data e alla scienza dei dati
Scienza dei dati (Data Science)n. è lo studio su come estrarre conoscenza dai dati.
Introduzione ai Big Data e alla scienza dei dati, Palazzolo Digital Hub, 2014. Copyright: Vincenzo Manzoni
Cosa pensate che faccia uno scienziato dei dati nel suo lavoro quotidiano?
4
Introduzione ai Big Data e alla scienza dei dati, Palazzolo Digital Hub, 2014. Copyright: Vincenzo Manzoni
WORKFLOW
5
Introduzione ai Big Data e alla scienza dei dati, Palazzolo Digital Hub, 2014. Copyright: Vincenzo Manzoni
WORKFLOW
5
Dati grezzi (raw)
Introduzione ai Big Data e alla scienza dei dati, Palazzolo Digital Hub, 2014. Copyright: Vincenzo Manzoni
WORKFLOW
5
Dati grezzi (raw)
Processing
Introduzione ai Big Data e alla scienza dei dati, Palazzolo Digital Hub, 2014. Copyright: Vincenzo Manzoni
WORKFLOW
5
Dati grezzi (raw)
Processing
Dataset
Introduzione ai Big Data e alla scienza dei dati, Palazzolo Digital Hub, 2014. Copyright: Vincenzo Manzoni
WORKFLOW
5
Dati grezzi (raw)
Processing
Dataset
Acquisizione
Introduzione ai Big Data e alla scienza dei dati, Palazzolo Digital Hub, 2014. Copyright: Vincenzo Manzoni
WORKFLOW
5
Dati grezzi (raw)
Processing
Dataset
Modelli statistici (Analisi)
Acquisizione
Introduzione ai Big Data e alla scienza dei dati, Palazzolo Digital Hub, 2014. Copyright: Vincenzo Manzoni
WORKFLOW
5
Dati grezzi (raw)
Processing
Dataset
Modelli statistici (Analisi)
Machine Learning (Previsione)
Acquisizione
Introduzione ai Big Data e alla scienza dei dati, Palazzolo Digital Hub, 2014. Copyright: Vincenzo Manzoni
WORKFLOW
5
Dati grezzi (raw)
Processing
Dataset
Modelli statistici (Analisi)
Machine Learning (Previsione)
Acquisizione Elaborazione
Introduzione ai Big Data e alla scienza dei dati, Palazzolo Digital Hub, 2014. Copyright: Vincenzo Manzoni
WORKFLOW
5
Dati grezzi (raw)
Processing
Dataset
Modelli statistici (Analisi)
Machine Learning (Previsione)
Data driven products
Acquisizione Elaborazione
Introduzione ai Big Data e alla scienza dei dati, Palazzolo Digital Hub, 2014. Copyright: Vincenzo Manzoni
WORKFLOW
5
Dati grezzi (raw)
Processing
Dataset
Modelli statistici (Analisi)
Machine Learning (Previsione)
Data driven products
Report, visualizzazioni, post su blog
Acquisizione Elaborazione
Introduzione ai Big Data e alla scienza dei dati, Palazzolo Digital Hub, 2014. Copyright: Vincenzo Manzoni
WORKFLOW
5
Dati grezzi (raw)
Processing
Dataset
Modelli statistici (Analisi)
Machine Learning (Previsione)
Data driven products
Report, visualizzazioni, post su blog
Acquisizione Elaborazione
Introduzione ai Big Data e alla scienza dei dati, Palazzolo Digital Hub, 2014. Copyright: Vincenzo Manzoni
WORKFLOW
5
Dati grezzi (raw)
Processing
Dataset
Modelli statistici (Analisi)
Machine Learning (Previsione)
Data driven products
Report, visualizzazioni, post su blog
Acquisizione Elaborazione
Introduzione ai Big Data e alla scienza dei dati, Palazzolo Digital Hub, 2014. Copyright: Vincenzo Manzoni
WORKFLOW
5
Dati grezzi (raw)
Processing
Dataset
Modelli statistici (Analisi)
Machine Learning (Previsione)
Data driven products
Report, visualizzazioni, post su blog
Acquisizione Elaborazione Output
Introduzione ai Big Data e alla scienza dei dati, Palazzolo Digital Hub, 2014. Copyright: Vincenzo Manzoni
IL CORSO
6
Quando Argomenti
sab 5 apr, 9-13 Introduzione; Fondamenti di programmazione per l’analisi dati; Installazione e configurazione degli strumenti; Acquisizione di dati da file di testo; Elaborazioni.
sab 12 apr, 9-13 Acquisire dati da diverse fonti (fogli Excel, JSON, SQL); Chiamare API su internet; Data cleaning.
sab 3 mag, 9-13 Analizzare i dati in modo statistico; Fondamenti di Machine Learning: Regressione lineare, Classificazione supervisionata e non supervisionata.
sab 10 mag, 9-13 BigData; Hadoop e Map Reduce; Hive e Pig.
sab 17mag, 9-13 Usare il cloud per analizzare Big Data.
Il programma
Il sitohttp://www.vincenzomanzoni.com/corsi
Introduzione ai Big Data e alla scienza dei dati, Palazzolo Digital Hub, 2014. Copyright: Vincenzo Manzoni
LEZIONE 1 AGENDA
1. I principali formati dei dati • Excel • CSV • Database
2. Analisi esplorativa dei dati • Excel • SQL
7
Introduzione ai Big Data e alla scienza dei dati, Palazzolo Digital Hub, 2014. Copyright: Vincenzo Manzoni
I PRINCIPALI FORMATI DEI DATI
8
Introduzione ai Big Data e alla scienza dei dati, Palazzolo Digital Hub, 2014. Copyright: Vincenzo Manzoni
I DATI I PRINCIPALI FORMATI
9
Introduzione ai Big Data e alla scienza dei dati, Palazzolo Digital Hub, 2014. Copyright: Vincenzo Manzoni
I DATI I PRINCIPALI FORMATI
9
Dati
Introduzione ai Big Data e alla scienza dei dati, Palazzolo Digital Hub, 2014. Copyright: Vincenzo Manzoni
I DATI I PRINCIPALI FORMATI
9
Strutturati Non strutturati
Dati
Introduzione ai Big Data e alla scienza dei dati, Palazzolo Digital Hub, 2014. Copyright: Vincenzo Manzoni
I DATI I PRINCIPALI FORMATI
9
Strutturati Non strutturatiFile di testo, documenti di word
Dati
Introduzione ai Big Data e alla scienza dei dati, Palazzolo Digital Hub, 2014. Copyright: Vincenzo Manzoni
I DATI I PRINCIPALI FORMATI
9
Strutturati Non strutturatiFile di testo, documenti di word
Dati
Introduzione ai Big Data e alla scienza dei dati, Palazzolo Digital Hub, 2014. Copyright: Vincenzo Manzoni
I DATI I PRINCIPALI FORMATI
9
Strutturati Non strutturati
Table-based Markup-basedFile di testo, documenti di word
Dati
Introduzione ai Big Data e alla scienza dei dati, Palazzolo Digital Hub, 2014. Copyright: Vincenzo Manzoni
I DATI I PRINCIPALI FORMATI
9
Strutturati Non strutturati
Table-based Markup-based
Excel CSV
Database SQL
File di testo, documenti di word
Dati
Introduzione ai Big Data e alla scienza dei dati, Palazzolo Digital Hub, 2014. Copyright: Vincenzo Manzoni
I DATI I PRINCIPALI FORMATI
9
Strutturati Non strutturati
Table-based Markup-based
Excel CSV JSON XML
Database SQL
File di testo, documenti di word
Dati
Introduzione ai Big Data e alla scienza dei dati, Palazzolo Digital Hub, 2014. Copyright: Vincenzo Manzoni
IL DATASET D’ESEMPIO TITANIC
10
Campo Significatosurvival Sopravvissuto. 0 = no, 1 = sìpclass Classe (1, 2 o 3)name Nome e Cognomesex Sessoage Età
sibsp Fratelli o coniugi a bordoparch Genitori o figli a bordoticket Numero di bigliettofare Tariffcacabin Numero della cabina
embarked Porto di imbarco (C = Cherbourg, Q = Queenstown, S=Southampton)
Introduzione ai Big Data e alla scienza dei dati, Palazzolo Digital Hub, 2014. Copyright: Vincenzo Manzoni
I FORMATI TABLE-BASED FILE EXCEL (1/2)
11
Introduzione ai Big Data e alla scienza dei dati, Palazzolo Digital Hub, 2014. Copyright: Vincenzo Manzoni
I FORMATI TABLE-BASED FILE EXCEL (2/2)
12
Pro Contro
Formato molto diffuso Non è adatto per contenuti di grandi dimensioni (> 100 MB)
Esistono lettori proprietari (es. Microsoft Office) e open source (Libre Office, Openoffice)
Non è adatto per dati non tabellari (ovvero, in cui le righe non hanno lo stesso numero di colonne)
E’ possibile creare campi calcolati sulla base di altri
Richiede un software specifico per essere visualizzato
Grafici
Dati tipizzatiMolti tipi di dato: numero testo, valuta, percentuale, data e ora
Introduzione ai Big Data e alla scienza dei dati, Palazzolo Digital Hub, 2014. Copyright: Vincenzo Manzoni
IL NOSTRO LABORATORIO MACCHINA VIRTUALE SU VIRTUALBOX
13
VirtualBox è un software per l’esecuzione di macchine virtuali. !Per il corso, sarà disponibile una macchina virtuale basata su Linux con tutto il software pre-installato.
Introduzione ai Big Data e alla scienza dei dati, Palazzolo Digital Hub, 2014. Copyright: Vincenzo Manzoni
INSTALLAZIONE DI VIRTUALBOXInstallazione di VirtualBox e caricamento della macchina
virtuale !
(nome utente: bigdata password: bigdata)
14
Introduzione ai Big Data e alla scienza dei dati, Palazzolo Digital Hub, 2014. Copyright: Vincenzo Manzoni
ESERCIZIO 1.1 FILE EXCEL
• Aprire il foglio Excel titanic.xlsx • Attraverso i filtri, calcolare quanti maschi minorenni si sono
salvati. • Attraverso una tabella pivot, calcolare quante femmine delle
terza classe di sono salvate.
15
Durata esercizio: 15 minuti
Introduzione ai Big Data e alla scienza dei dati, Palazzolo Digital Hub, 2014. Copyright: Vincenzo Manzoni
ESERCIZIO 1.1: SOLUZIONE FILE EXCEL
• Maschi minorenni salvati: 18 • Femmine di terza classe salvate: 72
16
Durata esercizio: 15 minuti
Introduzione ai Big Data e alla scienza dei dati, Palazzolo Digital Hub, 2014. Copyright: Vincenzo Manzoni
I FORMATI TABLE-BASED FILE CSV (1/3)
• File di testo • CSV significa Comma Separated Values, ovvero valori separati da
virgola. Il separatore può essere diverso (ad esempio, punto e virgola, tabulazione, spazio).
• A volta i campi di testo sono racchiusi tra virgolette “”. • Solitamente nella prima riga ci sono i nomi dei campi.
17
Introduzione ai Big Data e alla scienza dei dati, Palazzolo Digital Hub, 2014. Copyright: Vincenzo Manzoni
I FORMATI TABLE-BASED FILE CSV (2/3)
18
Introduzione ai Big Data e alla scienza dei dati, Palazzolo Digital Hub, 2014. Copyright: Vincenzo Manzoni
I FORMATI TABLE-BASED FILE CSV (2/3)
18
Prima riga: nome dei campi
Introduzione ai Big Data e alla scienza dei dati, Palazzolo Digital Hub, 2014. Copyright: Vincenzo Manzoni
I FORMATI TABLE-BASED FILE CSV (2/3)
18
Prima riga: nome dei campi
Separatore: virgola
Introduzione ai Big Data e alla scienza dei dati, Palazzolo Digital Hub, 2014. Copyright: Vincenzo Manzoni
I FORMATI TABLE-BASED FILE CSV (2/3)
18
Prima riga: nome dei campi
Separatore: virgola
Testo raggruppato tra virgolette
Introduzione ai Big Data e alla scienza dei dati, Palazzolo Digital Hub, 2014. Copyright: Vincenzo Manzoni
I FORMATI TABLE-BASED FILE CSV (3/3)
19
Pro Contro
SempliceNon è adatto per dati non tabellari (ovvero, in cui le righe non hanno lo stesso numero di colonne)
E’ un file di testo, pertanto è sufficiente un editor di testo per visualizzarlo e modificarlo I dati non sono tipizzati
Le operazioni sui file sono supportate nativamente dalla maggior parte dei linguaggi di programmazione.
Esiste la possibilità di fare errore durante l’importazione
Introduzione ai Big Data e alla scienza dei dati, Palazzolo Digital Hub, 2014. Copyright: Vincenzo Manzoni
ESERCIZIO 1.2 FILE CSV
• Importare in Excel il file titanic.csv • Verificare che i tipi di dato inferti da Excel siano corretti.
20
Durata esercizio: 5 minuti
Introduzione ai Big Data e alla scienza dei dati, Palazzolo Digital Hub, 2014. Copyright: Vincenzo Manzoni
I FORMATI TABLE-BASED DATABASE RELAZIONALI E SQL (1/4)
• Database relazionale • Collezione di dati organizzati secondo il modello relazione
(a tabelle). • DBMS: applicazione che fa da mediatore tra i dati e l’utente.
• Linguaggio SQL • Structured Query Language, ovvero linguaggio di
interrogazione strutturato. • Linguaggio dichiarativo: si specifica cosa si vuole e non come
lo si vuole21
Introduzione ai Big Data e alla scienza dei dati, Palazzolo Digital Hub, 2014. Copyright: Vincenzo Manzoni
I FORMATI TABLE-BASED DATABASE RELAZIONALI E SQL (2/4)
• Selezione: scelta delle righe SELECT *FROM tab1WHERE A > 1
• Proiezione: scelta delle colonne SELECT A, B, DFROM tab1
• Join: congiunzione di righe da più tabelle SELECT *FROM tab1 INNER JOIN tab2 ON tab1.id = tab2.id
22
Introduzione ai Big Data e alla scienza dei dati, Palazzolo Digital Hub, 2014. Copyright: Vincenzo Manzoni
I FORMATI TABLE-BASED DATABASE RELAZIONALI E SQL (3/4)
• Funzioni di aggregazione SELECT A, AVG(B) FROM tab1GROUP BY A
• Selezione su dati aggregati SELECT A, AVG(B) FROM tab1GROUP BY AHAVING AVG(B) > 5
• Ordinamento dei risultati SELECT *FROM tab1ORDER BY B
23
Introduzione ai Big Data e alla scienza dei dati, Palazzolo Digital Hub, 2014. Copyright: Vincenzo Manzoni
I FORMATI TABLE-BASED DATABASE RELAZIONALI E SQL (4/4)
24
Pro ControSono progettati per gestire grandi quantità di dati. Difficili da amministrare correttamente.
Possiedono un linguaggio di query (SQL). I dati hanno una struttura rigida, tabellare.Sono supportati da tutti i linguaggi di programmazione,
Introduzione ai Big Data e alla scienza dei dati, Palazzolo Digital Hub, 2014. Copyright: Vincenzo Manzoni
IL DATABASE DEL CORSO MYSQL
• Database relazione open source • Esiste la versione per Windows e per Linux • Ampiamente usato in ambiente web (è il database
usato da facebook!)
25
Introduzione ai Big Data e alla scienza dei dati, Palazzolo Digital Hub, 2014. Copyright: Vincenzo Manzoni
ACCESSO A MYSQLCliccare su MySQL Workbench per aprire l’applicazione
per interrogare il database26
Introduzione ai Big Data e alla scienza dei dati, Palazzolo Digital Hub, 2014. Copyright: Vincenzo Manzoni
ESERCIZIO 1.3 DATABASE RELAZIONALE E LINGUAGGIO SQL
1. Selezionare, dalla tabella titanic, tutti i dati delle donne che si sono salvate. Ordinare i risultati per nome.
2. Selezionare il nome e cognome e l’età degli uomini che non si sono salvati. 3. Mostrare l’età media delle donne e degli uomini che si sono salvati. 4. Mostrare quante persone si sono imbarcate per porto. Il nome del porto
deve essere mostrato per intero (e.g. invece di S, mostrare Southampton).
5. Bonus point! Mostrare le cabine in cui c’erano 2 persone.
27
Durata esercizio: 20 minuti
Introduzione ai Big Data e alla scienza dei dati, Palazzolo Digital Hub, 2014. Copyright: Vincenzo Manzoni
ESERCIZIO 1.3: SOLUZIONE DATABASE RELAZIONALE E LINGUAGGIO SQL
1.SELECT * FROM titanic WHERE sex = ‘female’ AND survived = 1 ORDER BY Name
2.SELECT Name, AgeFROM titanicWHERE sex = ‘male’ AND survived = 0
3.SELECT sex, AVG(age)FROM titanicGROUP BY sex
4.SELECT city.name, COUNT(*)FROM titanic INNER JOIN city ON titanic.embarked = city.idcity
5.SELECT cabin, COUNT(*)FROM titanicGROUP BY cabinHAVING COUNT(*) = 2
28
Durata esercizio: 30 minuti
Introduzione ai Big Data e alla scienza dei dati, Palazzolo Digital Hub, 2014. Copyright: Vincenzo Manzoni
ESERCIZI
• Database • Restituire, per ogni azione, il valore minimo,
medio e massimo del maggio 2000. • Restituire le azioni il cui valore medio è stato
superiore a 200 $.
29
Introduzione ai Big Data e alla scienza dei dati, Palazzolo Digital Hub, 2014. Copyright: Vincenzo Manzoni
LINK UTILI
• Dataset Titanic: http://www.kaggle.com/c/titanic-gettingStarted/data • Guida ai comandi SQL: http://www.uniss.it/documenti/formazione/
Guida_DataBase_SQL.pdf (da pagina 40). • VirtualBox (il software di virtualizzazione): https://www.virtualbox.org • Database MySQL: https://www.mysql.it • MySQL Workbench (software per interrogare MySQL): http://
www.mysql.it/products/workbench/
30
Introduzione ai Big Data e alla scienza dei dati, Palazzolo Digital Hub, 2014. Copyright: Vincenzo Manzoni
LA PROSSIMA LEZIONE AGENDA
1. Formati dati 1. JSON 2. XML
2. Introduzione a R 3. Analisi esplorativa dei dati con R 4. Data cleaning 5. Ottenere i dati attraverso le API
31