Laboratorio di Statistica e Analisi dei Daticesari.di.unimi.it/teaching/SADcampolongo3.pdf ·...
Transcript of Laboratorio di Statistica e Analisi dei Daticesari.di.unimi.it/teaching/SADcampolongo3.pdf ·...
Laboratorio di Statistica e Analisi dei Dati
Nicolo Campolongo
Universita degli Studi di Milano
nicolocampolongounimiit
November 16 2018
Nicolo Campolongo (UniMi) Lezione 3 November 16 2018 1 17
Lezione 3
1 Matplotlib
2 Grafici a Barre
3 Istogrammi
4 Cumulativa empirica
5 Boxplot
6 QQplot
7 Diagramma di Pareto
8 Esercizi
Nicolo Campolongo (UniMi) Lezione 3 November 16 2018 2 17
Matplotlib
Matplotlib e una libreria Python per la generazione di grafici 2DLa collezione di funzioni pyplot permette di generare istogrammi grafici abarre grafici a torta ecc in modo da poter visualizzare i dati a nostradisposizione
import matplotlibpyplot as plt
pltplot()
pltshow()
plot e la piu semplice funzione per creare un grafico
Nicolo Campolongo (UniMi) Lezione 3 November 16 2018 3 17
Plot
Vediamo un semplice esempio
gtgtgt import matplotlibpyplot as plt
gtgtgt import numpy as np
gtgtgt x=nparange(10)
gtgtgt y=xx
gtgtgt pltplot(xy)
gtgtgt pltshow()
Nicolo Campolongo (UniMi) Lezione 3 November 16 2018 4 17
Grafico di dispersione
gtgtgt x = nprandomrand(N)
gtgtgt y = nprandomrand(N)
gtgtgt colors = nprandomrand(N)
gtgtgt area = (30 nprandomrand(N))2
gtgtgt pltscatter(x y s=area c=colors alpha=05)
gtgtgt pltshow()
Nicolo Campolongo (UniMi) Lezione 3 November 16 2018 5 17
Grafici a barre - 1
La funzione bar ci permette di tracciare grafici a barre
gtgtgt import pandas as pd
gtgtgt a = pdSeries([181 172 198])
gtgtgt aindex = [rsquoAlessiorsquo rsquoCicciorsquo rsquoGiorgiorsquo]
gtgtgt pltbar(aindex aget values())
gtgtgt pltshow()
Nicolo Campolongo (UniMi) Lezione 3 November 16 2018 6 17
Grafici a barre - 2
Possiamo invocare la funzione plotbar() direttamente su una serie
gtgtgt df ospedali = pdread csv(rsquodati-ospedalicsvrsquo sep=rsquorsquo)
gtgtgt freq regione = df ospedali[lsquoRegionersquo]value counts()
gtgtgt freq regioneplotbar()
gtgtgt pltxticks(rotation=25)
gtgtgt pltshow()
Nicolo Campolongo (UniMi) Lezione 3 November 16 2018 7 17
Istogrammi
La funzione hist ci permette di tracciare istogrammi
gtgtgt heroes = pdread csv(rsquoheroescsvrsquo sep=rsquorsquo)
gtgtgt height = heroes[rsquoHeightrsquo]
gtgtgt heightplothist()
gtgtgt pltshow()
Nicolo Campolongo (UniMi) Lezione 3 November 16 2018 8 17
Grafici con le Series
In generale possiamo tracciare diversi tipi di grafici con le Series
lsquolinersquo line plot (default)
lsquobarrsquo vertical bar plot
lsquobarhrsquo horizontal bar plot
lsquohistrsquo histogram
lsquoboxrsquo boxplot
lsquokdersquo Kernel Density Estimation plot
lsquodensityrsquo same as lsquokdersquo
lsquoarearsquo area plot
lsquopiersquo pie plot
Per saperne di piu consultare questo link
Nicolo Campolongo (UniMi) Lezione 3 November 16 2018 9 17
Distribuzione cumulativa empirica - 1
Per visualizzare la distribuzione cumulativa empirica possiamo utilizzare ilseguente metodo
gtgtgt x = heightsort values()
gtgtgt y = nparange(len(x)) float(len(x))
gtgtgt pltplot(x y)
gtgtgt pltshow()
Nicolo Campolongo (UniMi) Lezione 3 November 16 2018 10 17
Distribuzione cumulativa empirica - 2
O in alternativa utilizzare la funzione ECDF del modulo statsmodels
gtgtgt from statsmodelsdistributionsempirical distribution
import ECDF
gtgtgt dist = ECDF(height)
gtgtgt pltplot(distx disty)
gtgtgt pltshow()
Che produce in output il grafico della pagina precedente (provare percredere)
Nicolo Campolongo (UniMi) Lezione 3 November 16 2018 11 17
Boxplot
Rappresenta la distribuzione di un vettore di numeri cerchiando gli outlier
gtgtgt weight = heroes[rsquoWeightrsquo]
gtgtgt weightplotbox()
gtgtgt pltshow()
Nicolo Campolongo (UniMi) Lezione 3 November 16 2018 12 17
QQplot
Grafico di dispersione dei quantili di due distribuzioni Piu le distribuzionisono simili piu si avvicina alla bisettrice del primo quadrante
gtgtgt import statsmodelsapi as sm
gtgtgt smqqplot 2samples(height weight line=rsquo45rsquo)
gtgtgt pltshow()
Nicolo Campolongo (UniMi) Lezione 3 November 16 2018 13 17
Diagramma di Pareto - 1
Inserisce nello stesso grafico un diagramma a barre delle frequenze relativeordinate in maniera decrescente ed un grafico a rdquolinea spezzatardquo dellefrequenze cumulateEsiste un package Python per tracciare Diagrammi di Pareto al seguentelink
gtgtgt from paretochart import pareto
gtgtgt eye color freq = heroes[rsquoEye colorrsquo]value counts()
len(heroes)
gtgtgt common colors = eye color freq[eye color freq gt
02]index
gtgtgt common colors data = heroes[rsquoEye colorrsquo][heroes[rsquoEye
colorrsquo]isin(common colors)]
Nicolo Campolongo (UniMi) Lezione 3 November 16 2018 14 17
Diagramma di Pareto - 2
gtgtgt common colors freq =
common colors datavalue counts()len(common colors data)
gtgtgt
pareto(common colors freqlabels=common colors freqindex)
gtgtgt pltshow()
Nicolo Campolongo (UniMi) Lezione 3 November 16 2018 15 17
Esercizi - 1
Utilizzando il file capellicsv (disponibile sulla pagina del corso)
1 Calcolare coefficiente di correlazione (di Pearson) tra lunghezzacapelli e le altre misure (usando la funzione Pandas corr)
2 Visualizzare i relativi grafici di dispersione Confermano il valorenumerico
3 Visualizzare il boxplot e lrsquoistogramma della colonnaspesaShampoMensile Cosa li accomuna
Nicolo Campolongo (UniMi) Lezione 3 November 16 2018 16 17
Esercizi - 2
Utilizzando il file dati-ospedalicsv
1 Visualizzate la distribuzione cumulativa empirica e un barplotdellrsquoattributo Medici SSN
2 Controllare se Medici SSN e Farmacisti SSN seguono la stessadistribuzione (usando qqplot)
3 Visualizzare il diagramma di Pareto della serie contenente i dati cherappresentano i Medici SSN per Regione
Completare lrsquoanalisi esplorativa in finanziamentipdf
Nicolo Campolongo (UniMi) Lezione 3 November 16 2018 17 17
- Matplotlib
- Grafici a Barre
- Istogrammi
- Cumulativa empirica
- Boxplot
- QQplot
- Diagramma di Pareto
- Esercizi
-
Lezione 3
1 Matplotlib
2 Grafici a Barre
3 Istogrammi
4 Cumulativa empirica
5 Boxplot
6 QQplot
7 Diagramma di Pareto
8 Esercizi
Nicolo Campolongo (UniMi) Lezione 3 November 16 2018 2 17
Matplotlib
Matplotlib e una libreria Python per la generazione di grafici 2DLa collezione di funzioni pyplot permette di generare istogrammi grafici abarre grafici a torta ecc in modo da poter visualizzare i dati a nostradisposizione
import matplotlibpyplot as plt
pltplot()
pltshow()
plot e la piu semplice funzione per creare un grafico
Nicolo Campolongo (UniMi) Lezione 3 November 16 2018 3 17
Plot
Vediamo un semplice esempio
gtgtgt import matplotlibpyplot as plt
gtgtgt import numpy as np
gtgtgt x=nparange(10)
gtgtgt y=xx
gtgtgt pltplot(xy)
gtgtgt pltshow()
Nicolo Campolongo (UniMi) Lezione 3 November 16 2018 4 17
Grafico di dispersione
gtgtgt x = nprandomrand(N)
gtgtgt y = nprandomrand(N)
gtgtgt colors = nprandomrand(N)
gtgtgt area = (30 nprandomrand(N))2
gtgtgt pltscatter(x y s=area c=colors alpha=05)
gtgtgt pltshow()
Nicolo Campolongo (UniMi) Lezione 3 November 16 2018 5 17
Grafici a barre - 1
La funzione bar ci permette di tracciare grafici a barre
gtgtgt import pandas as pd
gtgtgt a = pdSeries([181 172 198])
gtgtgt aindex = [rsquoAlessiorsquo rsquoCicciorsquo rsquoGiorgiorsquo]
gtgtgt pltbar(aindex aget values())
gtgtgt pltshow()
Nicolo Campolongo (UniMi) Lezione 3 November 16 2018 6 17
Grafici a barre - 2
Possiamo invocare la funzione plotbar() direttamente su una serie
gtgtgt df ospedali = pdread csv(rsquodati-ospedalicsvrsquo sep=rsquorsquo)
gtgtgt freq regione = df ospedali[lsquoRegionersquo]value counts()
gtgtgt freq regioneplotbar()
gtgtgt pltxticks(rotation=25)
gtgtgt pltshow()
Nicolo Campolongo (UniMi) Lezione 3 November 16 2018 7 17
Istogrammi
La funzione hist ci permette di tracciare istogrammi
gtgtgt heroes = pdread csv(rsquoheroescsvrsquo sep=rsquorsquo)
gtgtgt height = heroes[rsquoHeightrsquo]
gtgtgt heightplothist()
gtgtgt pltshow()
Nicolo Campolongo (UniMi) Lezione 3 November 16 2018 8 17
Grafici con le Series
In generale possiamo tracciare diversi tipi di grafici con le Series
lsquolinersquo line plot (default)
lsquobarrsquo vertical bar plot
lsquobarhrsquo horizontal bar plot
lsquohistrsquo histogram
lsquoboxrsquo boxplot
lsquokdersquo Kernel Density Estimation plot
lsquodensityrsquo same as lsquokdersquo
lsquoarearsquo area plot
lsquopiersquo pie plot
Per saperne di piu consultare questo link
Nicolo Campolongo (UniMi) Lezione 3 November 16 2018 9 17
Distribuzione cumulativa empirica - 1
Per visualizzare la distribuzione cumulativa empirica possiamo utilizzare ilseguente metodo
gtgtgt x = heightsort values()
gtgtgt y = nparange(len(x)) float(len(x))
gtgtgt pltplot(x y)
gtgtgt pltshow()
Nicolo Campolongo (UniMi) Lezione 3 November 16 2018 10 17
Distribuzione cumulativa empirica - 2
O in alternativa utilizzare la funzione ECDF del modulo statsmodels
gtgtgt from statsmodelsdistributionsempirical distribution
import ECDF
gtgtgt dist = ECDF(height)
gtgtgt pltplot(distx disty)
gtgtgt pltshow()
Che produce in output il grafico della pagina precedente (provare percredere)
Nicolo Campolongo (UniMi) Lezione 3 November 16 2018 11 17
Boxplot
Rappresenta la distribuzione di un vettore di numeri cerchiando gli outlier
gtgtgt weight = heroes[rsquoWeightrsquo]
gtgtgt weightplotbox()
gtgtgt pltshow()
Nicolo Campolongo (UniMi) Lezione 3 November 16 2018 12 17
QQplot
Grafico di dispersione dei quantili di due distribuzioni Piu le distribuzionisono simili piu si avvicina alla bisettrice del primo quadrante
gtgtgt import statsmodelsapi as sm
gtgtgt smqqplot 2samples(height weight line=rsquo45rsquo)
gtgtgt pltshow()
Nicolo Campolongo (UniMi) Lezione 3 November 16 2018 13 17
Diagramma di Pareto - 1
Inserisce nello stesso grafico un diagramma a barre delle frequenze relativeordinate in maniera decrescente ed un grafico a rdquolinea spezzatardquo dellefrequenze cumulateEsiste un package Python per tracciare Diagrammi di Pareto al seguentelink
gtgtgt from paretochart import pareto
gtgtgt eye color freq = heroes[rsquoEye colorrsquo]value counts()
len(heroes)
gtgtgt common colors = eye color freq[eye color freq gt
02]index
gtgtgt common colors data = heroes[rsquoEye colorrsquo][heroes[rsquoEye
colorrsquo]isin(common colors)]
Nicolo Campolongo (UniMi) Lezione 3 November 16 2018 14 17
Diagramma di Pareto - 2
gtgtgt common colors freq =
common colors datavalue counts()len(common colors data)
gtgtgt
pareto(common colors freqlabels=common colors freqindex)
gtgtgt pltshow()
Nicolo Campolongo (UniMi) Lezione 3 November 16 2018 15 17
Esercizi - 1
Utilizzando il file capellicsv (disponibile sulla pagina del corso)
1 Calcolare coefficiente di correlazione (di Pearson) tra lunghezzacapelli e le altre misure (usando la funzione Pandas corr)
2 Visualizzare i relativi grafici di dispersione Confermano il valorenumerico
3 Visualizzare il boxplot e lrsquoistogramma della colonnaspesaShampoMensile Cosa li accomuna
Nicolo Campolongo (UniMi) Lezione 3 November 16 2018 16 17
Esercizi - 2
Utilizzando il file dati-ospedalicsv
1 Visualizzate la distribuzione cumulativa empirica e un barplotdellrsquoattributo Medici SSN
2 Controllare se Medici SSN e Farmacisti SSN seguono la stessadistribuzione (usando qqplot)
3 Visualizzare il diagramma di Pareto della serie contenente i dati cherappresentano i Medici SSN per Regione
Completare lrsquoanalisi esplorativa in finanziamentipdf
Nicolo Campolongo (UniMi) Lezione 3 November 16 2018 17 17
- Matplotlib
- Grafici a Barre
- Istogrammi
- Cumulativa empirica
- Boxplot
- QQplot
- Diagramma di Pareto
- Esercizi
-
Matplotlib
Matplotlib e una libreria Python per la generazione di grafici 2DLa collezione di funzioni pyplot permette di generare istogrammi grafici abarre grafici a torta ecc in modo da poter visualizzare i dati a nostradisposizione
import matplotlibpyplot as plt
pltplot()
pltshow()
plot e la piu semplice funzione per creare un grafico
Nicolo Campolongo (UniMi) Lezione 3 November 16 2018 3 17
Plot
Vediamo un semplice esempio
gtgtgt import matplotlibpyplot as plt
gtgtgt import numpy as np
gtgtgt x=nparange(10)
gtgtgt y=xx
gtgtgt pltplot(xy)
gtgtgt pltshow()
Nicolo Campolongo (UniMi) Lezione 3 November 16 2018 4 17
Grafico di dispersione
gtgtgt x = nprandomrand(N)
gtgtgt y = nprandomrand(N)
gtgtgt colors = nprandomrand(N)
gtgtgt area = (30 nprandomrand(N))2
gtgtgt pltscatter(x y s=area c=colors alpha=05)
gtgtgt pltshow()
Nicolo Campolongo (UniMi) Lezione 3 November 16 2018 5 17
Grafici a barre - 1
La funzione bar ci permette di tracciare grafici a barre
gtgtgt import pandas as pd
gtgtgt a = pdSeries([181 172 198])
gtgtgt aindex = [rsquoAlessiorsquo rsquoCicciorsquo rsquoGiorgiorsquo]
gtgtgt pltbar(aindex aget values())
gtgtgt pltshow()
Nicolo Campolongo (UniMi) Lezione 3 November 16 2018 6 17
Grafici a barre - 2
Possiamo invocare la funzione plotbar() direttamente su una serie
gtgtgt df ospedali = pdread csv(rsquodati-ospedalicsvrsquo sep=rsquorsquo)
gtgtgt freq regione = df ospedali[lsquoRegionersquo]value counts()
gtgtgt freq regioneplotbar()
gtgtgt pltxticks(rotation=25)
gtgtgt pltshow()
Nicolo Campolongo (UniMi) Lezione 3 November 16 2018 7 17
Istogrammi
La funzione hist ci permette di tracciare istogrammi
gtgtgt heroes = pdread csv(rsquoheroescsvrsquo sep=rsquorsquo)
gtgtgt height = heroes[rsquoHeightrsquo]
gtgtgt heightplothist()
gtgtgt pltshow()
Nicolo Campolongo (UniMi) Lezione 3 November 16 2018 8 17
Grafici con le Series
In generale possiamo tracciare diversi tipi di grafici con le Series
lsquolinersquo line plot (default)
lsquobarrsquo vertical bar plot
lsquobarhrsquo horizontal bar plot
lsquohistrsquo histogram
lsquoboxrsquo boxplot
lsquokdersquo Kernel Density Estimation plot
lsquodensityrsquo same as lsquokdersquo
lsquoarearsquo area plot
lsquopiersquo pie plot
Per saperne di piu consultare questo link
Nicolo Campolongo (UniMi) Lezione 3 November 16 2018 9 17
Distribuzione cumulativa empirica - 1
Per visualizzare la distribuzione cumulativa empirica possiamo utilizzare ilseguente metodo
gtgtgt x = heightsort values()
gtgtgt y = nparange(len(x)) float(len(x))
gtgtgt pltplot(x y)
gtgtgt pltshow()
Nicolo Campolongo (UniMi) Lezione 3 November 16 2018 10 17
Distribuzione cumulativa empirica - 2
O in alternativa utilizzare la funzione ECDF del modulo statsmodels
gtgtgt from statsmodelsdistributionsempirical distribution
import ECDF
gtgtgt dist = ECDF(height)
gtgtgt pltplot(distx disty)
gtgtgt pltshow()
Che produce in output il grafico della pagina precedente (provare percredere)
Nicolo Campolongo (UniMi) Lezione 3 November 16 2018 11 17
Boxplot
Rappresenta la distribuzione di un vettore di numeri cerchiando gli outlier
gtgtgt weight = heroes[rsquoWeightrsquo]
gtgtgt weightplotbox()
gtgtgt pltshow()
Nicolo Campolongo (UniMi) Lezione 3 November 16 2018 12 17
QQplot
Grafico di dispersione dei quantili di due distribuzioni Piu le distribuzionisono simili piu si avvicina alla bisettrice del primo quadrante
gtgtgt import statsmodelsapi as sm
gtgtgt smqqplot 2samples(height weight line=rsquo45rsquo)
gtgtgt pltshow()
Nicolo Campolongo (UniMi) Lezione 3 November 16 2018 13 17
Diagramma di Pareto - 1
Inserisce nello stesso grafico un diagramma a barre delle frequenze relativeordinate in maniera decrescente ed un grafico a rdquolinea spezzatardquo dellefrequenze cumulateEsiste un package Python per tracciare Diagrammi di Pareto al seguentelink
gtgtgt from paretochart import pareto
gtgtgt eye color freq = heroes[rsquoEye colorrsquo]value counts()
len(heroes)
gtgtgt common colors = eye color freq[eye color freq gt
02]index
gtgtgt common colors data = heroes[rsquoEye colorrsquo][heroes[rsquoEye
colorrsquo]isin(common colors)]
Nicolo Campolongo (UniMi) Lezione 3 November 16 2018 14 17
Diagramma di Pareto - 2
gtgtgt common colors freq =
common colors datavalue counts()len(common colors data)
gtgtgt
pareto(common colors freqlabels=common colors freqindex)
gtgtgt pltshow()
Nicolo Campolongo (UniMi) Lezione 3 November 16 2018 15 17
Esercizi - 1
Utilizzando il file capellicsv (disponibile sulla pagina del corso)
1 Calcolare coefficiente di correlazione (di Pearson) tra lunghezzacapelli e le altre misure (usando la funzione Pandas corr)
2 Visualizzare i relativi grafici di dispersione Confermano il valorenumerico
3 Visualizzare il boxplot e lrsquoistogramma della colonnaspesaShampoMensile Cosa li accomuna
Nicolo Campolongo (UniMi) Lezione 3 November 16 2018 16 17
Esercizi - 2
Utilizzando il file dati-ospedalicsv
1 Visualizzate la distribuzione cumulativa empirica e un barplotdellrsquoattributo Medici SSN
2 Controllare se Medici SSN e Farmacisti SSN seguono la stessadistribuzione (usando qqplot)
3 Visualizzare il diagramma di Pareto della serie contenente i dati cherappresentano i Medici SSN per Regione
Completare lrsquoanalisi esplorativa in finanziamentipdf
Nicolo Campolongo (UniMi) Lezione 3 November 16 2018 17 17
- Matplotlib
- Grafici a Barre
- Istogrammi
- Cumulativa empirica
- Boxplot
- QQplot
- Diagramma di Pareto
- Esercizi
-
Plot
Vediamo un semplice esempio
gtgtgt import matplotlibpyplot as plt
gtgtgt import numpy as np
gtgtgt x=nparange(10)
gtgtgt y=xx
gtgtgt pltplot(xy)
gtgtgt pltshow()
Nicolo Campolongo (UniMi) Lezione 3 November 16 2018 4 17
Grafico di dispersione
gtgtgt x = nprandomrand(N)
gtgtgt y = nprandomrand(N)
gtgtgt colors = nprandomrand(N)
gtgtgt area = (30 nprandomrand(N))2
gtgtgt pltscatter(x y s=area c=colors alpha=05)
gtgtgt pltshow()
Nicolo Campolongo (UniMi) Lezione 3 November 16 2018 5 17
Grafici a barre - 1
La funzione bar ci permette di tracciare grafici a barre
gtgtgt import pandas as pd
gtgtgt a = pdSeries([181 172 198])
gtgtgt aindex = [rsquoAlessiorsquo rsquoCicciorsquo rsquoGiorgiorsquo]
gtgtgt pltbar(aindex aget values())
gtgtgt pltshow()
Nicolo Campolongo (UniMi) Lezione 3 November 16 2018 6 17
Grafici a barre - 2
Possiamo invocare la funzione plotbar() direttamente su una serie
gtgtgt df ospedali = pdread csv(rsquodati-ospedalicsvrsquo sep=rsquorsquo)
gtgtgt freq regione = df ospedali[lsquoRegionersquo]value counts()
gtgtgt freq regioneplotbar()
gtgtgt pltxticks(rotation=25)
gtgtgt pltshow()
Nicolo Campolongo (UniMi) Lezione 3 November 16 2018 7 17
Istogrammi
La funzione hist ci permette di tracciare istogrammi
gtgtgt heroes = pdread csv(rsquoheroescsvrsquo sep=rsquorsquo)
gtgtgt height = heroes[rsquoHeightrsquo]
gtgtgt heightplothist()
gtgtgt pltshow()
Nicolo Campolongo (UniMi) Lezione 3 November 16 2018 8 17
Grafici con le Series
In generale possiamo tracciare diversi tipi di grafici con le Series
lsquolinersquo line plot (default)
lsquobarrsquo vertical bar plot
lsquobarhrsquo horizontal bar plot
lsquohistrsquo histogram
lsquoboxrsquo boxplot
lsquokdersquo Kernel Density Estimation plot
lsquodensityrsquo same as lsquokdersquo
lsquoarearsquo area plot
lsquopiersquo pie plot
Per saperne di piu consultare questo link
Nicolo Campolongo (UniMi) Lezione 3 November 16 2018 9 17
Distribuzione cumulativa empirica - 1
Per visualizzare la distribuzione cumulativa empirica possiamo utilizzare ilseguente metodo
gtgtgt x = heightsort values()
gtgtgt y = nparange(len(x)) float(len(x))
gtgtgt pltplot(x y)
gtgtgt pltshow()
Nicolo Campolongo (UniMi) Lezione 3 November 16 2018 10 17
Distribuzione cumulativa empirica - 2
O in alternativa utilizzare la funzione ECDF del modulo statsmodels
gtgtgt from statsmodelsdistributionsempirical distribution
import ECDF
gtgtgt dist = ECDF(height)
gtgtgt pltplot(distx disty)
gtgtgt pltshow()
Che produce in output il grafico della pagina precedente (provare percredere)
Nicolo Campolongo (UniMi) Lezione 3 November 16 2018 11 17
Boxplot
Rappresenta la distribuzione di un vettore di numeri cerchiando gli outlier
gtgtgt weight = heroes[rsquoWeightrsquo]
gtgtgt weightplotbox()
gtgtgt pltshow()
Nicolo Campolongo (UniMi) Lezione 3 November 16 2018 12 17
QQplot
Grafico di dispersione dei quantili di due distribuzioni Piu le distribuzionisono simili piu si avvicina alla bisettrice del primo quadrante
gtgtgt import statsmodelsapi as sm
gtgtgt smqqplot 2samples(height weight line=rsquo45rsquo)
gtgtgt pltshow()
Nicolo Campolongo (UniMi) Lezione 3 November 16 2018 13 17
Diagramma di Pareto - 1
Inserisce nello stesso grafico un diagramma a barre delle frequenze relativeordinate in maniera decrescente ed un grafico a rdquolinea spezzatardquo dellefrequenze cumulateEsiste un package Python per tracciare Diagrammi di Pareto al seguentelink
gtgtgt from paretochart import pareto
gtgtgt eye color freq = heroes[rsquoEye colorrsquo]value counts()
len(heroes)
gtgtgt common colors = eye color freq[eye color freq gt
02]index
gtgtgt common colors data = heroes[rsquoEye colorrsquo][heroes[rsquoEye
colorrsquo]isin(common colors)]
Nicolo Campolongo (UniMi) Lezione 3 November 16 2018 14 17
Diagramma di Pareto - 2
gtgtgt common colors freq =
common colors datavalue counts()len(common colors data)
gtgtgt
pareto(common colors freqlabels=common colors freqindex)
gtgtgt pltshow()
Nicolo Campolongo (UniMi) Lezione 3 November 16 2018 15 17
Esercizi - 1
Utilizzando il file capellicsv (disponibile sulla pagina del corso)
1 Calcolare coefficiente di correlazione (di Pearson) tra lunghezzacapelli e le altre misure (usando la funzione Pandas corr)
2 Visualizzare i relativi grafici di dispersione Confermano il valorenumerico
3 Visualizzare il boxplot e lrsquoistogramma della colonnaspesaShampoMensile Cosa li accomuna
Nicolo Campolongo (UniMi) Lezione 3 November 16 2018 16 17
Esercizi - 2
Utilizzando il file dati-ospedalicsv
1 Visualizzate la distribuzione cumulativa empirica e un barplotdellrsquoattributo Medici SSN
2 Controllare se Medici SSN e Farmacisti SSN seguono la stessadistribuzione (usando qqplot)
3 Visualizzare il diagramma di Pareto della serie contenente i dati cherappresentano i Medici SSN per Regione
Completare lrsquoanalisi esplorativa in finanziamentipdf
Nicolo Campolongo (UniMi) Lezione 3 November 16 2018 17 17
- Matplotlib
- Grafici a Barre
- Istogrammi
- Cumulativa empirica
- Boxplot
- QQplot
- Diagramma di Pareto
- Esercizi
-
Grafico di dispersione
gtgtgt x = nprandomrand(N)
gtgtgt y = nprandomrand(N)
gtgtgt colors = nprandomrand(N)
gtgtgt area = (30 nprandomrand(N))2
gtgtgt pltscatter(x y s=area c=colors alpha=05)
gtgtgt pltshow()
Nicolo Campolongo (UniMi) Lezione 3 November 16 2018 5 17
Grafici a barre - 1
La funzione bar ci permette di tracciare grafici a barre
gtgtgt import pandas as pd
gtgtgt a = pdSeries([181 172 198])
gtgtgt aindex = [rsquoAlessiorsquo rsquoCicciorsquo rsquoGiorgiorsquo]
gtgtgt pltbar(aindex aget values())
gtgtgt pltshow()
Nicolo Campolongo (UniMi) Lezione 3 November 16 2018 6 17
Grafici a barre - 2
Possiamo invocare la funzione plotbar() direttamente su una serie
gtgtgt df ospedali = pdread csv(rsquodati-ospedalicsvrsquo sep=rsquorsquo)
gtgtgt freq regione = df ospedali[lsquoRegionersquo]value counts()
gtgtgt freq regioneplotbar()
gtgtgt pltxticks(rotation=25)
gtgtgt pltshow()
Nicolo Campolongo (UniMi) Lezione 3 November 16 2018 7 17
Istogrammi
La funzione hist ci permette di tracciare istogrammi
gtgtgt heroes = pdread csv(rsquoheroescsvrsquo sep=rsquorsquo)
gtgtgt height = heroes[rsquoHeightrsquo]
gtgtgt heightplothist()
gtgtgt pltshow()
Nicolo Campolongo (UniMi) Lezione 3 November 16 2018 8 17
Grafici con le Series
In generale possiamo tracciare diversi tipi di grafici con le Series
lsquolinersquo line plot (default)
lsquobarrsquo vertical bar plot
lsquobarhrsquo horizontal bar plot
lsquohistrsquo histogram
lsquoboxrsquo boxplot
lsquokdersquo Kernel Density Estimation plot
lsquodensityrsquo same as lsquokdersquo
lsquoarearsquo area plot
lsquopiersquo pie plot
Per saperne di piu consultare questo link
Nicolo Campolongo (UniMi) Lezione 3 November 16 2018 9 17
Distribuzione cumulativa empirica - 1
Per visualizzare la distribuzione cumulativa empirica possiamo utilizzare ilseguente metodo
gtgtgt x = heightsort values()
gtgtgt y = nparange(len(x)) float(len(x))
gtgtgt pltplot(x y)
gtgtgt pltshow()
Nicolo Campolongo (UniMi) Lezione 3 November 16 2018 10 17
Distribuzione cumulativa empirica - 2
O in alternativa utilizzare la funzione ECDF del modulo statsmodels
gtgtgt from statsmodelsdistributionsempirical distribution
import ECDF
gtgtgt dist = ECDF(height)
gtgtgt pltplot(distx disty)
gtgtgt pltshow()
Che produce in output il grafico della pagina precedente (provare percredere)
Nicolo Campolongo (UniMi) Lezione 3 November 16 2018 11 17
Boxplot
Rappresenta la distribuzione di un vettore di numeri cerchiando gli outlier
gtgtgt weight = heroes[rsquoWeightrsquo]
gtgtgt weightplotbox()
gtgtgt pltshow()
Nicolo Campolongo (UniMi) Lezione 3 November 16 2018 12 17
QQplot
Grafico di dispersione dei quantili di due distribuzioni Piu le distribuzionisono simili piu si avvicina alla bisettrice del primo quadrante
gtgtgt import statsmodelsapi as sm
gtgtgt smqqplot 2samples(height weight line=rsquo45rsquo)
gtgtgt pltshow()
Nicolo Campolongo (UniMi) Lezione 3 November 16 2018 13 17
Diagramma di Pareto - 1
Inserisce nello stesso grafico un diagramma a barre delle frequenze relativeordinate in maniera decrescente ed un grafico a rdquolinea spezzatardquo dellefrequenze cumulateEsiste un package Python per tracciare Diagrammi di Pareto al seguentelink
gtgtgt from paretochart import pareto
gtgtgt eye color freq = heroes[rsquoEye colorrsquo]value counts()
len(heroes)
gtgtgt common colors = eye color freq[eye color freq gt
02]index
gtgtgt common colors data = heroes[rsquoEye colorrsquo][heroes[rsquoEye
colorrsquo]isin(common colors)]
Nicolo Campolongo (UniMi) Lezione 3 November 16 2018 14 17
Diagramma di Pareto - 2
gtgtgt common colors freq =
common colors datavalue counts()len(common colors data)
gtgtgt
pareto(common colors freqlabels=common colors freqindex)
gtgtgt pltshow()
Nicolo Campolongo (UniMi) Lezione 3 November 16 2018 15 17
Esercizi - 1
Utilizzando il file capellicsv (disponibile sulla pagina del corso)
1 Calcolare coefficiente di correlazione (di Pearson) tra lunghezzacapelli e le altre misure (usando la funzione Pandas corr)
2 Visualizzare i relativi grafici di dispersione Confermano il valorenumerico
3 Visualizzare il boxplot e lrsquoistogramma della colonnaspesaShampoMensile Cosa li accomuna
Nicolo Campolongo (UniMi) Lezione 3 November 16 2018 16 17
Esercizi - 2
Utilizzando il file dati-ospedalicsv
1 Visualizzate la distribuzione cumulativa empirica e un barplotdellrsquoattributo Medici SSN
2 Controllare se Medici SSN e Farmacisti SSN seguono la stessadistribuzione (usando qqplot)
3 Visualizzare il diagramma di Pareto della serie contenente i dati cherappresentano i Medici SSN per Regione
Completare lrsquoanalisi esplorativa in finanziamentipdf
Nicolo Campolongo (UniMi) Lezione 3 November 16 2018 17 17
- Matplotlib
- Grafici a Barre
- Istogrammi
- Cumulativa empirica
- Boxplot
- QQplot
- Diagramma di Pareto
- Esercizi
-
Grafici a barre - 1
La funzione bar ci permette di tracciare grafici a barre
gtgtgt import pandas as pd
gtgtgt a = pdSeries([181 172 198])
gtgtgt aindex = [rsquoAlessiorsquo rsquoCicciorsquo rsquoGiorgiorsquo]
gtgtgt pltbar(aindex aget values())
gtgtgt pltshow()
Nicolo Campolongo (UniMi) Lezione 3 November 16 2018 6 17
Grafici a barre - 2
Possiamo invocare la funzione plotbar() direttamente su una serie
gtgtgt df ospedali = pdread csv(rsquodati-ospedalicsvrsquo sep=rsquorsquo)
gtgtgt freq regione = df ospedali[lsquoRegionersquo]value counts()
gtgtgt freq regioneplotbar()
gtgtgt pltxticks(rotation=25)
gtgtgt pltshow()
Nicolo Campolongo (UniMi) Lezione 3 November 16 2018 7 17
Istogrammi
La funzione hist ci permette di tracciare istogrammi
gtgtgt heroes = pdread csv(rsquoheroescsvrsquo sep=rsquorsquo)
gtgtgt height = heroes[rsquoHeightrsquo]
gtgtgt heightplothist()
gtgtgt pltshow()
Nicolo Campolongo (UniMi) Lezione 3 November 16 2018 8 17
Grafici con le Series
In generale possiamo tracciare diversi tipi di grafici con le Series
lsquolinersquo line plot (default)
lsquobarrsquo vertical bar plot
lsquobarhrsquo horizontal bar plot
lsquohistrsquo histogram
lsquoboxrsquo boxplot
lsquokdersquo Kernel Density Estimation plot
lsquodensityrsquo same as lsquokdersquo
lsquoarearsquo area plot
lsquopiersquo pie plot
Per saperne di piu consultare questo link
Nicolo Campolongo (UniMi) Lezione 3 November 16 2018 9 17
Distribuzione cumulativa empirica - 1
Per visualizzare la distribuzione cumulativa empirica possiamo utilizzare ilseguente metodo
gtgtgt x = heightsort values()
gtgtgt y = nparange(len(x)) float(len(x))
gtgtgt pltplot(x y)
gtgtgt pltshow()
Nicolo Campolongo (UniMi) Lezione 3 November 16 2018 10 17
Distribuzione cumulativa empirica - 2
O in alternativa utilizzare la funzione ECDF del modulo statsmodels
gtgtgt from statsmodelsdistributionsempirical distribution
import ECDF
gtgtgt dist = ECDF(height)
gtgtgt pltplot(distx disty)
gtgtgt pltshow()
Che produce in output il grafico della pagina precedente (provare percredere)
Nicolo Campolongo (UniMi) Lezione 3 November 16 2018 11 17
Boxplot
Rappresenta la distribuzione di un vettore di numeri cerchiando gli outlier
gtgtgt weight = heroes[rsquoWeightrsquo]
gtgtgt weightplotbox()
gtgtgt pltshow()
Nicolo Campolongo (UniMi) Lezione 3 November 16 2018 12 17
QQplot
Grafico di dispersione dei quantili di due distribuzioni Piu le distribuzionisono simili piu si avvicina alla bisettrice del primo quadrante
gtgtgt import statsmodelsapi as sm
gtgtgt smqqplot 2samples(height weight line=rsquo45rsquo)
gtgtgt pltshow()
Nicolo Campolongo (UniMi) Lezione 3 November 16 2018 13 17
Diagramma di Pareto - 1
Inserisce nello stesso grafico un diagramma a barre delle frequenze relativeordinate in maniera decrescente ed un grafico a rdquolinea spezzatardquo dellefrequenze cumulateEsiste un package Python per tracciare Diagrammi di Pareto al seguentelink
gtgtgt from paretochart import pareto
gtgtgt eye color freq = heroes[rsquoEye colorrsquo]value counts()
len(heroes)
gtgtgt common colors = eye color freq[eye color freq gt
02]index
gtgtgt common colors data = heroes[rsquoEye colorrsquo][heroes[rsquoEye
colorrsquo]isin(common colors)]
Nicolo Campolongo (UniMi) Lezione 3 November 16 2018 14 17
Diagramma di Pareto - 2
gtgtgt common colors freq =
common colors datavalue counts()len(common colors data)
gtgtgt
pareto(common colors freqlabels=common colors freqindex)
gtgtgt pltshow()
Nicolo Campolongo (UniMi) Lezione 3 November 16 2018 15 17
Esercizi - 1
Utilizzando il file capellicsv (disponibile sulla pagina del corso)
1 Calcolare coefficiente di correlazione (di Pearson) tra lunghezzacapelli e le altre misure (usando la funzione Pandas corr)
2 Visualizzare i relativi grafici di dispersione Confermano il valorenumerico
3 Visualizzare il boxplot e lrsquoistogramma della colonnaspesaShampoMensile Cosa li accomuna
Nicolo Campolongo (UniMi) Lezione 3 November 16 2018 16 17
Esercizi - 2
Utilizzando il file dati-ospedalicsv
1 Visualizzate la distribuzione cumulativa empirica e un barplotdellrsquoattributo Medici SSN
2 Controllare se Medici SSN e Farmacisti SSN seguono la stessadistribuzione (usando qqplot)
3 Visualizzare il diagramma di Pareto della serie contenente i dati cherappresentano i Medici SSN per Regione
Completare lrsquoanalisi esplorativa in finanziamentipdf
Nicolo Campolongo (UniMi) Lezione 3 November 16 2018 17 17
- Matplotlib
- Grafici a Barre
- Istogrammi
- Cumulativa empirica
- Boxplot
- QQplot
- Diagramma di Pareto
- Esercizi
-
Grafici a barre - 2
Possiamo invocare la funzione plotbar() direttamente su una serie
gtgtgt df ospedali = pdread csv(rsquodati-ospedalicsvrsquo sep=rsquorsquo)
gtgtgt freq regione = df ospedali[lsquoRegionersquo]value counts()
gtgtgt freq regioneplotbar()
gtgtgt pltxticks(rotation=25)
gtgtgt pltshow()
Nicolo Campolongo (UniMi) Lezione 3 November 16 2018 7 17
Istogrammi
La funzione hist ci permette di tracciare istogrammi
gtgtgt heroes = pdread csv(rsquoheroescsvrsquo sep=rsquorsquo)
gtgtgt height = heroes[rsquoHeightrsquo]
gtgtgt heightplothist()
gtgtgt pltshow()
Nicolo Campolongo (UniMi) Lezione 3 November 16 2018 8 17
Grafici con le Series
In generale possiamo tracciare diversi tipi di grafici con le Series
lsquolinersquo line plot (default)
lsquobarrsquo vertical bar plot
lsquobarhrsquo horizontal bar plot
lsquohistrsquo histogram
lsquoboxrsquo boxplot
lsquokdersquo Kernel Density Estimation plot
lsquodensityrsquo same as lsquokdersquo
lsquoarearsquo area plot
lsquopiersquo pie plot
Per saperne di piu consultare questo link
Nicolo Campolongo (UniMi) Lezione 3 November 16 2018 9 17
Distribuzione cumulativa empirica - 1
Per visualizzare la distribuzione cumulativa empirica possiamo utilizzare ilseguente metodo
gtgtgt x = heightsort values()
gtgtgt y = nparange(len(x)) float(len(x))
gtgtgt pltplot(x y)
gtgtgt pltshow()
Nicolo Campolongo (UniMi) Lezione 3 November 16 2018 10 17
Distribuzione cumulativa empirica - 2
O in alternativa utilizzare la funzione ECDF del modulo statsmodels
gtgtgt from statsmodelsdistributionsempirical distribution
import ECDF
gtgtgt dist = ECDF(height)
gtgtgt pltplot(distx disty)
gtgtgt pltshow()
Che produce in output il grafico della pagina precedente (provare percredere)
Nicolo Campolongo (UniMi) Lezione 3 November 16 2018 11 17
Boxplot
Rappresenta la distribuzione di un vettore di numeri cerchiando gli outlier
gtgtgt weight = heroes[rsquoWeightrsquo]
gtgtgt weightplotbox()
gtgtgt pltshow()
Nicolo Campolongo (UniMi) Lezione 3 November 16 2018 12 17
QQplot
Grafico di dispersione dei quantili di due distribuzioni Piu le distribuzionisono simili piu si avvicina alla bisettrice del primo quadrante
gtgtgt import statsmodelsapi as sm
gtgtgt smqqplot 2samples(height weight line=rsquo45rsquo)
gtgtgt pltshow()
Nicolo Campolongo (UniMi) Lezione 3 November 16 2018 13 17
Diagramma di Pareto - 1
Inserisce nello stesso grafico un diagramma a barre delle frequenze relativeordinate in maniera decrescente ed un grafico a rdquolinea spezzatardquo dellefrequenze cumulateEsiste un package Python per tracciare Diagrammi di Pareto al seguentelink
gtgtgt from paretochart import pareto
gtgtgt eye color freq = heroes[rsquoEye colorrsquo]value counts()
len(heroes)
gtgtgt common colors = eye color freq[eye color freq gt
02]index
gtgtgt common colors data = heroes[rsquoEye colorrsquo][heroes[rsquoEye
colorrsquo]isin(common colors)]
Nicolo Campolongo (UniMi) Lezione 3 November 16 2018 14 17
Diagramma di Pareto - 2
gtgtgt common colors freq =
common colors datavalue counts()len(common colors data)
gtgtgt
pareto(common colors freqlabels=common colors freqindex)
gtgtgt pltshow()
Nicolo Campolongo (UniMi) Lezione 3 November 16 2018 15 17
Esercizi - 1
Utilizzando il file capellicsv (disponibile sulla pagina del corso)
1 Calcolare coefficiente di correlazione (di Pearson) tra lunghezzacapelli e le altre misure (usando la funzione Pandas corr)
2 Visualizzare i relativi grafici di dispersione Confermano il valorenumerico
3 Visualizzare il boxplot e lrsquoistogramma della colonnaspesaShampoMensile Cosa li accomuna
Nicolo Campolongo (UniMi) Lezione 3 November 16 2018 16 17
Esercizi - 2
Utilizzando il file dati-ospedalicsv
1 Visualizzate la distribuzione cumulativa empirica e un barplotdellrsquoattributo Medici SSN
2 Controllare se Medici SSN e Farmacisti SSN seguono la stessadistribuzione (usando qqplot)
3 Visualizzare il diagramma di Pareto della serie contenente i dati cherappresentano i Medici SSN per Regione
Completare lrsquoanalisi esplorativa in finanziamentipdf
Nicolo Campolongo (UniMi) Lezione 3 November 16 2018 17 17
- Matplotlib
- Grafici a Barre
- Istogrammi
- Cumulativa empirica
- Boxplot
- QQplot
- Diagramma di Pareto
- Esercizi
-
Istogrammi
La funzione hist ci permette di tracciare istogrammi
gtgtgt heroes = pdread csv(rsquoheroescsvrsquo sep=rsquorsquo)
gtgtgt height = heroes[rsquoHeightrsquo]
gtgtgt heightplothist()
gtgtgt pltshow()
Nicolo Campolongo (UniMi) Lezione 3 November 16 2018 8 17
Grafici con le Series
In generale possiamo tracciare diversi tipi di grafici con le Series
lsquolinersquo line plot (default)
lsquobarrsquo vertical bar plot
lsquobarhrsquo horizontal bar plot
lsquohistrsquo histogram
lsquoboxrsquo boxplot
lsquokdersquo Kernel Density Estimation plot
lsquodensityrsquo same as lsquokdersquo
lsquoarearsquo area plot
lsquopiersquo pie plot
Per saperne di piu consultare questo link
Nicolo Campolongo (UniMi) Lezione 3 November 16 2018 9 17
Distribuzione cumulativa empirica - 1
Per visualizzare la distribuzione cumulativa empirica possiamo utilizzare ilseguente metodo
gtgtgt x = heightsort values()
gtgtgt y = nparange(len(x)) float(len(x))
gtgtgt pltplot(x y)
gtgtgt pltshow()
Nicolo Campolongo (UniMi) Lezione 3 November 16 2018 10 17
Distribuzione cumulativa empirica - 2
O in alternativa utilizzare la funzione ECDF del modulo statsmodels
gtgtgt from statsmodelsdistributionsempirical distribution
import ECDF
gtgtgt dist = ECDF(height)
gtgtgt pltplot(distx disty)
gtgtgt pltshow()
Che produce in output il grafico della pagina precedente (provare percredere)
Nicolo Campolongo (UniMi) Lezione 3 November 16 2018 11 17
Boxplot
Rappresenta la distribuzione di un vettore di numeri cerchiando gli outlier
gtgtgt weight = heroes[rsquoWeightrsquo]
gtgtgt weightplotbox()
gtgtgt pltshow()
Nicolo Campolongo (UniMi) Lezione 3 November 16 2018 12 17
QQplot
Grafico di dispersione dei quantili di due distribuzioni Piu le distribuzionisono simili piu si avvicina alla bisettrice del primo quadrante
gtgtgt import statsmodelsapi as sm
gtgtgt smqqplot 2samples(height weight line=rsquo45rsquo)
gtgtgt pltshow()
Nicolo Campolongo (UniMi) Lezione 3 November 16 2018 13 17
Diagramma di Pareto - 1
Inserisce nello stesso grafico un diagramma a barre delle frequenze relativeordinate in maniera decrescente ed un grafico a rdquolinea spezzatardquo dellefrequenze cumulateEsiste un package Python per tracciare Diagrammi di Pareto al seguentelink
gtgtgt from paretochart import pareto
gtgtgt eye color freq = heroes[rsquoEye colorrsquo]value counts()
len(heroes)
gtgtgt common colors = eye color freq[eye color freq gt
02]index
gtgtgt common colors data = heroes[rsquoEye colorrsquo][heroes[rsquoEye
colorrsquo]isin(common colors)]
Nicolo Campolongo (UniMi) Lezione 3 November 16 2018 14 17
Diagramma di Pareto - 2
gtgtgt common colors freq =
common colors datavalue counts()len(common colors data)
gtgtgt
pareto(common colors freqlabels=common colors freqindex)
gtgtgt pltshow()
Nicolo Campolongo (UniMi) Lezione 3 November 16 2018 15 17
Esercizi - 1
Utilizzando il file capellicsv (disponibile sulla pagina del corso)
1 Calcolare coefficiente di correlazione (di Pearson) tra lunghezzacapelli e le altre misure (usando la funzione Pandas corr)
2 Visualizzare i relativi grafici di dispersione Confermano il valorenumerico
3 Visualizzare il boxplot e lrsquoistogramma della colonnaspesaShampoMensile Cosa li accomuna
Nicolo Campolongo (UniMi) Lezione 3 November 16 2018 16 17
Esercizi - 2
Utilizzando il file dati-ospedalicsv
1 Visualizzate la distribuzione cumulativa empirica e un barplotdellrsquoattributo Medici SSN
2 Controllare se Medici SSN e Farmacisti SSN seguono la stessadistribuzione (usando qqplot)
3 Visualizzare il diagramma di Pareto della serie contenente i dati cherappresentano i Medici SSN per Regione
Completare lrsquoanalisi esplorativa in finanziamentipdf
Nicolo Campolongo (UniMi) Lezione 3 November 16 2018 17 17
- Matplotlib
- Grafici a Barre
- Istogrammi
- Cumulativa empirica
- Boxplot
- QQplot
- Diagramma di Pareto
- Esercizi
-
Grafici con le Series
In generale possiamo tracciare diversi tipi di grafici con le Series
lsquolinersquo line plot (default)
lsquobarrsquo vertical bar plot
lsquobarhrsquo horizontal bar plot
lsquohistrsquo histogram
lsquoboxrsquo boxplot
lsquokdersquo Kernel Density Estimation plot
lsquodensityrsquo same as lsquokdersquo
lsquoarearsquo area plot
lsquopiersquo pie plot
Per saperne di piu consultare questo link
Nicolo Campolongo (UniMi) Lezione 3 November 16 2018 9 17
Distribuzione cumulativa empirica - 1
Per visualizzare la distribuzione cumulativa empirica possiamo utilizzare ilseguente metodo
gtgtgt x = heightsort values()
gtgtgt y = nparange(len(x)) float(len(x))
gtgtgt pltplot(x y)
gtgtgt pltshow()
Nicolo Campolongo (UniMi) Lezione 3 November 16 2018 10 17
Distribuzione cumulativa empirica - 2
O in alternativa utilizzare la funzione ECDF del modulo statsmodels
gtgtgt from statsmodelsdistributionsempirical distribution
import ECDF
gtgtgt dist = ECDF(height)
gtgtgt pltplot(distx disty)
gtgtgt pltshow()
Che produce in output il grafico della pagina precedente (provare percredere)
Nicolo Campolongo (UniMi) Lezione 3 November 16 2018 11 17
Boxplot
Rappresenta la distribuzione di un vettore di numeri cerchiando gli outlier
gtgtgt weight = heroes[rsquoWeightrsquo]
gtgtgt weightplotbox()
gtgtgt pltshow()
Nicolo Campolongo (UniMi) Lezione 3 November 16 2018 12 17
QQplot
Grafico di dispersione dei quantili di due distribuzioni Piu le distribuzionisono simili piu si avvicina alla bisettrice del primo quadrante
gtgtgt import statsmodelsapi as sm
gtgtgt smqqplot 2samples(height weight line=rsquo45rsquo)
gtgtgt pltshow()
Nicolo Campolongo (UniMi) Lezione 3 November 16 2018 13 17
Diagramma di Pareto - 1
Inserisce nello stesso grafico un diagramma a barre delle frequenze relativeordinate in maniera decrescente ed un grafico a rdquolinea spezzatardquo dellefrequenze cumulateEsiste un package Python per tracciare Diagrammi di Pareto al seguentelink
gtgtgt from paretochart import pareto
gtgtgt eye color freq = heroes[rsquoEye colorrsquo]value counts()
len(heroes)
gtgtgt common colors = eye color freq[eye color freq gt
02]index
gtgtgt common colors data = heroes[rsquoEye colorrsquo][heroes[rsquoEye
colorrsquo]isin(common colors)]
Nicolo Campolongo (UniMi) Lezione 3 November 16 2018 14 17
Diagramma di Pareto - 2
gtgtgt common colors freq =
common colors datavalue counts()len(common colors data)
gtgtgt
pareto(common colors freqlabels=common colors freqindex)
gtgtgt pltshow()
Nicolo Campolongo (UniMi) Lezione 3 November 16 2018 15 17
Esercizi - 1
Utilizzando il file capellicsv (disponibile sulla pagina del corso)
1 Calcolare coefficiente di correlazione (di Pearson) tra lunghezzacapelli e le altre misure (usando la funzione Pandas corr)
2 Visualizzare i relativi grafici di dispersione Confermano il valorenumerico
3 Visualizzare il boxplot e lrsquoistogramma della colonnaspesaShampoMensile Cosa li accomuna
Nicolo Campolongo (UniMi) Lezione 3 November 16 2018 16 17
Esercizi - 2
Utilizzando il file dati-ospedalicsv
1 Visualizzate la distribuzione cumulativa empirica e un barplotdellrsquoattributo Medici SSN
2 Controllare se Medici SSN e Farmacisti SSN seguono la stessadistribuzione (usando qqplot)
3 Visualizzare il diagramma di Pareto della serie contenente i dati cherappresentano i Medici SSN per Regione
Completare lrsquoanalisi esplorativa in finanziamentipdf
Nicolo Campolongo (UniMi) Lezione 3 November 16 2018 17 17
- Matplotlib
- Grafici a Barre
- Istogrammi
- Cumulativa empirica
- Boxplot
- QQplot
- Diagramma di Pareto
- Esercizi
-
Distribuzione cumulativa empirica - 1
Per visualizzare la distribuzione cumulativa empirica possiamo utilizzare ilseguente metodo
gtgtgt x = heightsort values()
gtgtgt y = nparange(len(x)) float(len(x))
gtgtgt pltplot(x y)
gtgtgt pltshow()
Nicolo Campolongo (UniMi) Lezione 3 November 16 2018 10 17
Distribuzione cumulativa empirica - 2
O in alternativa utilizzare la funzione ECDF del modulo statsmodels
gtgtgt from statsmodelsdistributionsempirical distribution
import ECDF
gtgtgt dist = ECDF(height)
gtgtgt pltplot(distx disty)
gtgtgt pltshow()
Che produce in output il grafico della pagina precedente (provare percredere)
Nicolo Campolongo (UniMi) Lezione 3 November 16 2018 11 17
Boxplot
Rappresenta la distribuzione di un vettore di numeri cerchiando gli outlier
gtgtgt weight = heroes[rsquoWeightrsquo]
gtgtgt weightplotbox()
gtgtgt pltshow()
Nicolo Campolongo (UniMi) Lezione 3 November 16 2018 12 17
QQplot
Grafico di dispersione dei quantili di due distribuzioni Piu le distribuzionisono simili piu si avvicina alla bisettrice del primo quadrante
gtgtgt import statsmodelsapi as sm
gtgtgt smqqplot 2samples(height weight line=rsquo45rsquo)
gtgtgt pltshow()
Nicolo Campolongo (UniMi) Lezione 3 November 16 2018 13 17
Diagramma di Pareto - 1
Inserisce nello stesso grafico un diagramma a barre delle frequenze relativeordinate in maniera decrescente ed un grafico a rdquolinea spezzatardquo dellefrequenze cumulateEsiste un package Python per tracciare Diagrammi di Pareto al seguentelink
gtgtgt from paretochart import pareto
gtgtgt eye color freq = heroes[rsquoEye colorrsquo]value counts()
len(heroes)
gtgtgt common colors = eye color freq[eye color freq gt
02]index
gtgtgt common colors data = heroes[rsquoEye colorrsquo][heroes[rsquoEye
colorrsquo]isin(common colors)]
Nicolo Campolongo (UniMi) Lezione 3 November 16 2018 14 17
Diagramma di Pareto - 2
gtgtgt common colors freq =
common colors datavalue counts()len(common colors data)
gtgtgt
pareto(common colors freqlabels=common colors freqindex)
gtgtgt pltshow()
Nicolo Campolongo (UniMi) Lezione 3 November 16 2018 15 17
Esercizi - 1
Utilizzando il file capellicsv (disponibile sulla pagina del corso)
1 Calcolare coefficiente di correlazione (di Pearson) tra lunghezzacapelli e le altre misure (usando la funzione Pandas corr)
2 Visualizzare i relativi grafici di dispersione Confermano il valorenumerico
3 Visualizzare il boxplot e lrsquoistogramma della colonnaspesaShampoMensile Cosa li accomuna
Nicolo Campolongo (UniMi) Lezione 3 November 16 2018 16 17
Esercizi - 2
Utilizzando il file dati-ospedalicsv
1 Visualizzate la distribuzione cumulativa empirica e un barplotdellrsquoattributo Medici SSN
2 Controllare se Medici SSN e Farmacisti SSN seguono la stessadistribuzione (usando qqplot)
3 Visualizzare il diagramma di Pareto della serie contenente i dati cherappresentano i Medici SSN per Regione
Completare lrsquoanalisi esplorativa in finanziamentipdf
Nicolo Campolongo (UniMi) Lezione 3 November 16 2018 17 17
- Matplotlib
- Grafici a Barre
- Istogrammi
- Cumulativa empirica
- Boxplot
- QQplot
- Diagramma di Pareto
- Esercizi
-
Distribuzione cumulativa empirica - 2
O in alternativa utilizzare la funzione ECDF del modulo statsmodels
gtgtgt from statsmodelsdistributionsempirical distribution
import ECDF
gtgtgt dist = ECDF(height)
gtgtgt pltplot(distx disty)
gtgtgt pltshow()
Che produce in output il grafico della pagina precedente (provare percredere)
Nicolo Campolongo (UniMi) Lezione 3 November 16 2018 11 17
Boxplot
Rappresenta la distribuzione di un vettore di numeri cerchiando gli outlier
gtgtgt weight = heroes[rsquoWeightrsquo]
gtgtgt weightplotbox()
gtgtgt pltshow()
Nicolo Campolongo (UniMi) Lezione 3 November 16 2018 12 17
QQplot
Grafico di dispersione dei quantili di due distribuzioni Piu le distribuzionisono simili piu si avvicina alla bisettrice del primo quadrante
gtgtgt import statsmodelsapi as sm
gtgtgt smqqplot 2samples(height weight line=rsquo45rsquo)
gtgtgt pltshow()
Nicolo Campolongo (UniMi) Lezione 3 November 16 2018 13 17
Diagramma di Pareto - 1
Inserisce nello stesso grafico un diagramma a barre delle frequenze relativeordinate in maniera decrescente ed un grafico a rdquolinea spezzatardquo dellefrequenze cumulateEsiste un package Python per tracciare Diagrammi di Pareto al seguentelink
gtgtgt from paretochart import pareto
gtgtgt eye color freq = heroes[rsquoEye colorrsquo]value counts()
len(heroes)
gtgtgt common colors = eye color freq[eye color freq gt
02]index
gtgtgt common colors data = heroes[rsquoEye colorrsquo][heroes[rsquoEye
colorrsquo]isin(common colors)]
Nicolo Campolongo (UniMi) Lezione 3 November 16 2018 14 17
Diagramma di Pareto - 2
gtgtgt common colors freq =
common colors datavalue counts()len(common colors data)
gtgtgt
pareto(common colors freqlabels=common colors freqindex)
gtgtgt pltshow()
Nicolo Campolongo (UniMi) Lezione 3 November 16 2018 15 17
Esercizi - 1
Utilizzando il file capellicsv (disponibile sulla pagina del corso)
1 Calcolare coefficiente di correlazione (di Pearson) tra lunghezzacapelli e le altre misure (usando la funzione Pandas corr)
2 Visualizzare i relativi grafici di dispersione Confermano il valorenumerico
3 Visualizzare il boxplot e lrsquoistogramma della colonnaspesaShampoMensile Cosa li accomuna
Nicolo Campolongo (UniMi) Lezione 3 November 16 2018 16 17
Esercizi - 2
Utilizzando il file dati-ospedalicsv
1 Visualizzate la distribuzione cumulativa empirica e un barplotdellrsquoattributo Medici SSN
2 Controllare se Medici SSN e Farmacisti SSN seguono la stessadistribuzione (usando qqplot)
3 Visualizzare il diagramma di Pareto della serie contenente i dati cherappresentano i Medici SSN per Regione
Completare lrsquoanalisi esplorativa in finanziamentipdf
Nicolo Campolongo (UniMi) Lezione 3 November 16 2018 17 17
- Matplotlib
- Grafici a Barre
- Istogrammi
- Cumulativa empirica
- Boxplot
- QQplot
- Diagramma di Pareto
- Esercizi
-
Boxplot
Rappresenta la distribuzione di un vettore di numeri cerchiando gli outlier
gtgtgt weight = heroes[rsquoWeightrsquo]
gtgtgt weightplotbox()
gtgtgt pltshow()
Nicolo Campolongo (UniMi) Lezione 3 November 16 2018 12 17
QQplot
Grafico di dispersione dei quantili di due distribuzioni Piu le distribuzionisono simili piu si avvicina alla bisettrice del primo quadrante
gtgtgt import statsmodelsapi as sm
gtgtgt smqqplot 2samples(height weight line=rsquo45rsquo)
gtgtgt pltshow()
Nicolo Campolongo (UniMi) Lezione 3 November 16 2018 13 17
Diagramma di Pareto - 1
Inserisce nello stesso grafico un diagramma a barre delle frequenze relativeordinate in maniera decrescente ed un grafico a rdquolinea spezzatardquo dellefrequenze cumulateEsiste un package Python per tracciare Diagrammi di Pareto al seguentelink
gtgtgt from paretochart import pareto
gtgtgt eye color freq = heroes[rsquoEye colorrsquo]value counts()
len(heroes)
gtgtgt common colors = eye color freq[eye color freq gt
02]index
gtgtgt common colors data = heroes[rsquoEye colorrsquo][heroes[rsquoEye
colorrsquo]isin(common colors)]
Nicolo Campolongo (UniMi) Lezione 3 November 16 2018 14 17
Diagramma di Pareto - 2
gtgtgt common colors freq =
common colors datavalue counts()len(common colors data)
gtgtgt
pareto(common colors freqlabels=common colors freqindex)
gtgtgt pltshow()
Nicolo Campolongo (UniMi) Lezione 3 November 16 2018 15 17
Esercizi - 1
Utilizzando il file capellicsv (disponibile sulla pagina del corso)
1 Calcolare coefficiente di correlazione (di Pearson) tra lunghezzacapelli e le altre misure (usando la funzione Pandas corr)
2 Visualizzare i relativi grafici di dispersione Confermano il valorenumerico
3 Visualizzare il boxplot e lrsquoistogramma della colonnaspesaShampoMensile Cosa li accomuna
Nicolo Campolongo (UniMi) Lezione 3 November 16 2018 16 17
Esercizi - 2
Utilizzando il file dati-ospedalicsv
1 Visualizzate la distribuzione cumulativa empirica e un barplotdellrsquoattributo Medici SSN
2 Controllare se Medici SSN e Farmacisti SSN seguono la stessadistribuzione (usando qqplot)
3 Visualizzare il diagramma di Pareto della serie contenente i dati cherappresentano i Medici SSN per Regione
Completare lrsquoanalisi esplorativa in finanziamentipdf
Nicolo Campolongo (UniMi) Lezione 3 November 16 2018 17 17
- Matplotlib
- Grafici a Barre
- Istogrammi
- Cumulativa empirica
- Boxplot
- QQplot
- Diagramma di Pareto
- Esercizi
-
QQplot
Grafico di dispersione dei quantili di due distribuzioni Piu le distribuzionisono simili piu si avvicina alla bisettrice del primo quadrante
gtgtgt import statsmodelsapi as sm
gtgtgt smqqplot 2samples(height weight line=rsquo45rsquo)
gtgtgt pltshow()
Nicolo Campolongo (UniMi) Lezione 3 November 16 2018 13 17
Diagramma di Pareto - 1
Inserisce nello stesso grafico un diagramma a barre delle frequenze relativeordinate in maniera decrescente ed un grafico a rdquolinea spezzatardquo dellefrequenze cumulateEsiste un package Python per tracciare Diagrammi di Pareto al seguentelink
gtgtgt from paretochart import pareto
gtgtgt eye color freq = heroes[rsquoEye colorrsquo]value counts()
len(heroes)
gtgtgt common colors = eye color freq[eye color freq gt
02]index
gtgtgt common colors data = heroes[rsquoEye colorrsquo][heroes[rsquoEye
colorrsquo]isin(common colors)]
Nicolo Campolongo (UniMi) Lezione 3 November 16 2018 14 17
Diagramma di Pareto - 2
gtgtgt common colors freq =
common colors datavalue counts()len(common colors data)
gtgtgt
pareto(common colors freqlabels=common colors freqindex)
gtgtgt pltshow()
Nicolo Campolongo (UniMi) Lezione 3 November 16 2018 15 17
Esercizi - 1
Utilizzando il file capellicsv (disponibile sulla pagina del corso)
1 Calcolare coefficiente di correlazione (di Pearson) tra lunghezzacapelli e le altre misure (usando la funzione Pandas corr)
2 Visualizzare i relativi grafici di dispersione Confermano il valorenumerico
3 Visualizzare il boxplot e lrsquoistogramma della colonnaspesaShampoMensile Cosa li accomuna
Nicolo Campolongo (UniMi) Lezione 3 November 16 2018 16 17
Esercizi - 2
Utilizzando il file dati-ospedalicsv
1 Visualizzate la distribuzione cumulativa empirica e un barplotdellrsquoattributo Medici SSN
2 Controllare se Medici SSN e Farmacisti SSN seguono la stessadistribuzione (usando qqplot)
3 Visualizzare il diagramma di Pareto della serie contenente i dati cherappresentano i Medici SSN per Regione
Completare lrsquoanalisi esplorativa in finanziamentipdf
Nicolo Campolongo (UniMi) Lezione 3 November 16 2018 17 17
- Matplotlib
- Grafici a Barre
- Istogrammi
- Cumulativa empirica
- Boxplot
- QQplot
- Diagramma di Pareto
- Esercizi
-
Diagramma di Pareto - 1
Inserisce nello stesso grafico un diagramma a barre delle frequenze relativeordinate in maniera decrescente ed un grafico a rdquolinea spezzatardquo dellefrequenze cumulateEsiste un package Python per tracciare Diagrammi di Pareto al seguentelink
gtgtgt from paretochart import pareto
gtgtgt eye color freq = heroes[rsquoEye colorrsquo]value counts()
len(heroes)
gtgtgt common colors = eye color freq[eye color freq gt
02]index
gtgtgt common colors data = heroes[rsquoEye colorrsquo][heroes[rsquoEye
colorrsquo]isin(common colors)]
Nicolo Campolongo (UniMi) Lezione 3 November 16 2018 14 17
Diagramma di Pareto - 2
gtgtgt common colors freq =
common colors datavalue counts()len(common colors data)
gtgtgt
pareto(common colors freqlabels=common colors freqindex)
gtgtgt pltshow()
Nicolo Campolongo (UniMi) Lezione 3 November 16 2018 15 17
Esercizi - 1
Utilizzando il file capellicsv (disponibile sulla pagina del corso)
1 Calcolare coefficiente di correlazione (di Pearson) tra lunghezzacapelli e le altre misure (usando la funzione Pandas corr)
2 Visualizzare i relativi grafici di dispersione Confermano il valorenumerico
3 Visualizzare il boxplot e lrsquoistogramma della colonnaspesaShampoMensile Cosa li accomuna
Nicolo Campolongo (UniMi) Lezione 3 November 16 2018 16 17
Esercizi - 2
Utilizzando il file dati-ospedalicsv
1 Visualizzate la distribuzione cumulativa empirica e un barplotdellrsquoattributo Medici SSN
2 Controllare se Medici SSN e Farmacisti SSN seguono la stessadistribuzione (usando qqplot)
3 Visualizzare il diagramma di Pareto della serie contenente i dati cherappresentano i Medici SSN per Regione
Completare lrsquoanalisi esplorativa in finanziamentipdf
Nicolo Campolongo (UniMi) Lezione 3 November 16 2018 17 17
- Matplotlib
- Grafici a Barre
- Istogrammi
- Cumulativa empirica
- Boxplot
- QQplot
- Diagramma di Pareto
- Esercizi
-
Diagramma di Pareto - 2
gtgtgt common colors freq =
common colors datavalue counts()len(common colors data)
gtgtgt
pareto(common colors freqlabels=common colors freqindex)
gtgtgt pltshow()
Nicolo Campolongo (UniMi) Lezione 3 November 16 2018 15 17
Esercizi - 1
Utilizzando il file capellicsv (disponibile sulla pagina del corso)
1 Calcolare coefficiente di correlazione (di Pearson) tra lunghezzacapelli e le altre misure (usando la funzione Pandas corr)
2 Visualizzare i relativi grafici di dispersione Confermano il valorenumerico
3 Visualizzare il boxplot e lrsquoistogramma della colonnaspesaShampoMensile Cosa li accomuna
Nicolo Campolongo (UniMi) Lezione 3 November 16 2018 16 17
Esercizi - 2
Utilizzando il file dati-ospedalicsv
1 Visualizzate la distribuzione cumulativa empirica e un barplotdellrsquoattributo Medici SSN
2 Controllare se Medici SSN e Farmacisti SSN seguono la stessadistribuzione (usando qqplot)
3 Visualizzare il diagramma di Pareto della serie contenente i dati cherappresentano i Medici SSN per Regione
Completare lrsquoanalisi esplorativa in finanziamentipdf
Nicolo Campolongo (UniMi) Lezione 3 November 16 2018 17 17
- Matplotlib
- Grafici a Barre
- Istogrammi
- Cumulativa empirica
- Boxplot
- QQplot
- Diagramma di Pareto
- Esercizi
-
Esercizi - 1
Utilizzando il file capellicsv (disponibile sulla pagina del corso)
1 Calcolare coefficiente di correlazione (di Pearson) tra lunghezzacapelli e le altre misure (usando la funzione Pandas corr)
2 Visualizzare i relativi grafici di dispersione Confermano il valorenumerico
3 Visualizzare il boxplot e lrsquoistogramma della colonnaspesaShampoMensile Cosa li accomuna
Nicolo Campolongo (UniMi) Lezione 3 November 16 2018 16 17
Esercizi - 2
Utilizzando il file dati-ospedalicsv
1 Visualizzate la distribuzione cumulativa empirica e un barplotdellrsquoattributo Medici SSN
2 Controllare se Medici SSN e Farmacisti SSN seguono la stessadistribuzione (usando qqplot)
3 Visualizzare il diagramma di Pareto della serie contenente i dati cherappresentano i Medici SSN per Regione
Completare lrsquoanalisi esplorativa in finanziamentipdf
Nicolo Campolongo (UniMi) Lezione 3 November 16 2018 17 17
- Matplotlib
- Grafici a Barre
- Istogrammi
- Cumulativa empirica
- Boxplot
- QQplot
- Diagramma di Pareto
- Esercizi
-
Esercizi - 2
Utilizzando il file dati-ospedalicsv
1 Visualizzate la distribuzione cumulativa empirica e un barplotdellrsquoattributo Medici SSN
2 Controllare se Medici SSN e Farmacisti SSN seguono la stessadistribuzione (usando qqplot)
3 Visualizzare il diagramma di Pareto della serie contenente i dati cherappresentano i Medici SSN per Regione
Completare lrsquoanalisi esplorativa in finanziamentipdf
Nicolo Campolongo (UniMi) Lezione 3 November 16 2018 17 17
- Matplotlib
- Grafici a Barre
- Istogrammi
- Cumulativa empirica
- Boxplot
- QQplot
- Diagramma di Pareto
- Esercizi
-