SlideShare uma empresa Scribd logo
1 de 43
Baixar para ler offline
INTRODUZIONE AI BIG DATA
E ALLA SCIENZA DEI DATI
Vincenzo Manzoni	

vincenzomanzoni.com | me@vincenzomanzoni.com
Lezione 2
Importare e esportare dati con MySQL; I formati markup-based;
Analisi esplorativa dei dati con R e Tableau.
Introduzione ai Big Data e alla scienza dei dati, Palazzolo Digital Hub, 2014. Copyright: Vincenzo Manzoni
ESERCIZI	

CONSEGNA
• 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 $.
2
Introduzione ai Big Data e alla scienza dei dati, Palazzolo Digital Hub, 2014. Copyright: Vincenzo Manzoni
ESERCIZI	

SOLUZIONE
Restituire, per ogni azione, il valore
minimo, medio e massimo del
maggio 2000.

SELECT	
  stock_symbol,

	
   MIN(stock_price_close)	
  AS	
  minimo,

	
   AVG(stock_price_close)	
  AS	
  media,

	
   MAX(stock_price_close)	
  AS	
  massimo	
  
FROM	
  nyse_stocks	
  
WHERE	
  date	
  >=	
  ‘2000-­‐05-­‐01’	
  

	
   AND	
  date	
  <=	
  ‘2000-­‐05-­‐31’	
  
GROUP	
  BY	
  stock_symbol	
  
Restituire le azioni il cui valore
medio è stato superiore a 200 $.	



	

SELECT	
  stock_symbol,

	
   AVG(stock_price_close)	
  AS	
  media	
  
FROM	
  nyse_stocks	
  
GROUP	
  BY	
  stock_symbol	
  
HAVING	
  media	
  >=	
  200
3
Introduzione ai Big Data e alla scienza dei dati, Palazzolo Digital Hub, 2014. Copyright: Vincenzo Manzoni
ESERCIZI	

SOLUZIONI ALTERNATIVE
Restituire, per ogni azione, il valore
minimo, medio e massimo del
maggio 2000.

SELECT	
  stock_symbol,

	
   MIN(stock_price_close)	
  AS	
  minimo,

	
   AVG(stock_price_close)	
  AS	
  media,

	
   MAX(stock_price_close)	
  AS	
  massimo	
  
FROM	
  nyse_stocks	
  
WHERE	
  date	
  LIKE	
  ‘2000-­‐05-­‐%’	
  
GROUP	
  BY	
  stock_symbol	
  
Restituire le azioni il cui valore
medio è stato superiore a 200 $.	



	

SELECT	
  stock_symbol,

	
   AVG((stock_price_close	
  +

	
  	
  stock_price_open)	
  /	
  2)	
  AS	
  media	
  
FROM	
  nyse_stocks	
  
GROUP	
  BY	
  stock_symbol	
  
HAVING	
  media	
  >=	
  200
4
Dentro alla funzione di aggregazione ci può
essere un calcolo basato sulle colonne
Si fissa anno e mese e si permette
che il giorno valga qualunque valore.
Introduzione ai Big Data e alla scienza dei dati, Palazzolo Digital Hub, 2014. Copyright: Vincenzo Manzoni
IMPORTARE CSV IN MYSQL	

IL CSV: GLI STATI DEGLI USA
5
intestazione
Introduzione ai Big Data e alla scienza dei dati, Palazzolo Digital Hub, 2014. Copyright: Vincenzo Manzoni
IMPORTARE CSV IN MYSQL	

LA QUERY COMMENTATA
USE	
  bigdata;	
  
!
LOAD	
  DATA	
  INFILE	
  ‘/tmp/stateData.csv'	
  
INTO	
  TABLE	
  us_states	
  
FIELDS	
  TERMINATED	
  BY	
  ','	
  ENCLOSED	
  BY	
  ‘"'	
  
LINES	
  TERMINATED	
  BY	
  ‘n'	
  
IGNORE	
  1	
  LINES;
6
Scelta del database dove
inserire i dati
Percorso assoluto del file .csv
Nome della tabella, che deve
esistere
Terminatore di campo.
Eventualmente, se il campo è
racchiuso tra virgolette.
Terminatore di linea.
Ignora l’intestazione.
Introduzione ai Big Data e alla scienza dei dati, Palazzolo Digital Hub, 2014. Copyright: Vincenzo Manzoni
ESPORTARE CSV DA MYSQL
USE	
  bigdata;



-­‐-­‐	
  Intestazione	
  del	
  file

SELECT	
  'state_fullname',	
  'life_exp'



UNION	
  ALL



-­‐-­‐	
  Dati

SELECT	
  state_fullname,	
  life_exp

FROM	
  us_states

WHERE	
  life_exp	
  >	
  70

ORDER	
  BY	
  life_exp	
  DESC

INTO	
  OUTFILE	
  '/tmp/output.csv'

FIELDS	
  TERMINATED	
  BY	
  ','

LINES	
  TERMINATED	
  BY	
  'n'
7
Riga di intestazione con il
nome delle colonne
Unione con le righe dei dati
Query che voglio esportare
nel file .csv
Esportazione nel file
output.csv
Introduzione ai Big Data e alla scienza dei dati, Palazzolo Digital Hub, 2014. Copyright: Vincenzo Manzoni
BACKUP E RESTORE MYSQL
8
Backup e restore fanno
parte della
amministrazione del
server. Le funzioni per
queste operazioni si
trovano lì.
Demo!
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
I FORMATI MARKUP-BASED	

JSON (1/3)
• File di testo	

• JSON significa JavaScript Object Notation	

• E’ basato sulla sintassi JavaScript	

• Viene usato principalmente per lo scambio dati in applicazioni
client-server.	

• Tipi supportati	

• Booleani, interi, reali	

• Stringhe	

• Array, array associativi (coppia chiave-valore, o dizionari)
10
Introduzione ai Big Data e alla scienza dei dati, Palazzolo Digital Hub, 2014. Copyright: Vincenzo Manzoni
I FORMATI MARKUP-BASED	

JSON (2/3)
11
Riga 2
Riga1
Cam
pi
Introduzione ai Big Data e alla scienza dei dati, Palazzolo Digital Hub, 2014. Copyright: Vincenzo Manzoni
I FORMATI MARKUP-BASED	

JSON (3/3)
12
Pro Contro
Semplice rispetto ad altri linguaggi di markup
(ad esempio, XML)
I dati non sono tipizzati
E’ un file di testo, pertanto è sufficiente un
editor di testo per visualizzarlo e modificarlo
Esistono librerie per leggerlo e scriverlo in tutti i
linguaggi di programmazione
Adatto a rappresentare dati non tabellari
(ovvero, in cui le righe hanno un numero
variabile di colonne)
Introduzione ai Big Data e alla scienza dei dati, Palazzolo Digital Hub, 2014. Copyright: Vincenzo Manzoni
I FORMATI MARKUP-BASED	

XML
<?xml	
  version="1.0"	
  encoding="UTF-­‐8"	
  ?>

	
   <Passenger	
  PassengerId=“1”>

	
   	
   <Survived>0</Survived>

	
   	
   <Pclass>3</Pclass>

	
   	
   <Name>Braund,	
  Mr.	
  Owen	
  Harris</Name>

	
   	
   <Sex>male</Sex>

	
   	
   <Age>22</Age>

	
   	
   <SibSp>1</SibSp>

	
   	
   <Parch>0</Parch>

	
   	
   <Ticket>A/5	
  21171</Ticket>

	
   	
   <Fare>7.25</Fare>

	
   	
   <Cabin></Cabin>

	
   	
   <Embarked>S</Embarked>

	
   </Passenger>
13
Introduzione ai Big Data e alla scienza dei dati, Palazzolo Digital Hub, 2014. Copyright: Vincenzo Manzoni
CONFRONTO JSON XML
14
XMLJSON
Introduzione ai Big Data e alla scienza dei dati, Palazzolo Digital Hub, 2014. Copyright: Vincenzo Manzoni
ANALISI ESPLORATIVA DEI
DATI CON R
15
Introduzione ai Big Data e alla scienza dei dati, Palazzolo Digital Hub, 2014. Copyright: Vincenzo Manzoni
• Linguaggio di programmazione specifico per
l’analisi dei dati	

• E’ gratuito, open source e disponibile per
Windows, Mac OSX e Linux.	

• E’ composto da un core e da moduli aggiuntivi che
ne estendono le funzionalità.	

• Web: www.r-project.org
16
R	

LINGUAGGIO PER L’ANALISI STATISTICA DEI DATI
Introduzione ai Big Data e alla scienza dei dati, Palazzolo Digital Hub, 2014. Copyright: Vincenzo Manzoni 17
PERCHÉ HO SCELTO R?	

POPOLARITÀ
Post su
StackOverflow
Introduzione ai Big Data e alla scienza dei dati, Palazzolo Digital Hub, 2014. Copyright: Vincenzo Manzoni
R STUDIO (RSTUDIO.COM)	

INTERFACCIA UTENTE GRAFICA PER R
18
Linea di
comando
Script
(programma)
Variabili
Aiuto, grafici
www.rstudio.com
Introduzione ai Big Data e alla scienza dei dati, Palazzolo Digital Hub, 2014. Copyright: Vincenzo Manzoni
RSTUDIO
Cliccare su RStudio per aprire l’applicazione e iniziare a
programmare in R
19
Introduzione ai Big Data e alla scienza dei dati, Palazzolo Digital Hub, 2014. Copyright: Vincenzo Manzoni
R	

CHIEDERE AIUTO
> ?nomecomando
20
Introduzione ai Big Data e alla scienza dei dati, Palazzolo Digital Hub, 2014. Copyright: Vincenzo Manzoni
R	

INIZIAMO!
• Impostiamo la directory di lavoro con il comando 

setwd(‘/home/bigdata/Documenti/Lezione_1’);	

• Carichiamo il file CSV con il comando

titanic	
  <-­‐	
  read.csv(‘titanic.csv’,	
  header=TRUE);
21
La freccina indica che quello che c’è a
destra, finisce in quello che c’è a sinistra.
titanic è una
variabile
Introduzione ai Big Data e alla scienza dei dati, Palazzolo Digital Hub, 2014. Copyright: Vincenzo Manzoni
R	

INIZIAMO!
Diamo una prima occhiata alla struttura dei dati con il comando
str(titanic)	
  
!
'data.frame':	
   891	
  obs.	
  of	
  	
  12	
  variables:

$	
  PassengerId:	
  int	
  	
  1	
  2	
  3	
  4	
  5	
  6	
  7	
  8	
  9	
  10	
  ...

$	
  Survived	
  	
  	
  :	
  int	
  	
  0	
  1	
  1	
  1	
  0	
  0	
  0	
  0	
  1	
  1	
  ...

$	
  Pclass	
  	
  	
  	
  	
  :	
  int	
  	
  3	
  1	
  3	
  1	
  3	
  3	
  1	
  3	
  3	
  2	
  ...

$	
  Name	
  	
  	
  	
  	
  	
  	
  :	
  Factor	
  w/	
  891	
  levels	
  "Abbing,	
  Mr.	
  Anthony",..:	
  109	
  191	
  358	
  277	
  16	
  559	
  520	
  629	
  416	
  
581	
  ...

$	
  Sex	
  	
  	
  	
  	
  	
  	
  	
  :	
  Factor	
  w/	
  2	
  levels	
  "female","male":	
  2	
  1	
  1	
  1	
  2	
  2	
  2	
  2	
  1	
  1	
  ...

$	
  Age	
  	
  	
  	
  	
  	
  	
  	
  :	
  num	
  	
  22	
  38	
  26	
  35	
  35	
  NA	
  54	
  2	
  27	
  14	
  ...

$	
  SibSp	
  	
  	
  	
  	
  	
  :	
  int	
  	
  1	
  1	
  0	
  1	
  0	
  0	
  0	
  3	
  0	
  1	
  ...

$	
  Parch	
  	
  	
  	
  	
  	
  :	
  int	
  	
  0	
  0	
  0	
  0	
  0	
  0	
  0	
  1	
  2	
  0	
  ...

$	
  Ticket	
  	
  	
  	
  	
  :	
  Factor	
  w/	
  681	
  levels	
  "110152","110413",..:	
  525	
  596	
  662	
  50	
  473	
  276	
  86	
  396	
  345	
  133	
  ...

$	
  Fare	
  	
  	
  	
  	
  	
  	
  :	
  num	
  	
  7.25	
  71.28	
  7.92	
  53.1	
  8.05	
  ...

$	
  Cabin	
  	
  	
  	
  	
  	
  :	
  Factor	
  w/	
  148	
  levels	
  "","A10","A14",..:	
  1	
  83	
  1	
  57	
  1	
  1	
  131	
  1	
  1	
  1	
  ...

$	
  Embarked	
  	
  	
  :	
  Factor	
  w/	
  4	
  levels	
  "","C","Q","S":	
  4	
  2	
  4	
  4	
  4	
  3	
  4	
  4	
  4	
  2	
  ...
22
Numero di osservazioni (righe) Numero di variabili (colonne)
Nome della colonna
Tipo di variabile: intera
Tipo di variabile: numero con virgola
Tipo di variabile: fattore, con un esempio dei valori che può avere
Introduzione ai Big Data e alla scienza dei dati, Palazzolo Digital Hub, 2014. Copyright: Vincenzo Manzoni
R	

INIZIAMO!
Per avere un’idea della distribuzione statistica dei valori di una
colonna, usiamo il comando summary(titanic)
23
L’età è stata correttamente
interpretata come una misura
Survived è stato interpretato
come una misura, anziché
come una dimensione (ovvero,
variabile che può assumere solo
un certo numero di valori discreti)
Introduzione ai Big Data e alla scienza dei dati, Palazzolo Digital Hub, 2014. Copyright: Vincenzo Manzoni
R	

INIZIAMO!
24
Specifico che la colonna Survived è un factor (il
modo con cui R chiama le dimensioni)
Per accedere alle colonne si usa il $.
Introduzione ai Big Data e alla scienza dei dati, Palazzolo Digital Hub, 2014. Copyright: Vincenzo Manzoni
R	

INIZIAMO!
• Diamo un’occhiata ai primi elementi con il comando
head(titanic)	

• … e agli ultimi con il 

comando tail(titanic)
25
Introduzione ai Big Data e alla scienza dei dati, Palazzolo Digital Hub, 2014. Copyright: Vincenzo Manzoni
ESERCIZIO 2.1	

R
1. Attraverso il comando str(), guardare il tipo dei campi
riconosciuti da R.	

2. Qual è la media del prezzo del biglietto?

Suggerimento: il comando summary() può venirci in aiuto…	

3. Convertire le dimensioni interpretate come misure.	

4. Visualizzare i primi 3 e gli ultimi 3 passeggeri.

Suggerimento: la risposta si trova nella documentazione dei
comandi head() e tail().
26
Durata esercizio: 15 minuti
Introduzione ai Big Data e alla scienza dei dati, Palazzolo Digital Hub, 2014. Copyright: Vincenzo Manzoni
R: GRAFICI CON GGPLOT2
• ggplot2 è sistema per fare grafici in R, basato su
una grammatica.	

• Si occupa di gestire i dettagli in modo trasparente
all’utente (e.g. le etichette degli assi, la legenda, …)	

• Permette di produrre grafici a più livelli di alta
qualità.	

• Sito web: http://ggplot2.org
27
Introduzione ai Big Data e alla scienza dei dati, Palazzolo Digital Hub, 2014. Copyright: Vincenzo Manzoni
R: GGPLOT2	

INSTALLAZIONE DEL PACCHETTO E USO
• La prima volta che si usa, il pacchetto va installato con il
comando 

install.packages(‘ggplot2’,	
  dependencies=TRUE)	

• Per usarlo in un proprio script, inserirlo con il comando

library(‘ggplot2’)
28
Introduzione ai Big Data e alla scienza dei dati, Palazzolo Digital Hub, 2014. Copyright: Vincenzo Manzoni
R: GRAFICI	

DISTRIBUZIONI STATISTICHE
• Quale era la distribuzione statistica dell’età? 

qplot(data	
  =	
  titanic,	
  x	
  =	
  Age)
29
Il dataframe dove sono
contenuti i dati
La misura di cui calcolare la
distribuzione statistica
Etichetta automatica
Introduzione ai Big Data e alla scienza dei dati, Palazzolo Digital Hub, 2014. Copyright: Vincenzo Manzoni
R: GRAFICI	

DISTRIBUZIONI STATISTICHE
• Con l’attributo binwidth si può specificare la larghezza delle barre.

qplot(data	
  =	
  titanic,	
  x	
  =	
  Age,	
  binwidth=10)
30
Una barra ogni 10 anni
Introduzione ai Big Data e alla scienza dei dati, Palazzolo Digital Hub, 2014. Copyright: Vincenzo Manzoni
R: GRAFICI	

DISTRIBUZIONI STATISTICHE
• Con l’attributo xlab, si può specificare un’etichetta diversa 

qplot(data	
  =	
  titanic,	
  x	
  =	
  Age,	
  xlab=“Età”)
31
La misura di cui calcolare la
distribuzione statistica
Introduzione ai Big Data e alla scienza dei dati, Palazzolo Digital Hub, 2014. Copyright: Vincenzo Manzoni
R	

ESPLORIAMO GRAFICAMENTE I DATI
• Quanti sopravvissuti per sesso?

table(titanic$Sex,	
  titanic$Survived);

	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  0	
  	
  	
  1

	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  female	
  	
  81	
  233

	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  male	
  	
  	
  468	
  109	

• Vediamolo in forma grafica.

qplot(data=titanic,	
  

	
  	
  x=Sex,	
  

	
  	
  fill=Sex,

	
  	
  facets=~Survived)

32
Coloro le barre in funzione del sesso
Categorie per
sopravvissuti
Introduzione ai Big Data e alla scienza dei dati, Palazzolo Digital Hub, 2014. Copyright: Vincenzo Manzoni
ESERCIZIO 2.2	

GRAFICI IN R
1. Jack Dawson aveva 20 anni quando si imbarcò sulTitanic in IIIa
classe. Quale era la distribuzione statistica dell’età per classe?
(Ovvero, graficare la distribuzione dell’età rispetto al sesso e alla
classe di imbarco.)	

2. Graficare quanti uomini e quante donne si sono imbarcati per
ogni porto.
33
Durata esercizio: 15 minuti
Introduzione ai Big Data e alla scienza dei dati, Palazzolo Digital Hub, 2014. Copyright: Vincenzo Manzoni
ESERCIZIO 2.2	

SOLUZIONE
34
qplot(data=subset(titanic,	
  Embarked	
  !=	
  ''),	
  x=Embarked,

	
   fill=Sex,	
  facets=~Pclass)
qplot(data=titanic,	
  x=Age,	
  fill=Sex,	
  

	
   facets=Sex~Pclass,	
  binwidth=5)
Introduzione ai Big Data e alla scienza dei dati, Palazzolo Digital Hub, 2014. Copyright: Vincenzo Manzoni
UN NUOVO DATASET
35
miglia per gallone
cilindri
potenza
peso tempo sul 1/4 di
miglio
trasmissione
(automatica / manuale)
Introduzione ai Big Data e alla scienza dei dati, Palazzolo Digital Hub, 2014. Copyright: Vincenzo Manzoni
SCATTER PLOT
cars	
  <-­‐	
  mtcars

cars$am	
  <-­‐	
  as.factor(cars$am)

cars$cyl	
  <-­‐	
  as.factor(cars$cyl)



qplot(data=cars,	
  x=mpg,	
  y=hp,	
  

	
   geom=c("point",	
  	
   "smooth"),	
  

	
   method="lm")



qplot(data=cars,	
  x=hp,	
  y=mpg,	
  

	
   color=cyl,	
  

	
   geom=c("point",	
  "smooth"),	
  

	
   method="lm")	
  
36
Introduzione ai Big Data e alla scienza dei dati, Palazzolo Digital Hub, 2014. Copyright: Vincenzo Manzoni
R	

COMANDI UTILI
37
Comando Significato
?comando Mostra la documentazione del comando (es. ?read.csv)
#	
  Commento Commento di riga.
setwd(‘directory’) Imposta la directory di lavoro.
var	
  <-­‐	
  read.csv(‘nomefile’) Crea un dataset dal file ‘nomefile’ e lo salva in var. La presenza
di una intestazione e il separatore di campo si specificanohead(variabile) Mostra i primi 6 elementi della variabile (vettore, matrice,
dataframe).
tail(variabile) Mostra gli ultimi 6 elementi della variabile (vettore, matrice,
dataframe).
str(variabile)
Mostra la struttura della variabile.
summary(oggetto) Mostra il sommario dell’oggetto (compresi dataframe).
Vedremo che oggetti diversi produco sommari diversi.as.factor(variabile) Converte una variabile da tipo int a tipo factor.
rm(variabile) Elimina la variabile (es. rm(foo)).
install.packages(‘pacchetto’,	
  
dependencies=TRUE)
Installa l’add-on pacchetto e le sue dipendenze.
Introduzione ai Big Data e alla scienza dei dati, Palazzolo Digital Hub, 2014. Copyright: Vincenzo Manzoni
ESERCIZIO 2.3
• Il dataset Orange (per informazioni, ?Orange) contiene la
misura della circonferenza di 5 alberi di arancia nel tempo.
Verificare graficamente se esiste una relazione tra età in giorni e
circonferenza.	

• Il dataset movies (per informazioni, ?movies) contiene
informazioni sui film. 	

• Individuare in che anno è stato girato il primo film in catalogo.	

• Qual è la media di durata.	

• Visualizzare il numero di film per anno.
38
Introduzione ai Big Data e alla scienza dei dati, Palazzolo Digital Hub, 2014. Copyright: Vincenzo Manzoni
ANALISI ESPLORATIVA DEI
DATI CONTABLEAU
39
Introduzione ai Big Data e alla scienza dei dati, Palazzolo Digital Hub, 2014. Copyright: Vincenzo Manzoni
TABLEAU
• Software per la visualizzazione interattiva dei dati.	

• Si collega a molte fonti di dati (Excel, file di testo, svariati tipi di
database).	

• Permette l’analisi dei dati in modo grafico.	

• Permette la creazione di dashboard.	

• Per il momento disponibile solo per Windows :(	

• Tableau: www.tableausoftware.com
40
Introduzione ai Big Data e alla scienza dei dati, Palazzolo Digital Hub, 2014. Copyright: Vincenzo Manzoni
TABLEAU	

DEMO
41
Introduzione ai Big Data e alla scienza dei dati, Palazzolo Digital Hub, 2014. Copyright: Vincenzo Manzoni
LINK UTILI
• Sito web del corso: www.vincenzomanzoni.com/corsi 	

• Convertitore da CSV a JSON: http://www.convertcsv.com/csv-to-json.htm 	

• Convertitore JSON-XML: http://www.utilities-online.info/xmltojson 	

• R: www.r-project.org 	

• RStudio: www.rstudio.com	

• Quick R (manuale di R): http://www.statmethods.net 	

• Manuale per fare grafici in R: http://www.cookbook-r.com/Graphs/	

• Documentazione ufficiale di ggplot2: http://docs.ggplot2.org/current/ 	

• Tableau: www.tableausoftware.com
42
Introduzione ai Big Data e alla scienza dei dati, Palazzolo Digital Hub, 2014. Copyright: Vincenzo Manzoni
LA PROSSIMA LEZIONE	

AGENDA
1. Ottenere i dati attraverso le API	

2. Fondamenti di Machine Learning… ovvero come
insegnare alle macchine.
43

Mais conteúdo relacionado

Mais procurados

Gestione dei big data: Web 3.0, motori semantici, soft computing
Gestione dei big data: Web 3.0, motori semantici, soft computing Gestione dei big data: Web 3.0, motori semantici, soft computing
Gestione dei big data: Web 3.0, motori semantici, soft computing Valerio Eletti
 
Data Science nel manufacturing: l'esperienza di Tenaris
Data Science nel manufacturing: l'esperienza di TenarisData Science nel manufacturing: l'esperienza di Tenaris
Data Science nel manufacturing: l'esperienza di TenarisVincenzo Manzoni
 
Big Data, Open Data e AppsforItaly: i dati come conversazione importano alle ...
Big Data, Open Data e AppsforItaly: i dati come conversazione importano alle ...Big Data, Open Data e AppsforItaly: i dati come conversazione importano alle ...
Big Data, Open Data e AppsforItaly: i dati come conversazione importano alle ...Matteo Brunati
 
Tableau at Tenaris - Tableau 10 Roadshow, Roma 2016
Tableau at Tenaris - Tableau 10 Roadshow, Roma 2016Tableau at Tenaris - Tableau 10 Roadshow, Roma 2016
Tableau at Tenaris - Tableau 10 Roadshow, Roma 2016Vincenzo Manzoni
 
Big data e analisi predittiva
Big data e analisi predittivaBig data e analisi predittiva
Big data e analisi predittivaAntonio Bucciol
 
Big data e pubblica amministrazione
Big data e pubblica amministrazioneBig data e pubblica amministrazione
Big data e pubblica amministrazioneGianfranco Andriola
 
Big Data - Breve panoramica
Big Data - Breve panoramicaBig Data - Breve panoramica
Big Data - Breve panoramicaLuca Naso
 
La visualizzazione dei Big Data: opportunità e sfide - di Stefano De Francisci
La visualizzazione dei Big Data: opportunità e sfide - di Stefano De FrancisciLa visualizzazione dei Big Data: opportunità e sfide - di Stefano De Francisci
La visualizzazione dei Big Data: opportunità e sfide - di Stefano De FrancisciIstituto nazionale di statistica
 
Big Data e Deep Learning: verso una nuova generazione di programmi intelligenti
Big Data e Deep Learning: verso una nuova generazione di programmi intelligentiBig Data e Deep Learning: verso una nuova generazione di programmi intelligenti
Big Data e Deep Learning: verso una nuova generazione di programmi intelligentiData Driven Innovation
 
Big Data e Terza Piattaforma (Eataly Smeraldo, 29 ottobre 2015)
Big Data e Terza Piattaforma (Eataly Smeraldo, 29 ottobre 2015)Big Data e Terza Piattaforma (Eataly Smeraldo, 29 ottobre 2015)
Big Data e Terza Piattaforma (Eataly Smeraldo, 29 ottobre 2015)Keen Consulting
 
Data Driven Innovation: sfide e opportunità
Data Driven Innovation: sfide e opportunitàData Driven Innovation: sfide e opportunità
Data Driven Innovation: sfide e opportunitàData Driven Innovation
 
M. Scannapieco - Big Data e Open Data: Istruzioni (o quasi) per l’Uso
M. Scannapieco - Big Data e Open Data:  Istruzioni (o quasi) per l’Uso  M. Scannapieco - Big Data e Open Data:  Istruzioni (o quasi) per l’Uso
M. Scannapieco - Big Data e Open Data: Istruzioni (o quasi) per l’Uso Istituto nazionale di statistica
 
Big Data Vs. Open Data
Big Data Vs.  Open Data Big Data Vs.  Open Data
Big Data Vs. Open Data Consulthinkspa
 

Mais procurados (20)

Gestione dei big data: Web 3.0, motori semantici, soft computing
Gestione dei big data: Web 3.0, motori semantici, soft computing Gestione dei big data: Web 3.0, motori semantici, soft computing
Gestione dei big data: Web 3.0, motori semantici, soft computing
 
Data Science nel manufacturing: l'esperienza di Tenaris
Data Science nel manufacturing: l'esperienza di TenarisData Science nel manufacturing: l'esperienza di Tenaris
Data Science nel manufacturing: l'esperienza di Tenaris
 
Big Data, Open Data e AppsforItaly: i dati come conversazione importano alle ...
Big Data, Open Data e AppsforItaly: i dati come conversazione importano alle ...Big Data, Open Data e AppsforItaly: i dati come conversazione importano alle ...
Big Data, Open Data e AppsforItaly: i dati come conversazione importano alle ...
 
Tableau at Tenaris - Tableau 10 Roadshow, Roma 2016
Tableau at Tenaris - Tableau 10 Roadshow, Roma 2016Tableau at Tenaris - Tableau 10 Roadshow, Roma 2016
Tableau at Tenaris - Tableau 10 Roadshow, Roma 2016
 
Big data e analisi predittiva
Big data e analisi predittivaBig data e analisi predittiva
Big data e analisi predittiva
 
Big data e pubblica amministrazione
Big data e pubblica amministrazioneBig data e pubblica amministrazione
Big data e pubblica amministrazione
 
Appunti di big data
Appunti di big dataAppunti di big data
Appunti di big data
 
Big data e Business Intelligence | presentazione open day @Fondazione Kennedy...
Big data e Business Intelligence | presentazione open day @Fondazione Kennedy...Big data e Business Intelligence | presentazione open day @Fondazione Kennedy...
Big data e Business Intelligence | presentazione open day @Fondazione Kennedy...
 
Big Data - Breve panoramica
Big Data - Breve panoramicaBig Data - Breve panoramica
Big Data - Breve panoramica
 
Big Data
Big DataBig Data
Big Data
 
_ABIlab-BigData-Finale
_ABIlab-BigData-Finale_ABIlab-BigData-Finale
_ABIlab-BigData-Finale
 
La visualizzazione dei Big Data: opportunità e sfide - di Stefano De Francisci
La visualizzazione dei Big Data: opportunità e sfide - di Stefano De FrancisciLa visualizzazione dei Big Data: opportunità e sfide - di Stefano De Francisci
La visualizzazione dei Big Data: opportunità e sfide - di Stefano De Francisci
 
La salute e i big data
La salute e i big dataLa salute e i big data
La salute e i big data
 
Big data
Big dataBig data
Big data
 
Big Data e Deep Learning: verso una nuova generazione di programmi intelligenti
Big Data e Deep Learning: verso una nuova generazione di programmi intelligentiBig Data e Deep Learning: verso una nuova generazione di programmi intelligenti
Big Data e Deep Learning: verso una nuova generazione di programmi intelligenti
 
Big Data e Terza Piattaforma (Eataly Smeraldo, 29 ottobre 2015)
Big Data e Terza Piattaforma (Eataly Smeraldo, 29 ottobre 2015)Big Data e Terza Piattaforma (Eataly Smeraldo, 29 ottobre 2015)
Big Data e Terza Piattaforma (Eataly Smeraldo, 29 ottobre 2015)
 
Data Driven Innovation: sfide e opportunità
Data Driven Innovation: sfide e opportunitàData Driven Innovation: sfide e opportunità
Data Driven Innovation: sfide e opportunità
 
M. Scannapieco - Big Data e Open Data: Istruzioni (o quasi) per l’Uso
M. Scannapieco - Big Data e Open Data:  Istruzioni (o quasi) per l’Uso  M. Scannapieco - Big Data e Open Data:  Istruzioni (o quasi) per l’Uso
M. Scannapieco - Big Data e Open Data: Istruzioni (o quasi) per l’Uso
 
Applicazioni di Advanced Analytics
Applicazioni di Advanced AnalyticsApplicazioni di Advanced Analytics
Applicazioni di Advanced Analytics
 
Big Data Vs. Open Data
Big Data Vs.  Open Data Big Data Vs.  Open Data
Big Data Vs. Open Data
 

Destaque

Big Data e tecnologie semantiche - Utilizzare i Linked data come driver d'int...
Big Data e tecnologie semantiche - Utilizzare i Linked data come driver d'int...Big Data e tecnologie semantiche - Utilizzare i Linked data come driver d'int...
Big Data e tecnologie semantiche - Utilizzare i Linked data come driver d'int...giuseppe_futia
 
Introduzione ai Big Data e alla scienza dei dati - Sistemi di raccomandazione
Introduzione ai Big Data e alla scienza dei dati - Sistemi di raccomandazioneIntroduzione ai Big Data e alla scienza dei dati - Sistemi di raccomandazione
Introduzione ai Big Data e alla scienza dei dati - Sistemi di raccomandazioneVincenzo Manzoni
 
Web2.0 2012 - lesson 4 - twitter
Web2.0 2012 - lesson 4 - twitterWeb2.0 2012 - lesson 4 - twitter
Web2.0 2012 - lesson 4 - twitterCarlo Vaccari
 
Big Data Conference Ottobre 2013
Big Data Conference Ottobre 2013Big Data Conference Ottobre 2013
Big Data Conference Ottobre 2013Carlo Vaccari
 
Jak napisać profesjonalne cv na potrzeby stypendium naukowego - Euraxess Road...
Jak napisać profesjonalne cv na potrzeby stypendium naukowego - Euraxess Road...Jak napisać profesjonalne cv na potrzeby stypendium naukowego - Euraxess Road...
Jak napisać profesjonalne cv na potrzeby stypendium naukowego - Euraxess Road...MalgorzataPastuszka
 
Produzione Perfetta: consulenza e formazione nel campo dell'analisi dati
Produzione Perfetta: consulenza e formazione nel campo dell'analisi datiProduzione Perfetta: consulenza e formazione nel campo dell'analisi dati
Produzione Perfetta: consulenza e formazione nel campo dell'analisi datiAlessio Passalacqua
 
Presentazione da modificare.pptx
Presentazione da modificare.pptxPresentazione da modificare.pptx
Presentazione da modificare.pptxPaola Oliva
 
Strumenti di event driven analytics-sistemi evoluti di analisi degli eventi
Strumenti di event driven analytics-sistemi evoluti di analisi degli eventiStrumenti di event driven analytics-sistemi evoluti di analisi degli eventi
Strumenti di event driven analytics-sistemi evoluti di analisi degli eventiGabriele Marazzi
 
Data Mining e Open Data
Data Mining e Open Data Data Mining e Open Data
Data Mining e Open Data Duccio Schiavon
 
Bigdata v eletti_nov2013 versione_ampliata_con_silver
Bigdata v eletti_nov2013 versione_ampliata_con_silverBigdata v eletti_nov2013 versione_ampliata_con_silver
Bigdata v eletti_nov2013 versione_ampliata_con_silverValerio Eletti
 
Le competenze che contano Ci sono un sacco di posti di lavoro che gli italia...
Le competenze che contano Ci sono un sacco di posti di lavoro  che gli italia...Le competenze che contano Ci sono un sacco di posti di lavoro  che gli italia...
Le competenze che contano Ci sono un sacco di posti di lavoro che gli italia...InSide Training
 
Presentazione bigdata Madee
Presentazione bigdata MadeePresentazione bigdata Madee
Presentazione bigdata MadeeGianluigi Cogo
 
Big Data processing: un sistema scalabile per la Sentiment Analysis
Big Data processing: un sistema scalabile per la Sentiment AnalysisBig Data processing: un sistema scalabile per la Sentiment Analysis
Big Data processing: un sistema scalabile per la Sentiment AnalysisFrancesco Cardinale
 
Big data e relazioni pubbliche - descrivere, interagire, prevedere
Big data e relazioni pubbliche - descrivere, interagire, prevedereBig data e relazioni pubbliche - descrivere, interagire, prevedere
Big data e relazioni pubbliche - descrivere, interagire, prevedereThomas Drahorad
 
Big Data: Analisi del Sentiment
Big Data: Analisi del SentimentBig Data: Analisi del Sentiment
Big Data: Analisi del SentimentMiriade Spa
 
Come diventare data scientist - Paolo Pellegrini
Come diventare data scientist - Paolo PellegriniCome diventare data scientist - Paolo Pellegrini
Come diventare data scientist - Paolo PellegriniDonatella Cambosu
 

Destaque (19)

Big Data e tecnologie semantiche - Utilizzare i Linked data come driver d'int...
Big Data e tecnologie semantiche - Utilizzare i Linked data come driver d'int...Big Data e tecnologie semantiche - Utilizzare i Linked data come driver d'int...
Big Data e tecnologie semantiche - Utilizzare i Linked data come driver d'int...
 
Introduzione ai Big Data e alla scienza dei dati - Sistemi di raccomandazione
Introduzione ai Big Data e alla scienza dei dati - Sistemi di raccomandazioneIntroduzione ai Big Data e alla scienza dei dati - Sistemi di raccomandazione
Introduzione ai Big Data e alla scienza dei dati - Sistemi di raccomandazione
 
Redirect 301
Redirect 301Redirect 301
Redirect 301
 
Web2.0 2012 - lesson 4 - twitter
Web2.0 2012 - lesson 4 - twitterWeb2.0 2012 - lesson 4 - twitter
Web2.0 2012 - lesson 4 - twitter
 
Big Data Conference Ottobre 2013
Big Data Conference Ottobre 2013Big Data Conference Ottobre 2013
Big Data Conference Ottobre 2013
 
OrientDB & Big Data
OrientDB & Big DataOrientDB & Big Data
OrientDB & Big Data
 
Jak napisać profesjonalne cv na potrzeby stypendium naukowego - Euraxess Road...
Jak napisać profesjonalne cv na potrzeby stypendium naukowego - Euraxess Road...Jak napisać profesjonalne cv na potrzeby stypendium naukowego - Euraxess Road...
Jak napisać profesjonalne cv na potrzeby stypendium naukowego - Euraxess Road...
 
Produzione Perfetta: consulenza e formazione nel campo dell'analisi dati
Produzione Perfetta: consulenza e formazione nel campo dell'analisi datiProduzione Perfetta: consulenza e formazione nel campo dell'analisi dati
Produzione Perfetta: consulenza e formazione nel campo dell'analisi dati
 
Kaizen pdf
Kaizen pdfKaizen pdf
Kaizen pdf
 
Presentazione da modificare.pptx
Presentazione da modificare.pptxPresentazione da modificare.pptx
Presentazione da modificare.pptx
 
Strumenti di event driven analytics-sistemi evoluti di analisi degli eventi
Strumenti di event driven analytics-sistemi evoluti di analisi degli eventiStrumenti di event driven analytics-sistemi evoluti di analisi degli eventi
Strumenti di event driven analytics-sistemi evoluti di analisi degli eventi
 
Data Mining e Open Data
Data Mining e Open Data Data Mining e Open Data
Data Mining e Open Data
 
Bigdata v eletti_nov2013 versione_ampliata_con_silver
Bigdata v eletti_nov2013 versione_ampliata_con_silverBigdata v eletti_nov2013 versione_ampliata_con_silver
Bigdata v eletti_nov2013 versione_ampliata_con_silver
 
Le competenze che contano Ci sono un sacco di posti di lavoro che gli italia...
Le competenze che contano Ci sono un sacco di posti di lavoro  che gli italia...Le competenze che contano Ci sono un sacco di posti di lavoro  che gli italia...
Le competenze che contano Ci sono un sacco di posti di lavoro che gli italia...
 
Presentazione bigdata Madee
Presentazione bigdata MadeePresentazione bigdata Madee
Presentazione bigdata Madee
 
Big Data processing: un sistema scalabile per la Sentiment Analysis
Big Data processing: un sistema scalabile per la Sentiment AnalysisBig Data processing: un sistema scalabile per la Sentiment Analysis
Big Data processing: un sistema scalabile per la Sentiment Analysis
 
Big data e relazioni pubbliche - descrivere, interagire, prevedere
Big data e relazioni pubbliche - descrivere, interagire, prevedereBig data e relazioni pubbliche - descrivere, interagire, prevedere
Big data e relazioni pubbliche - descrivere, interagire, prevedere
 
Big Data: Analisi del Sentiment
Big Data: Analisi del SentimentBig Data: Analisi del Sentiment
Big Data: Analisi del Sentiment
 
Come diventare data scientist - Paolo Pellegrini
Come diventare data scientist - Paolo PellegriniCome diventare data scientist - Paolo Pellegrini
Come diventare data scientist - Paolo Pellegrini
 

Semelhante a Introduzione ai Big Data e alla scienza dei dati - Exploratory Data Analysis

Cerved - The Italian Business Graph: a Story of Tech & data-driven Innovation
Cerved - The Italian Business Graph: a Story of Tech & data-driven InnovationCerved - The Italian Business Graph: a Story of Tech & data-driven Innovation
Cerved - The Italian Business Graph: a Story of Tech & data-driven InnovationNeo4j
 
Back to Basics, webinar 5: Introduzione ad Aggregation Framework
Back to Basics, webinar 5: Introduzione ad Aggregation FrameworkBack to Basics, webinar 5: Introduzione ad Aggregation Framework
Back to Basics, webinar 5: Introduzione ad Aggregation FrameworkMongoDB
 
Presentazione ufficiale splittata
Presentazione ufficiale splittataPresentazione ufficiale splittata
Presentazione ufficiale splittataFrancesco Rizzo
 
Couchbase Meetup - "Introduzione a NoSQL e Couchbase"
Couchbase Meetup - "Introduzione a NoSQL e Couchbase"Couchbase Meetup - "Introduzione a NoSQL e Couchbase"
Couchbase Meetup - "Introduzione a NoSQL e Couchbase"Franco Caporale
 
What is new in C# 2018
What is new in C# 2018What is new in C# 2018
What is new in C# 2018Marco Parenzan
 
MongoDB User Group Padova - Overviews iniziale su MongoDB
MongoDB User Group Padova - Overviews iniziale su MongoDBMongoDB User Group Padova - Overviews iniziale su MongoDB
MongoDB User Group Padova - Overviews iniziale su MongoDBStefano Dindo
 
L'ecosistema Google a supporto dei progetti IoT: dalla prototipazione ai dati...
L'ecosistema Google a supporto dei progetti IoT: dalla prototipazione ai dati...L'ecosistema Google a supporto dei progetti IoT: dalla prototipazione ai dati...
L'ecosistema Google a supporto dei progetti IoT: dalla prototipazione ai dati...Angelo Parchitelli
 
MongoDB Scala Roma SpringFramework Meeting2009
MongoDB Scala Roma SpringFramework Meeting2009MongoDB Scala Roma SpringFramework Meeting2009
MongoDB Scala Roma SpringFramework Meeting2009Massimiliano Dessì
 
MongoDb and Scala SpringFramework Meeting
MongoDb and Scala SpringFramework MeetingMongoDb and Scala SpringFramework Meeting
MongoDb and Scala SpringFramework Meetingguest67beeb9
 
Antonio Laureti Palma - Visione d’insieme sulla funzione degli Operational Da...
Antonio Laureti Palma - Visione d’insieme sulla funzione degli Operational Da...Antonio Laureti Palma - Visione d’insieme sulla funzione degli Operational Da...
Antonio Laureti Palma - Visione d’insieme sulla funzione degli Operational Da...Istituto nazionale di statistica
 
I Graph Database: analisi del comportamento degli utenti
I Graph Database: analisi del comportamento degli utentiI Graph Database: analisi del comportamento degli utenti
I Graph Database: analisi del comportamento degli utentiThinkOpen
 
Analytics 3.0 - Breve storia della Data Analysis ad oggi
Analytics 3.0 - Breve storia della Data Analysis ad oggiAnalytics 3.0 - Breve storia della Data Analysis ad oggi
Analytics 3.0 - Breve storia della Data Analysis ad oggiFilippo Ragazzo
 
Le novita di MongoDB 3.6
Le novita di MongoDB 3.6Le novita di MongoDB 3.6
Le novita di MongoDB 3.6MongoDB
 
Basi di Dati - B1 - La progettazione delle basi di dati
Basi di Dati - B1 - La progettazione delle basi di datiBasi di Dati - B1 - La progettazione delle basi di dati
Basi di Dati - B1 - La progettazione delle basi di datiMajong DevJfu
 
noSQL La nuova frontiera dei Database [DB05-S]
noSQL La nuova frontiera dei Database [DB05-S]noSQL La nuova frontiera dei Database [DB05-S]
noSQL La nuova frontiera dei Database [DB05-S]Andrea Maddalena
 
Real Time Monitoring and Analitycs : Customer Experience in Production
Real Time Monitoring and Analitycs : Customer Experience in ProductionReal Time Monitoring and Analitycs : Customer Experience in Production
Real Time Monitoring and Analitycs : Customer Experience in ProductionCodemotion
 
Predictive Maintenance per le aziende del nord-est con Azure e IoT
Predictive Maintenance per le aziende del nord-est con Azure e IoTPredictive Maintenance per le aziende del nord-est con Azure e IoT
Predictive Maintenance per le aziende del nord-est con Azure e IoTMarco Parenzan
 

Semelhante a Introduzione ai Big Data e alla scienza dei dati - Exploratory Data Analysis (20)

Cerved - The Italian Business Graph: a Story of Tech & data-driven Innovation
Cerved - The Italian Business Graph: a Story of Tech & data-driven InnovationCerved - The Italian Business Graph: a Story of Tech & data-driven Innovation
Cerved - The Italian Business Graph: a Story of Tech & data-driven Innovation
 
Back to Basics, webinar 5: Introduzione ad Aggregation Framework
Back to Basics, webinar 5: Introduzione ad Aggregation FrameworkBack to Basics, webinar 5: Introduzione ad Aggregation Framework
Back to Basics, webinar 5: Introduzione ad Aggregation Framework
 
The Sequel to sql
The Sequel to sqlThe Sequel to sql
The Sequel to sql
 
Presentazione ufficiale splittata
Presentazione ufficiale splittataPresentazione ufficiale splittata
Presentazione ufficiale splittata
 
Couchbase Meetup - "Introduzione a NoSQL e Couchbase"
Couchbase Meetup - "Introduzione a NoSQL e Couchbase"Couchbase Meetup - "Introduzione a NoSQL e Couchbase"
Couchbase Meetup - "Introduzione a NoSQL e Couchbase"
 
What is new in C# 2018
What is new in C# 2018What is new in C# 2018
What is new in C# 2018
 
MongoDB User Group Padova - Overviews iniziale su MongoDB
MongoDB User Group Padova - Overviews iniziale su MongoDBMongoDB User Group Padova - Overviews iniziale su MongoDB
MongoDB User Group Padova - Overviews iniziale su MongoDB
 
L'ecosistema Google a supporto dei progetti IoT: dalla prototipazione ai dati...
L'ecosistema Google a supporto dei progetti IoT: dalla prototipazione ai dati...L'ecosistema Google a supporto dei progetti IoT: dalla prototipazione ai dati...
L'ecosistema Google a supporto dei progetti IoT: dalla prototipazione ai dati...
 
CV completo
CV completoCV completo
CV completo
 
MongoDB Scala Roma SpringFramework Meeting2009
MongoDB Scala Roma SpringFramework Meeting2009MongoDB Scala Roma SpringFramework Meeting2009
MongoDB Scala Roma SpringFramework Meeting2009
 
MongoDb and Scala SpringFramework Meeting
MongoDb and Scala SpringFramework MeetingMongoDb and Scala SpringFramework Meeting
MongoDb and Scala SpringFramework Meeting
 
Antonio Laureti Palma - Visione d’insieme sulla funzione degli Operational Da...
Antonio Laureti Palma - Visione d’insieme sulla funzione degli Operational Da...Antonio Laureti Palma - Visione d’insieme sulla funzione degli Operational Da...
Antonio Laureti Palma - Visione d’insieme sulla funzione degli Operational Da...
 
I Graph Database: analisi del comportamento degli utenti
I Graph Database: analisi del comportamento degli utentiI Graph Database: analisi del comportamento degli utenti
I Graph Database: analisi del comportamento degli utenti
 
Analytics 3.0 - Breve storia della Data Analysis ad oggi
Analytics 3.0 - Breve storia della Data Analysis ad oggiAnalytics 3.0 - Breve storia della Data Analysis ad oggi
Analytics 3.0 - Breve storia della Data Analysis ad oggi
 
Le novita di MongoDB 3.6
Le novita di MongoDB 3.6Le novita di MongoDB 3.6
Le novita di MongoDB 3.6
 
Basi di Dati - B1 - La progettazione delle basi di dati
Basi di Dati - B1 - La progettazione delle basi di datiBasi di Dati - B1 - La progettazione delle basi di dati
Basi di Dati - B1 - La progettazione delle basi di dati
 
Oai Data Adapter
Oai Data AdapterOai Data Adapter
Oai Data Adapter
 
noSQL La nuova frontiera dei Database [DB05-S]
noSQL La nuova frontiera dei Database [DB05-S]noSQL La nuova frontiera dei Database [DB05-S]
noSQL La nuova frontiera dei Database [DB05-S]
 
Real Time Monitoring and Analitycs : Customer Experience in Production
Real Time Monitoring and Analitycs : Customer Experience in ProductionReal Time Monitoring and Analitycs : Customer Experience in Production
Real Time Monitoring and Analitycs : Customer Experience in Production
 
Predictive Maintenance per le aziende del nord-est con Azure e IoT
Predictive Maintenance per le aziende del nord-est con Azure e IoTPredictive Maintenance per le aziende del nord-est con Azure e IoT
Predictive Maintenance per le aziende del nord-est con Azure e IoT
 

Introduzione ai Big Data e alla scienza dei dati - Exploratory Data Analysis

  • 1. INTRODUZIONE AI BIG DATA E ALLA SCIENZA DEI DATI Vincenzo Manzoni vincenzomanzoni.com | me@vincenzomanzoni.com Lezione 2 Importare e esportare dati con MySQL; I formati markup-based; Analisi esplorativa dei dati con R e Tableau.
  • 2. Introduzione ai Big Data e alla scienza dei dati, Palazzolo Digital Hub, 2014. Copyright: Vincenzo Manzoni ESERCIZI CONSEGNA • 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 $. 2
  • 3. Introduzione ai Big Data e alla scienza dei dati, Palazzolo Digital Hub, 2014. Copyright: Vincenzo Manzoni ESERCIZI SOLUZIONE Restituire, per ogni azione, il valore minimo, medio e massimo del maggio 2000.
 SELECT  stock_symbol,
   MIN(stock_price_close)  AS  minimo,
   AVG(stock_price_close)  AS  media,
   MAX(stock_price_close)  AS  massimo   FROM  nyse_stocks   WHERE  date  >=  ‘2000-­‐05-­‐01’  
   AND  date  <=  ‘2000-­‐05-­‐31’   GROUP  BY  stock_symbol   Restituire le azioni il cui valore medio è stato superiore a 200 $. 
 SELECT  stock_symbol,
   AVG(stock_price_close)  AS  media   FROM  nyse_stocks   GROUP  BY  stock_symbol   HAVING  media  >=  200 3
  • 4. Introduzione ai Big Data e alla scienza dei dati, Palazzolo Digital Hub, 2014. Copyright: Vincenzo Manzoni ESERCIZI SOLUZIONI ALTERNATIVE Restituire, per ogni azione, il valore minimo, medio e massimo del maggio 2000.
 SELECT  stock_symbol,
   MIN(stock_price_close)  AS  minimo,
   AVG(stock_price_close)  AS  media,
   MAX(stock_price_close)  AS  massimo   FROM  nyse_stocks   WHERE  date  LIKE  ‘2000-­‐05-­‐%’   GROUP  BY  stock_symbol   Restituire le azioni il cui valore medio è stato superiore a 200 $. 
 SELECT  stock_symbol,
   AVG((stock_price_close  +
    stock_price_open)  /  2)  AS  media   FROM  nyse_stocks   GROUP  BY  stock_symbol   HAVING  media  >=  200 4 Dentro alla funzione di aggregazione ci può essere un calcolo basato sulle colonne Si fissa anno e mese e si permette che il giorno valga qualunque valore.
  • 5. Introduzione ai Big Data e alla scienza dei dati, Palazzolo Digital Hub, 2014. Copyright: Vincenzo Manzoni IMPORTARE CSV IN MYSQL IL CSV: GLI STATI DEGLI USA 5 intestazione
  • 6. Introduzione ai Big Data e alla scienza dei dati, Palazzolo Digital Hub, 2014. Copyright: Vincenzo Manzoni IMPORTARE CSV IN MYSQL LA QUERY COMMENTATA USE  bigdata;   ! LOAD  DATA  INFILE  ‘/tmp/stateData.csv'   INTO  TABLE  us_states   FIELDS  TERMINATED  BY  ','  ENCLOSED  BY  ‘"'   LINES  TERMINATED  BY  ‘n'   IGNORE  1  LINES; 6 Scelta del database dove inserire i dati Percorso assoluto del file .csv Nome della tabella, che deve esistere Terminatore di campo. Eventualmente, se il campo è racchiuso tra virgolette. Terminatore di linea. Ignora l’intestazione.
  • 7. Introduzione ai Big Data e alla scienza dei dati, Palazzolo Digital Hub, 2014. Copyright: Vincenzo Manzoni ESPORTARE CSV DA MYSQL USE  bigdata;
 
 -­‐-­‐  Intestazione  del  file
 SELECT  'state_fullname',  'life_exp'
 
 UNION  ALL
 
 -­‐-­‐  Dati
 SELECT  state_fullname,  life_exp
 FROM  us_states
 WHERE  life_exp  >  70
 ORDER  BY  life_exp  DESC
 INTO  OUTFILE  '/tmp/output.csv'
 FIELDS  TERMINATED  BY  ','
 LINES  TERMINATED  BY  'n' 7 Riga di intestazione con il nome delle colonne Unione con le righe dei dati Query che voglio esportare nel file .csv Esportazione nel file output.csv
  • 8. Introduzione ai Big Data e alla scienza dei dati, Palazzolo Digital Hub, 2014. Copyright: Vincenzo Manzoni BACKUP E RESTORE MYSQL 8 Backup e restore fanno parte della amministrazione del server. Le funzioni per queste operazioni si trovano lì. Demo!
  • 9. 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
  • 10. Introduzione ai Big Data e alla scienza dei dati, Palazzolo Digital Hub, 2014. Copyright: Vincenzo Manzoni I FORMATI MARKUP-BASED JSON (1/3) • File di testo • JSON significa JavaScript Object Notation • E’ basato sulla sintassi JavaScript • Viene usato principalmente per lo scambio dati in applicazioni client-server. • Tipi supportati • Booleani, interi, reali • Stringhe • Array, array associativi (coppia chiave-valore, o dizionari) 10
  • 11. Introduzione ai Big Data e alla scienza dei dati, Palazzolo Digital Hub, 2014. Copyright: Vincenzo Manzoni I FORMATI MARKUP-BASED JSON (2/3) 11 Riga 2 Riga1 Cam pi
  • 12. Introduzione ai Big Data e alla scienza dei dati, Palazzolo Digital Hub, 2014. Copyright: Vincenzo Manzoni I FORMATI MARKUP-BASED JSON (3/3) 12 Pro Contro Semplice rispetto ad altri linguaggi di markup (ad esempio, XML) I dati non sono tipizzati E’ un file di testo, pertanto è sufficiente un editor di testo per visualizzarlo e modificarlo Esistono librerie per leggerlo e scriverlo in tutti i linguaggi di programmazione Adatto a rappresentare dati non tabellari (ovvero, in cui le righe hanno un numero variabile di colonne)
  • 13. Introduzione ai Big Data e alla scienza dei dati, Palazzolo Digital Hub, 2014. Copyright: Vincenzo Manzoni I FORMATI MARKUP-BASED XML <?xml  version="1.0"  encoding="UTF-­‐8"  ?>
   <Passenger  PassengerId=“1”>
     <Survived>0</Survived>
     <Pclass>3</Pclass>
     <Name>Braund,  Mr.  Owen  Harris</Name>
     <Sex>male</Sex>
     <Age>22</Age>
     <SibSp>1</SibSp>
     <Parch>0</Parch>
     <Ticket>A/5  21171</Ticket>
     <Fare>7.25</Fare>
     <Cabin></Cabin>
     <Embarked>S</Embarked>
   </Passenger> 13
  • 14. Introduzione ai Big Data e alla scienza dei dati, Palazzolo Digital Hub, 2014. Copyright: Vincenzo Manzoni CONFRONTO JSON XML 14 XMLJSON
  • 15. Introduzione ai Big Data e alla scienza dei dati, Palazzolo Digital Hub, 2014. Copyright: Vincenzo Manzoni ANALISI ESPLORATIVA DEI DATI CON R 15
  • 16. Introduzione ai Big Data e alla scienza dei dati, Palazzolo Digital Hub, 2014. Copyright: Vincenzo Manzoni • Linguaggio di programmazione specifico per l’analisi dei dati • E’ gratuito, open source e disponibile per Windows, Mac OSX e Linux. • E’ composto da un core e da moduli aggiuntivi che ne estendono le funzionalità. • Web: www.r-project.org 16 R LINGUAGGIO PER L’ANALISI STATISTICA DEI DATI
  • 17. Introduzione ai Big Data e alla scienza dei dati, Palazzolo Digital Hub, 2014. Copyright: Vincenzo Manzoni 17 PERCHÉ HO SCELTO R? POPOLARITÀ Post su StackOverflow
  • 18. Introduzione ai Big Data e alla scienza dei dati, Palazzolo Digital Hub, 2014. Copyright: Vincenzo Manzoni R STUDIO (RSTUDIO.COM) INTERFACCIA UTENTE GRAFICA PER R 18 Linea di comando Script (programma) Variabili Aiuto, grafici www.rstudio.com
  • 19. Introduzione ai Big Data e alla scienza dei dati, Palazzolo Digital Hub, 2014. Copyright: Vincenzo Manzoni RSTUDIO Cliccare su RStudio per aprire l’applicazione e iniziare a programmare in R 19
  • 20. Introduzione ai Big Data e alla scienza dei dati, Palazzolo Digital Hub, 2014. Copyright: Vincenzo Manzoni R CHIEDERE AIUTO > ?nomecomando 20
  • 21. Introduzione ai Big Data e alla scienza dei dati, Palazzolo Digital Hub, 2014. Copyright: Vincenzo Manzoni R INIZIAMO! • Impostiamo la directory di lavoro con il comando 
 setwd(‘/home/bigdata/Documenti/Lezione_1’); • Carichiamo il file CSV con il comando
 titanic  <-­‐  read.csv(‘titanic.csv’,  header=TRUE); 21 La freccina indica che quello che c’è a destra, finisce in quello che c’è a sinistra. titanic è una variabile
  • 22. Introduzione ai Big Data e alla scienza dei dati, Palazzolo Digital Hub, 2014. Copyright: Vincenzo Manzoni R INIZIAMO! Diamo una prima occhiata alla struttura dei dati con il comando str(titanic)   ! 'data.frame':   891  obs.  of    12  variables:
 $  PassengerId:  int    1  2  3  4  5  6  7  8  9  10  ...
 $  Survived      :  int    0  1  1  1  0  0  0  0  1  1  ...
 $  Pclass          :  int    3  1  3  1  3  3  1  3  3  2  ...
 $  Name              :  Factor  w/  891  levels  "Abbing,  Mr.  Anthony",..:  109  191  358  277  16  559  520  629  416   581  ...
 $  Sex                :  Factor  w/  2  levels  "female","male":  2  1  1  1  2  2  2  2  1  1  ...
 $  Age                :  num    22  38  26  35  35  NA  54  2  27  14  ...
 $  SibSp            :  int    1  1  0  1  0  0  0  3  0  1  ...
 $  Parch            :  int    0  0  0  0  0  0  0  1  2  0  ...
 $  Ticket          :  Factor  w/  681  levels  "110152","110413",..:  525  596  662  50  473  276  86  396  345  133  ...
 $  Fare              :  num    7.25  71.28  7.92  53.1  8.05  ...
 $  Cabin            :  Factor  w/  148  levels  "","A10","A14",..:  1  83  1  57  1  1  131  1  1  1  ...
 $  Embarked      :  Factor  w/  4  levels  "","C","Q","S":  4  2  4  4  4  3  4  4  4  2  ... 22 Numero di osservazioni (righe) Numero di variabili (colonne) Nome della colonna Tipo di variabile: intera Tipo di variabile: numero con virgola Tipo di variabile: fattore, con un esempio dei valori che può avere
  • 23. Introduzione ai Big Data e alla scienza dei dati, Palazzolo Digital Hub, 2014. Copyright: Vincenzo Manzoni R INIZIAMO! Per avere un’idea della distribuzione statistica dei valori di una colonna, usiamo il comando summary(titanic) 23 L’età è stata correttamente interpretata come una misura Survived è stato interpretato come una misura, anziché come una dimensione (ovvero, variabile che può assumere solo un certo numero di valori discreti)
  • 24. Introduzione ai Big Data e alla scienza dei dati, Palazzolo Digital Hub, 2014. Copyright: Vincenzo Manzoni R INIZIAMO! 24 Specifico che la colonna Survived è un factor (il modo con cui R chiama le dimensioni) Per accedere alle colonne si usa il $.
  • 25. Introduzione ai Big Data e alla scienza dei dati, Palazzolo Digital Hub, 2014. Copyright: Vincenzo Manzoni R INIZIAMO! • Diamo un’occhiata ai primi elementi con il comando head(titanic) • … e agli ultimi con il 
 comando tail(titanic) 25
  • 26. Introduzione ai Big Data e alla scienza dei dati, Palazzolo Digital Hub, 2014. Copyright: Vincenzo Manzoni ESERCIZIO 2.1 R 1. Attraverso il comando str(), guardare il tipo dei campi riconosciuti da R. 2. Qual è la media del prezzo del biglietto?
 Suggerimento: il comando summary() può venirci in aiuto… 3. Convertire le dimensioni interpretate come misure. 4. Visualizzare i primi 3 e gli ultimi 3 passeggeri.
 Suggerimento: la risposta si trova nella documentazione dei comandi head() e tail(). 26 Durata esercizio: 15 minuti
  • 27. Introduzione ai Big Data e alla scienza dei dati, Palazzolo Digital Hub, 2014. Copyright: Vincenzo Manzoni R: GRAFICI CON GGPLOT2 • ggplot2 è sistema per fare grafici in R, basato su una grammatica. • Si occupa di gestire i dettagli in modo trasparente all’utente (e.g. le etichette degli assi, la legenda, …) • Permette di produrre grafici a più livelli di alta qualità. • Sito web: http://ggplot2.org 27
  • 28. Introduzione ai Big Data e alla scienza dei dati, Palazzolo Digital Hub, 2014. Copyright: Vincenzo Manzoni R: GGPLOT2 INSTALLAZIONE DEL PACCHETTO E USO • La prima volta che si usa, il pacchetto va installato con il comando 
 install.packages(‘ggplot2’,  dependencies=TRUE) • Per usarlo in un proprio script, inserirlo con il comando
 library(‘ggplot2’) 28
  • 29. Introduzione ai Big Data e alla scienza dei dati, Palazzolo Digital Hub, 2014. Copyright: Vincenzo Manzoni R: GRAFICI DISTRIBUZIONI STATISTICHE • Quale era la distribuzione statistica dell’età? 
 qplot(data  =  titanic,  x  =  Age) 29 Il dataframe dove sono contenuti i dati La misura di cui calcolare la distribuzione statistica Etichetta automatica
  • 30. Introduzione ai Big Data e alla scienza dei dati, Palazzolo Digital Hub, 2014. Copyright: Vincenzo Manzoni R: GRAFICI DISTRIBUZIONI STATISTICHE • Con l’attributo binwidth si può specificare la larghezza delle barre.
 qplot(data  =  titanic,  x  =  Age,  binwidth=10) 30 Una barra ogni 10 anni
  • 31. Introduzione ai Big Data e alla scienza dei dati, Palazzolo Digital Hub, 2014. Copyright: Vincenzo Manzoni R: GRAFICI DISTRIBUZIONI STATISTICHE • Con l’attributo xlab, si può specificare un’etichetta diversa 
 qplot(data  =  titanic,  x  =  Age,  xlab=“Età”) 31 La misura di cui calcolare la distribuzione statistica
  • 32. Introduzione ai Big Data e alla scienza dei dati, Palazzolo Digital Hub, 2014. Copyright: Vincenzo Manzoni R ESPLORIAMO GRAFICAMENTE I DATI • Quanti sopravvissuti per sesso?
 table(titanic$Sex,  titanic$Survived);
                                              0      1
                            female    81  233
                            male      468  109 • Vediamolo in forma grafica.
 qplot(data=titanic,  
    x=Sex,  
    fill=Sex,
    facets=~Survived)
 32 Coloro le barre in funzione del sesso Categorie per sopravvissuti
  • 33. Introduzione ai Big Data e alla scienza dei dati, Palazzolo Digital Hub, 2014. Copyright: Vincenzo Manzoni ESERCIZIO 2.2 GRAFICI IN R 1. Jack Dawson aveva 20 anni quando si imbarcò sulTitanic in IIIa classe. Quale era la distribuzione statistica dell’età per classe? (Ovvero, graficare la distribuzione dell’età rispetto al sesso e alla classe di imbarco.) 2. Graficare quanti uomini e quante donne si sono imbarcati per ogni porto. 33 Durata esercizio: 15 minuti
  • 34. Introduzione ai Big Data e alla scienza dei dati, Palazzolo Digital Hub, 2014. Copyright: Vincenzo Manzoni ESERCIZIO 2.2 SOLUZIONE 34 qplot(data=subset(titanic,  Embarked  !=  ''),  x=Embarked,
   fill=Sex,  facets=~Pclass) qplot(data=titanic,  x=Age,  fill=Sex,  
   facets=Sex~Pclass,  binwidth=5)
  • 35. Introduzione ai Big Data e alla scienza dei dati, Palazzolo Digital Hub, 2014. Copyright: Vincenzo Manzoni UN NUOVO DATASET 35 miglia per gallone cilindri potenza peso tempo sul 1/4 di miglio trasmissione (automatica / manuale)
  • 36. Introduzione ai Big Data e alla scienza dei dati, Palazzolo Digital Hub, 2014. Copyright: Vincenzo Manzoni SCATTER PLOT cars  <-­‐  mtcars
 cars$am  <-­‐  as.factor(cars$am)
 cars$cyl  <-­‐  as.factor(cars$cyl)
 
 qplot(data=cars,  x=mpg,  y=hp,  
   geom=c("point",     "smooth"),  
   method="lm")
 
 qplot(data=cars,  x=hp,  y=mpg,  
   color=cyl,  
   geom=c("point",  "smooth"),  
   method="lm")   36
  • 37. Introduzione ai Big Data e alla scienza dei dati, Palazzolo Digital Hub, 2014. Copyright: Vincenzo Manzoni R COMANDI UTILI 37 Comando Significato ?comando Mostra la documentazione del comando (es. ?read.csv) #  Commento Commento di riga. setwd(‘directory’) Imposta la directory di lavoro. var  <-­‐  read.csv(‘nomefile’) Crea un dataset dal file ‘nomefile’ e lo salva in var. La presenza di una intestazione e il separatore di campo si specificanohead(variabile) Mostra i primi 6 elementi della variabile (vettore, matrice, dataframe). tail(variabile) Mostra gli ultimi 6 elementi della variabile (vettore, matrice, dataframe). str(variabile) Mostra la struttura della variabile. summary(oggetto) Mostra il sommario dell’oggetto (compresi dataframe). Vedremo che oggetti diversi produco sommari diversi.as.factor(variabile) Converte una variabile da tipo int a tipo factor. rm(variabile) Elimina la variabile (es. rm(foo)). install.packages(‘pacchetto’,   dependencies=TRUE) Installa l’add-on pacchetto e le sue dipendenze.
  • 38. Introduzione ai Big Data e alla scienza dei dati, Palazzolo Digital Hub, 2014. Copyright: Vincenzo Manzoni ESERCIZIO 2.3 • Il dataset Orange (per informazioni, ?Orange) contiene la misura della circonferenza di 5 alberi di arancia nel tempo. Verificare graficamente se esiste una relazione tra età in giorni e circonferenza. • Il dataset movies (per informazioni, ?movies) contiene informazioni sui film. • Individuare in che anno è stato girato il primo film in catalogo. • Qual è la media di durata. • Visualizzare il numero di film per anno. 38
  • 39. Introduzione ai Big Data e alla scienza dei dati, Palazzolo Digital Hub, 2014. Copyright: Vincenzo Manzoni ANALISI ESPLORATIVA DEI DATI CONTABLEAU 39
  • 40. Introduzione ai Big Data e alla scienza dei dati, Palazzolo Digital Hub, 2014. Copyright: Vincenzo Manzoni TABLEAU • Software per la visualizzazione interattiva dei dati. • Si collega a molte fonti di dati (Excel, file di testo, svariati tipi di database). • Permette l’analisi dei dati in modo grafico. • Permette la creazione di dashboard. • Per il momento disponibile solo per Windows :( • Tableau: www.tableausoftware.com 40
  • 41. Introduzione ai Big Data e alla scienza dei dati, Palazzolo Digital Hub, 2014. Copyright: Vincenzo Manzoni TABLEAU DEMO 41
  • 42. Introduzione ai Big Data e alla scienza dei dati, Palazzolo Digital Hub, 2014. Copyright: Vincenzo Manzoni LINK UTILI • Sito web del corso: www.vincenzomanzoni.com/corsi • Convertitore da CSV a JSON: http://www.convertcsv.com/csv-to-json.htm • Convertitore JSON-XML: http://www.utilities-online.info/xmltojson • R: www.r-project.org • RStudio: www.rstudio.com • Quick R (manuale di R): http://www.statmethods.net • Manuale per fare grafici in R: http://www.cookbook-r.com/Graphs/ • Documentazione ufficiale di ggplot2: http://docs.ggplot2.org/current/ • Tableau: www.tableausoftware.com 42
  • 43. Introduzione ai Big Data e alla scienza dei dati, Palazzolo Digital Hub, 2014. Copyright: Vincenzo Manzoni LA PROSSIMA LEZIONE AGENDA 1. Ottenere i dati attraverso le API 2. Fondamenti di Machine Learning… ovvero come insegnare alle macchine. 43