Laboratorio di Statistica e Analisi dei Daticesari.di.unimi.it/teaching/SADcampolongo.pdf ·...

88
Laboratorio di Statistica e Analisi dei Dati Nicol` o Campolongo Universit` a degli Studi di Milano [email protected] January 12, 2019 Nicol`oCampolongo (UniMi) SAD 2018/2019 January 12, 2019 1 / 88

Transcript of Laboratorio di Statistica e Analisi dei Daticesari.di.unimi.it/teaching/SADcampolongo.pdf ·...

Laboratorio di Statistica e Analisi dei Dati

Nicolo Campolongo

Universita degli Studi di Milano

nicolocampolongounimiit

January 12 2019

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 1 88

Programma

Pagina del corso httpcesaridiunimiitteachinghtml

1 Introduzione script in Python Arrays Series

2 DataFrame

3 Grafici

4 Variabili aleatorie

5 Esercizi di riepilogo

6 Calcolo di probabilita - 1

7 Calcolo di probabilita - 2

8 Risoluzione di un tema drsquoesame

9 Simulazione di un tema drsquoesame

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 2 88

Introduzione Python

rdquoPython e un linguaggio di programmazione dinamico orientato aglioggetti utilizzabile per molti tipi di sviluppo softwarerdquo(httpswwwpythonit)

Figurehttpsstackoverflowblog20170906incredible-growth-python

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 3 88

Introduzione installare Python

Mac OS X 102 e successivi includono una versione pre-installata

Nei sistemi Linux spesso e gia presente nel setup di base

Per verificare se Python e gia installato e sufficiente aprire una finestra delterminale e digitare il comando python

Installazione

httpswwwanacondacomdownload (raccomandata)

httpswwwpythonit

Nota la versione che verra utilizzata nel corso e la 3x

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 4 88

Interprete interattivo - 1

Il comando python apre lrsquointerprete interattivo Lrsquointerprete valuta leistruzioni Python inserite a riga di comando e fornisce una risposta

dottorandodottorando-Lenovo-Y50-70 $ python

Python 365 |Anaconda Inc| (default Apr 29 2018

161456)

GCC 720on linux

Type help copyright credits or license for more

information

gtgtgt

gtgtgt print(Hello world)

Hello world

gtgtgt

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 5 88

Interprete interattivo - 2

La funzione exit() e digitata per uscire dallrsquoambiente interprete (o inalternativa ctrl + d cmd + d)

gtgtgt print(Hello world)

Hello world

gtgtgt

dottorandodottorando-Lenovo-Y50-70 $

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 6 88

Script

Usare lrsquointerprete interattivo non e la maniera piu comoda perprogrammareE possibile lanciare un programma python (filepy) eseguendo ilcomando python ltnomefilepygt dalla cartella in cui si trova il filepy

dottorandodottorando-Lenovo-Y50-70 Scrivania$ python

testpy

My first script in Python

dottorandodottorando-Lenovo-Y50-70 Scrivania$

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 7 88

Variabili in Python - 1

Python e dinamicamente tipato e fortemente tipatoUna variabile inizia ad esistere nel momento in cui le viene assegnato unvalore che ne determina il tipo

gtgtgt a=10000

gtgtgt type(a)

lttype lsquointrsquogt

gtgtgt len(a)

Traceback (most recent call last)

File ltstdingt line 1 in ltmodulegt

TypeError object of type rsquointrsquo has no len()

gtgtgt

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 8 88

Variabili in Python - 2

Riferirsi ad una variabile inesistente (a cui non e ancora stato assegnato unvalore) genera un errore

gtgtgt b

Traceback (most recent call last)

File ltstdingt line 1 in ltmodulegt

NameError name rsquobrsquo is not defined

gtgtgt

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 9 88

Funzione Help

Per aprire la documentazione a riguardo di un particolare oggetto metodoo attributo si puo invocare la funzione help(rdquonomerdquo) con il nomedellrsquooggetto che stiamo cercando

gtgtgt help(str)

Help on class str in module builtin

class str(basestring)

| str(object=rsquorsquo) -gt string

|

| Return a nice string representation of the object

| If the argument is a string the return value is the

same object

|

Si esce dal manuale interattivo premendo q

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 10 88

Tipi Predefiniti in Python

Stringhe (str) rdquoquesta e una stringardquo rdquoquesta purerdquo

Dizionari (dict) lsquochiaversquo valoreTuple (tuple) (1 2 3 1 rsquociaorsquo)

Liste (list) [1 2 3 4 rsquopipporsquo]

Set (set) (1 2 3)

Interi (int) 1 2 3

Float (float) 15 314 2718281828459045

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 11 88

Numpy

Il modulo numpy (httpwwwnumpyorg) mette a disposizione unastruttura dati creata appositamente per il calcolo scientifico

ArrayUn array e un contenitore di dati omogenei cioe dello stesso tipo Se sitenta di costruire un array con dati di tipo diverso questi vengonoldquotrasformatirdquo nel piu piccolo tipo adatto a contenerli tutti

gtgtgt import numpy as np

gtgtgt nparray( [146810] )

array([ 1 4 68 10 ])

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 12 88

Creazione di Array - 1

numpyarange(x) restituisce un array contenente gli interi da 0 a x minus 1

gtgtgt numpyarange(5)

array([0 1 2 3 4])

numpyarange(start stop step) permette di scegliere gli estremi dellasequenza contenuta nellrsquoarray e il passo tra un numero ed il successivo

gtgtgt numpyarange(262)

array([2 4])

gtgtgt numpyarange(2-3-1)

array([ 2 1 0 -1 -2])

numpylinspace(start stop n) permette di scegliere gli estremi e quantinumeri devono comparire allrsquointerno della sequenza

gtgtgt numpylinspace(014)

array)[0 03333333 066666667 1])

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 13 88

Creazione di Array - 2

numpyones(rdquotuplardquo) restuituisce un array di 1 date le dimensionispecificate nella tupla come argomento

gtgtgt numpyones( (15) )

array([1 1 1 1 1])

numpyzeros(rdquotuplardquo) restuituisce un array di 0 date le dimensionispecificate nella tupla come argomento

gtgtgt numpyzeros( (25) )

array([[0 0 0 0 0] [0 0 0

0 0]])

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 14 88

Operazioni con Array

Applicando un operazione logica ad un array si ottiene come risposta unarray di tipo booleano contenente nella posizione i-esima il risultatodellrsquoespressione logica valutata per lrsquoelemento i-esimo dellrsquoarray

gtgtgt numpyarange(5) gt 3

array([False False False False True] dtype=bool)

Le operazioni + - tra due array vengono eseguite elemento perelemento (gli array devono avere le stesse dimensioni)

gtgtgt numpyarange(5) + numpylinspace(025)

array([ 0 15 3 45 6 ])

gtgtgt numpyarange(5) 2

array([0 2 4 6 8])

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 15 88

Selezioni di un sottoinsieme di elementi

Ad un array e possibile accedere in tutti i modi con cui e possibile accederead una lista ad esempio

Ottenere una tupla di elementi

gtgtgt a[2] a[-1] a[36]

(2 9 array([3 4 5]))

Slicing [startstopstep]

gtgtgt a[293]

array([2 5 8])

gtgtgt a[2]

array([0 2 4 6 8])

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 16 88

Accesso con maschere booleane

Specificando tra [ ] un array di tipo booleano selezioniamo dallrsquoarray glielementi la cui posizione corrisponde ad un True nellrsquoarray di tipobooleano (che prende il nome di maschera)

gtgtgt a = numpyarange(10)

gtgtgt mask = a2 == 0

gtgtgt mask

array([ True False True False True False True

False True False] dtype=bool)

gtgtgt a[mask]

array([0 2 4 6 8])

o in maniera piu compatta

gtgtgt a[a2 == 0]

array([0 2 4 6 8])

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 17 88

Esercizi

1 Lanciare uno script che stampi il vostro nome e cognome

2 Creare un array i cui elementi siano gli interi che compongono ilvostro numero di matricola

3 Sia X la lunghezza dellrsquoarray del punto precedente Creare un array diX elementi equispaziati lrsquouno dallrsquoaltro di 15

4 Creare un array di X elementi equispaziati nellrsquointervallo tra 1 e 3

5 Ottenere gli array dati dalla somma tra lrsquoarray del punto 2 e quello delpunto 3 e quello dato dalla moltiplicazione tra punto 3 e punto 4

6 Ottenere per ciascuno dei due array del punto 5 un array mascherache in corrispondenza dei numeri divisibili per 3 abbia True Falsealtrimenti

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 18 88

Pandas - Series (1)

Pandas (httpspandaspydataorg) e una libreria Python chefornisce strutture dati e strumenti relativi esclusivamente allrsquoanalisi deidatiUna Series e un array monodimensionale ed etichettato Rappresenta unaserie di osservazioni di un certo carattere fatto su un insieme di individui

a 00

b 10

c 20

d 30

e 40

f 50

g 60

h 70

Name serie di esempio dtype float64

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 19 88

Pandas - Series (2)

pandasSeries (data index dtype name )

data contiene i dati che si vuole inserire nella serie

index della stessa lunghezza di data contiene le etichette

dtype permette di specificare il tipo che i dati devono assumere

name permette di dare un nome alla Series

gtgtgt import pandas as pd

gtgtgt import numpy as np

gtgtgt oss = nparange(8)

gtgtgt etic = [rsquoarsquorsquobrsquorsquocrsquorsquodrsquorsquoersquorsquofrsquorsquogrsquorsquohrsquo]

gtgtgt pdSeries(data=oss index=etic name=rsquoserie di esempiorsquo

dtype=float)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 20 88

Accesso ai dati di una Series

Specificando un valore (o una lista di valori) per lrsquoetichetta

gtgtgt sloc[[rsquohrsquorsquoarsquo]]

h 70

a 00

Specificando un valore (o una lista di valori) per la posizione

gtgtgt s[[56]]

f 50

g 60

Usando lo slicing (come per gli array numpy) per la posizione

gtgtgt s[36]

d 30

e 40

f 50

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 21 88

Pandas Series - Utils

Seriesmin() Seriesmax() restituiscono rispettivamente il minimoed massimo tra i valori della Series

Seriessum() restituisce la somma dei valori della Series

Seriessort values() restituisce una copia della Series ordinata pervalore

Seriessort index() restituisce una copia della Series ordinata peretichette

Seriessample(n) restituisce una Series di n elementi sceltiuniformemente a caso allrsquointerno di quelli della Series

Seriesappend([s1s2]) concatena una o piu Series a quella dipartenza

Seriescount() restituisce il numero dei valori della Series che nonsiano il valore NaN

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 22 88

Il valore NaN

Nan un oggetto del modulo numpy che puo rappresentare in una Seriesun dato di cui non e stato possibile fare unrsquoosservazioneOperazioni con un valore Nan hanno come risultato il valore Nan

gtgtgt oss = range(5)

gtgtgt ossappend(None)

gtgtgt pandasSeries(oss)

0 00

1 10

2 20

3 30

4 40

5 NaN

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 23 88

Esercizi

Creare la Series gol in modo che le etichette siano numeri dallrsquo1 al 23 Idati raccolti siano numeri interi tra 0 e 30 scelti casualmente (scarica ilnotebook) La Series rappresenta i gol segnati da ciascun giocatore diuna societa calcistica nella stagione appena passata Lrsquoetichettacorrisponde al numero di maglia del giocatore Ottenere

1 I gol segnati dal capocannoniere2 Chi non ha mai fatto gol durante lrsquoanno3 La statistica del punto 2 per i soli titolari (numeri dallrsquo1 allrsquo11) e per

le sole riserve (dal 12 al 23)4 La statistica del punto 2 per i soli attaccanti (numeri dalrsquo9 allrsquo11)5 I gol segnati dai giocatori coi numeri di maglia 5 9 10 14 (somma)6 Chi ha segnato piu di 10 gol e chi ha segnato esattamente 10 gol7 Una copia della Series ordinata secondo i gol effettuati8 Una stampa dei primi 5 cannonieri e degli ultimi 59 Una copia della Series ordinata in modo discendente secondo il

numero di maglia

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 24 88

File csv

Il formato csv (comma-separated value) e un formato utilizzato perrappresentare una tabella di dati e favorirne lrsquoimportazione e lrsquoesportazioneUn file csv e scritto nella seguente forma

titolopaeseannoduratagenerevoto

Guerre StellariUSA1977121Fantascienza4

Lrsquoimpero colpisce ancoraUSA1980124Fantascienza4

Il ritorno dello JediUSA1983Fantascienza35

Profondo RossoITA1975Horror35

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 25 88

Leggere csv

La funzione read csv() di Pandas puo essere utilizzata per leggere unfile di formato csv Tra i vari parametri che passiamo in input unoparticolarmente importante e sep che indica il carattere utilizzato perseparare le colonne (default e rsquorsquo)

gtgtgt df film = pdread csv(rsquofilmcsvrsquo)

gtgtgt df film

titolo paese anno durata genere voto

Il padrino USA 19720 1750 Drammatico 45

Pulp Fiction USA 19940 1540 Drammatico 40

Fight Club USA 19990 1390 Thriller 40

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 26 88

DataFrame

In Pandas un DataFrame e una struttura dati tabulare con assi etichettatile cui colonne possono contenere dati eterogenei da colonna a colonna

gtgtgt dataframe

esempio

Nome Cognome Eta Citta

Tommaso Rossi 300 Milano

Sergio Bianchi 340 Roma

Pasquale Verdi 290 Palermo

Antonio Gialli 300 Roma

Il DataFrame puo essere visto come un insieme di serie aventi lo stessoindice accostate una allrsquoaltra

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 27 88

Accesso colonne DataFrame - 1

Per conoscere le colonne di un DataFrame possiamo invocare il comandodfcolumns dove df e la variabile in cui abbiamo instanziato ilDataFramePer accedere ad una colonna dobbiamo specificarne il nome nel seguentemodo

gtgtgt df film[rsquogenerersquo]

titolo

Il padrino Drammatico

Pulp Fiction Drammatico

Fight Club Thriller

Selezionando unrsquounica colonna in output viene restituita una Series

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 28 88

Accesso colonne DataFrame - 2

Possiamo accedere allo stesso tempo a piu colonne

gtgtgt df film[[rsquopaesersquorsquoannorsquo]]

titolo paese anno

Il padrino USA 19720

Pulp Fiction USA 19940

Fight Club USA 19990

Selezionando piu colonne in output viene restituito un DataFrame

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 29 88

Accesso righe DataFrame - 1

Per indice numerico

gtgtgt df film[1518]

titolo paese anno durata genere voto

Il padrino USA 19720 1750 Drammatico 45

Pulp Fiction USA 19940 1540 Drammatico 40

Fight Club USA 19990 1390 Thriller 40

Quasi Amici FRA 20110 1120 Commedia 35

Per valore dellrsquoindice (assumiamo che titolo sia lrsquoindice delDataFrame)

gtgtgt df film[rsquoIl padrinorsquorsquoFight Clubrsquo]

titolo paese anno durata genere voto

Il padrino USA 19720 1750 Drammatico 45

Pulp Fiction USA 19940 1540 Drammatico 40

Fight Club USA 19990 1390 Thriller 40

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 30 88

loc amp iloc

Cosı come per le Series anche con i DataFrame possiamo usare loc ediloc per lrsquoaccesso ai dati

loc[rsquonome indicersquo] permette lrsquoaccesso ad una riga o piu righetramite nome dellrsquoindice

iloc[rsquoposizionersquo] permette lrsquoaccesso ad una o piu righe tramitela loro posizione

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 31 88

Accesso tramite unrsquoespressione logica

gtgtgt df film[rsquoannorsquo gt 1998]

titolo

Il padrino False

Pulp Fiction False

Fight Club True

Quasi Amici True

gtgtgt df film[df film[rsquoannorsquo] gt 1998]

titolo paese anno durata genere voto

Fight Club USA 19990 1390 Thriller 40

Quasi Amici FRA 20110 1120 Commedia 35

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 32 88

Metodi dei DataFrame

La classe DataFrame ha diversi metodi Elenchiamo qui i piu importanti

DataFrameappend() permette di estendere il DataFrame

DataFramedrop duplicates() restituisce un DataFrame senza righeduplicate

DataFramedropna() Eliminare i valori Nan da un DataFrame

DataFramesort values() permette di ordinare il DataFrame

DataFramemax() DataFramemin() DataFramemean()DataFramemedian()

Per la completa documentazione si puo utilizzare il comandohelp(pdDataFrame) oppure andare al seguente linkhttpspandaspydataorgpandas-docsstablegenerated

pandasDataFramehtml

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 33 88

Frequenze

La frequenza assoluta indica il numero di volte che una dataosservazione occorre in un campione

La frequenza relativa e un valore tra 0 e 1 che permette di valutare inmaniera piu efficace la frequenza di un osservazione Si calcoladividendo la frequenza assoluta per il numero totale di casi

Per calcolare questa quantita in Pandas possiamo utilizzare la funzionevalue counts() che opera su una Series

In alternativa si puo utilizzare la funzione pdcrosstab che calcolaqueste frequenze in automatico restituendole in output in un DataFrame

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 34 88

Esercizi

Utilizzando il file dati-ospedalicsv dai csv del laboratorio

1 Leggere il file e visualizzarlo in un DataFrame

2 Calcolare le frequenze assolute e relative dellrsquoattributo Regioneusando crosstab

3 Ottenere la singola serie relativa allrsquoattributo Regione e calcolarne lafrequenza assoluta e relativa senza usare crosstab

4 Estrarre un sottodataframe contenente le colonne Nome (attributoDenominazione Str Pubblica New) e Numero di medici (attributoMedici SSN) degli ospedali aventi meno di 200 medici

5 Visualizzare il nome degli ospedali della regione Lombardia

6 Calcolare il numero medio di ingegneri (Ingegneri SSN) presenti negliospedali campani

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 35 88

Esercizi

7 Calcolare la varianza del numero di assistenti sociali (Assistenti socialiSSN) negli ospedali con piu di 400 medici

8 Qual e lrsquoospedale con meno medici

9 Visualizzare in ordine alfabetico il nome dei primi 10 ospedali pernumero di medici

10 Visualizzare il numero degli ospedali che hanno dichiarato il numerodi odontoiatri (per cui il valore e diverso da NaN) (OdontoiatriUniversitari)

11 Visualizzare il numero degli ospedali che hanno dichiarato il numerodi odontoiatri (Odontoiatri Universitari) e per cui questo numero emaggiore di 0

12 Calcolare le frequenze assolute per lrsquoattributo Odontoiatri SSNTrasformare questo risultato in frequenze relative

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 36 88

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) SAD 20182019 January 12 2019 37 88

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) SAD 20182019 January 12 2019 38 88

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) SAD 20182019 January 12 2019 39 88

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) SAD 20182019 January 12 2019 40 88

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) SAD 20182019 January 12 2019 41 88

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) SAD 20182019 January 12 2019 42 88

Grafici con le Series

In generale possiamo tracciare diversi tipi di grafici con le Series

rsquolinersquo line plot (default)

rsquobarrsquo vertical bar plot

rsquobarhrsquo horizontal bar plot

rsquohistrsquo histogram

rsquoboxrsquo boxplot

rsquokdersquo Kernel Density Estimation plot

rsquodensityrsquo same as rsquokdersquo

rsquoarearsquo area plot

rsquopiersquo pie plot

Per saperne di piu consultare questo link

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 43 88

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) SAD 20182019 January 12 2019 44 88

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) SAD 20182019 January 12 2019 45 88

Boxplot

Rappresenta la distribuzione di un vettore di numeri cerchiando gli outlier

gtgtgt weight = heroes[rsquoWeightrsquo]

gtgtgt weightplotbox()

gtgtgt pltshow()

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 46 88

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) SAD 20182019 January 12 2019 47 88

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) SAD 20182019 January 12 2019 48 88

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) SAD 20182019 January 12 2019 49 88

Esercizi - 1

Utilizzando il file capellicsv dai csv del laboratorio

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) SAD 20182019 January 12 2019 50 88

Esercizi - 2

Utilizzando il file dati-ospedalicsv dai csv del laboratorio

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 e canipdf

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 51 88

Sample space

Un esperimento e qualsiasi processo che produce una realizzazione (oosservazione) Lrsquoinsieme di tutte le possibili realizzazioni di un esperimentoviene detto sample space ed indicato con S

lancio di 2 monete

S = (T T ) (T C) (C T ) (C C)

gara di 3 cavalli (ab c)

S = tutti i possibili ordinamenti di(ab c)= (ab c) (a cb) (c b a)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 52 88

Eventi

lancio di 2 monete

S = (T T ) (T C) (C T ) (C C)

A = 2 monete uguali

A = (T T ) (C C)

B = 2 monete diverse

B = Ac = (T C) (C T )

gara di 3 cavalli

A = cavallo a vincente

A = (ab c) (a c b)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 53 88

Probabilita - 1

Consideriamo un esperimento con sample space S Supponiamo che adogni evento A sia associato un numero chiamato probabilita di A edindicato con P(A) che soddisfa le seguenti proprieta

1 Per ogni evento A la probabilita di A e un numero tra 0 e 1

0 le P(A) le 1

2 La probabilita del sample space S e 1

P(S) = 1

3 La probabilita dellrsquounione di eventi disgiunti e uguale alla somma delleprobabilita di tali eventi

P(A cupB) = P(A) + P(B)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 54 88

Probabilita - 2

In generale 2 eventi potrebbero non essere disgiunti

P(A cupB) = P(A) + P(B) minus P(A capB)

Esempio un certo negozio accetta pagamenti o con carte di credito VISAo Mastercard

1 22 dei clienti ha Mastercard

2 58 dei clienti ha VISA

3 14 dei clienti ha entrambe

Qual e la probabilita che un cliente ha almeno una delle 2 carte

P(A) = 022 P(B) = 058

P(A cupB) = P(A) + P(B) minus P(A capB) = 022 + 058 minus 014 = 066

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 55 88

Probabilita condizionata - 1

Se alcune informazioni riguardo lrsquoesito di un esperimento sono disponibiliparliamo di probabilita condizionata

Esempio lancio di 2 dadi

S = (11) (12) (65) (66)

Probabilita che la somma sia 10 (evento B) sapendo che il primo dadomostra 4 (evento A)

(41) (42) (43) (44) (45) (46)

P(B ∣A) = 16

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 56 88

Probabilita condizionata - 2

In generale

P(B ∣A) = P(A capB)P(A)

Supponiamo lrsquoesito sia in A

Per essere anche in B deve essere in entrambi A e B cioe in A capB

Sapendo che A e gia accaduto il nostro nuovo sample space diventa A

la probabilita di A capB viene calcolata rispetto ad A

Nel caso dei dadi

P(B ∣A) = P((46))P((41) (42) (43) (44) (45) (46)) = 136

16= 1

6

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 57 88

Indipendenza

In generale sapere che A e accaduto modifica le chance che B accadaNel caso cio non avvenga cioe se P(B ∣A) = P(B) allora i 2 eventi sidicono indipendenti In questo caso sapere che A e accaduto nonaggiunge alcuna informazione

SiccomeP(A capB) = P(B ∣A)P(A)

Abbiamo che B e indipendente da A se

P(A capB) = P(B)P(A)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 58 88

Esercizi - 1

1 Svolgere gli esercizi di combinatoria

2 Si consideri il seguente esperimento casuale rdquosi lancia tre volte unamonetardquo Qual e lo spazio degli esiti di questo esperimento casualeSi scriva esplicitamente lrsquoevento rdquosi ottengono piu teste che crocirdquo

3 Si consideri il seguente esperimento casuale rdquoSi tirano due dadirdquo Siconsiderino gli eventi E = rdquola somma dei punteggi e disparirdquo F = rdquoilprimo dado realizza un 1rdquo e G = rdquola somma dei punteggi e 5rdquo Sidescrivano gli eventi E cap F E cup F F capG E cap F c e E cap F capG

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 59 88

Esercizi - 2

4 Si consideri il seguente esperimento casuale rdquoUn sistema e compostoda 4 componenti ciascuno dei quali o funziona oppure e guasto Siosserva lo stato dei componenti ottenendo un vettore (x1 x2 x3 x4)dove xi e 1 oppure 0 a seconda che il componente i-esimo funzionioppure nordquo

1 Da quanti elementi e formato lo spazio degli esiti2 Il sistema nel suo insieme funziona fintantoche entrambi i componenti

1 e 2 oppure entrambi i componenti 3 e 4 funzionano Specifica tuttigli esiti dellrsquoevento il rdquosistema funzionardquo

3 Sia E lrsquoevento rdquoi componenti 1 e 3 sono guastirdquo Quanti esiti contiene

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 60 88

Esercizi - 3

5 Si dimostri che in uno spazio degli esiti Ω dotato di una probabilita Pper ogni evento E F sub Ω vale la disuguaglianza seguente

P(E cap F ) ge P(E) + P(F ) minus 1

6 Un gruppo di 5 bambini e 10 bambine e in fila in ordine casuale nelsenso che tutte le 15 possibili permutazioni si suppongonoequiprobabili

1 Qual e la probabilita che il quarto della fila sia un bambino2 E il dodicesimo3 Qual e la probabilita che un determinato bambino occupi la terza

posizione

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 61 88

Esercizi - 4

7 In un comune vi sono 5 alberghi Se 3 persone devono scegliere unalbergo in cui pernottare qual e la probabilita che finiscano tutte inalberghi differenti Che cosa stiamo assumendo senza dirloesplicitamente

8 La media del salario annuale di un gruppo di 100 lavoratori impiegatinellrsquoamministrazione di una grande azienda e di 130000 dollari conuna deviazione standard di 20000 dollari Se si prende una persona acaso da questo gruppo cosa possiamo dire sulla probabilita che il suosalario sia

1 tra i 90000 e i 170000 dollari2 superiore a 150000 dollari

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 62 88

Esercizi - 5

9 In una certa regione vi sono due ditte che producono forni amicroonde Quelli della fabbrica A sono difettosi con probabilita 005mentre quelli della fabbrica B con probabilita 001 Supponi di averacquistato due apparecchi prodotti dalla stessa ditta che puo essere laA o la B con probabilita del 50 Se il primo microonde e difettosoqual e la probabilita condizionata che sia difettoso anche il secondo

10 Hai chiesto ad un vicino di innaffiare una piantina delicata mentre seiin vacanza Pensi che senza acqua la piantina muoia con probabilita08 mentre se innaffiata questa probabilita si ridurrebbe a 015 Latua fiducia che il vicino si ricordi di innaffiarla e del 90

1 Qual e la probabilita che la pianta sia ancora viva al tuo ritorno2 Se fosse morta quale sarebbe la probabilita che il vicino si sia

dimenticato di innaffiarla

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 63 88

Esercizi - 6

11 Una compagnia di assicurazioni classifica i suoi clienti in tre fascebasso rischio medio rischio alto rischio Le sue statistiche indicanoche le probabilita che un cliente delle tre fasce abbia un incidenteentro un periodo di un anno sono rispettivamente 005 015 e 030Se il 20 dei clienti sono a basso rischio il 50 a medio rischio e il30 ad alto rischio che percentuale dei clienti avra mediamenteincidenti in un lasso di un anno Se un cliente non ha avuto incidentinel 1987 qual e la probabilita che appartenga a ciascuna delle trefasce

12 Se un votante scelto a caso e favorevole ad una certa riforma conprobabilita di 07 qual e la probabilita che su 10 votanti esattamente7 siano favorevoli

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 64 88

Variabili aleatorie

Una variabile aleatoria (o anche variabile aleatoria) e una variabile chepuo assumere valori diversi in dipendenza da qualche fenomeno aleatorio

fenomeno lancio di 2 dadivariabile aleatoria somma dei 2 dadi

fenomeno 3 lanci di una monetavariabile aleatoria numero di rdquotesterdquo complessivo

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 65 88

Funzione di Ripartizione

Sia X una variabile aleatoria Si chiama funzione di ripartizione di X lafunzione F che associa ad ogni numero reale a la probabilita che X siaminore o uguale ad a cioe P(X le a) = FX (a)

Nel caso della moneta (fair) lanciata 3 volte (X indica il numero di testecomplessivo)

FX (a) =

⎧⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎨⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎩

0 if a lt 0

18 per 0 le a lt 1

18 + 38 = 48 per 1 le a lt 2

48 + 38 = 78 per 2 le a lt 3

88 = 1 per a ge 3

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 66 88

Funzione di densita o di massa

Sia X una variabile aleatoria Si chiama funzione di densita di X lafunzione f che associa ad ogni numero reale a la probabilita che X siauguale ad a indicata con fX (a)

Nel caso della moneta (fair) lanciata 3 volte (X indica il numero di testecomplessivo)

fX (a) =

⎧⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎨⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎩

18 per a = 0

38 per a = 1

38 per a = 2

18 per a = 3

0 altrimenti

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 67 88

Valore Atteso

Chiamato anche media (expectation in inglese) e appunto una mediapesata dei possibili valori di una variabile aleatoria Il peso dato a ciascunvalore e la probabilita data a quello specifico valore

E[X ] =sumi

aiP(X = ai)

Esempio dado truccato

valore 6 con probabilita 712

valori da 1 a 5 con probabilita 112

La variabile aleatoria X indica la faccia risultante dal lancio di un dado

E[X ] = 1

12lowast 1 + 1

12lowast 2 + 1

12lowast 3 + 1

12lowast 4 + 1

12lowast 5 + 7

12lowast 6 = 475

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 68 88

Valore Atteso - Proprieta

Sia X una variabile aleatoria con valore atteso E[X ] Se c e una costanteallora anche cX e X + c sono variabili casuali In particolare valgono leseguenti proprieta

E[cX ] = cE[X ]E[X + c] = E[X ] + c

Sia Y una variabile aleatoria Allora

E[X +Y ] = E[X ] +E[Y ]se e solo se X e Y sono independenti

E[XY ] = E[X ]E[Y ]

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 69 88

Varianza

Ersquo il valore atteso del quadrato della differenza tra la variabile aleatoria e ilsuo valore atteso

Var(X ) = E[(X minusE[X ])2] = E[X 2] minus (E[X ])2

La radice quadrata viene detta deviazione standard di X

Esempio dado truccato

E[X 2] = 1

12lowast 12 + 1

12lowast 22 + 1

12lowast 32 + 1

12lowast 42 + 1

12lowast 52 + 7

12lowast 62 ≃ 255

Var(X ) = E[X 2] minus (E[X ])2 ≃ 255 minus 4752 ≃ 3

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 70 88

Varianza - proprieta

Sia X una variabile aleatoria e c una costante Allora valgono le seguentiproprieta

1 Var(cX ) = c2Var(X )

2 Var(X + c) = Var(X )

NOTA

Var(X +X ) ne Var(X ) +Var(X )

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 71 88

Covarianza

Siano X Y due variabili aleatorie con valore atteso rispettivamenteE[X ] = microX e E[Y ] = microY La covarianza e definita come segue

Cov(X Y ) = E[(X minus microX )(Y minus microY )] = = E[XY ] minus microXmicroY

Proprieta

1 Cov(X Y ) = Cov(Y X )2 Cov(X X ) = Var(X )3 Sia a una costante allora

Cov(aX Y ) = aCov(X Y )

4 Sia Z una variabile aleatoria allora

Cov(X + Z Y ) = Cov(X Y ) + Cov(Z Y )

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 72 88

Esercizi - 1

1 Consideriamo una variabile aleatoria X che puo assumere i valori 12o 3 Se sappiamo che

fX (1) = 1

3 fX (2) = 3

7

1 Quanto vale fX (3)2 Disegnare il grafico di questa funzione di massa3 Disegnare il grafico della relativa funzione di ripartizione

2 Dimostrare che se X1 e X2 hanno la stessa distribuzione allora

Cov(X1 +X2X1 minusX2) = 0

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 73 88

Esercizi - 2

3 La funzione di ripartizione di X e definita come segue

FX (x) =

⎧⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎨⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎩

0 per x le 0

x2 per 0 le x lt 1

23 per 1 le x lt 2

1112 per 2 le x lt 3

1 per x ge 3

Se ne tracci il graficoQuanto vale P(X gt 12)Quanto vale P(2 le X le 4)Quanto vale P(X le 3)Quanto vale P(X = 1)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 74 88

Esercizi - 3

4 Un tipo di prodotti vengono classificati a seconda dei loro difetti edella fabbrica che li ha prodotti Sia X1 il numero (1 o 2) dellafabbrica e sia X2 il numero di difetti per pezzo (che possono essere da0 a 3) di un prodotto scelto a caso tra la totalita di quelli esistentiLa tabella seguente riporta la funzione di massa di probabilitacongiunta per queste due variabili aleatorie discrete Le righe siriferiscono alla variabile X1 mentre le colonne alla variabile X2

Trova le distribuzioni marginali di X1 e X2Calcola media e varianza di X2

0 1 2 31 18 116 316 182 116 116 18 14

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 75 88

Scipy

Scipy e un modulo che permette di utilizzare varie distribuzioni diprobabilita sia di tipo discreto che continuo

La sintassi generale e la seguente Scipystatsltnome distribuzionegt

rvs(size=z) restituisce un vettore di numeri casuali estrattisecondo la distribuzione di lunghezza z

pdf(x) restituisce il vettore della densita della distribuzionevalutata nei valori del vettore di input x (pmf per le discrete)

cdf(x) restituisce il vettore della funzione di ripartizione (ocumulativa) della distribuzione valutata nei valori del vettore di inputx

ppf(q) restituisce il vettore dei quantili della distribuzione valutatanei valori del vettore di input q

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 76 88

Variabili aleatorie discrete Binomiale

gtgtgt from scipystats import binom

gtgtgt rv = binom(n p)

rvrvs(x) restituisce un vettore di x numeri estratti secondo unadistribuzione Binomiale di parametri n p

rvpmf(x) restituisce la probabilita di ottenere esattamente x

successi in un esperimento dicotomico (01) ripetuto n volte con unaprobabilita di successo p (x puo essere un vettore)

rvcdf(q) restituisce il valore della funzione di ripartizione in q (qpuo essere un vettore)

rvppf(p) restituisce il valore del quantile di ordine p

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 77 88

Variabili aleatorie discrete Ipergeometrica

Supponiamo di avere M = 20 animali di cui n = 7 cani Se vogliamosapere la probabilita di trovare un dato numero di cani se scegliamoN = 12 dei 20 animali in maniera casuale possiamo usare una distribuzioneipergeometrica in questo modo

gtgtgt from scipystats import hypergeom

gtgtgt [M n N] = [20 7 12]

gtgtgt rv = hypergeom(M n N)

rvpmf(x) restituisce la probabilita di estrarre esattamente x cani

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 78 88

Variabili aleatorie discrete Geometrica

gtgtgt from scipystats import geom

gtgtgt rv = geom(p)

rvpmf(x) restituisce la probabilita di avere un successo dopoesattamente x insuccessi in una successione di esperimenti dicotomici(esito 01) con una probabilita di successo p (x puo essere un vettore)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 79 88

Variabili aleatorie discrete Poisson

La distribuzione di Poisson viene usata spesso come modello per il numerodi volte per cui un evento avviene in un dato intervallo di tempo (ospazio) Ad esempio si puo utilizzare per misurare il numero di chiamatericevute da un call center in una mattinata

gtgtgt from scipystats import poisson

gtgtgt mu = 2

gtgtgt rv = poisson(mu)

rvpmf(x) restituisce il seguente valore

f (x) = exp(minusmicro)microx

x

In questo caso x rappresenta il numero di eventi per cui si vuole calcolarela probabilita sapendo che in media ne accadono micro

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 80 88

Variabili aleatorie continue Uniforme

In Scipy la funzione uniforme e soltanto continua Questo significa chenella generazione di numeri casuali otterro dati di tipo float Possiamotuttavia simulare una variabile discreta estraendo la parte intera delrisultato ottenuto

gtgtgt from scipystats import uniform

gtgtgt rv = uniform()

Il comando uniform() crea una distribuzione uniforme nellrsquointervallo[01] Possiamo creare una distribuzione uniforme qualsiasi usandouniform(x y - x) per lrsquointervallo [x y]

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 81 88

Variabili aleatorie continue

norm(mu sigma) variabile Gaussiana (o Normale) di media micro edeviazione standard σ

expon(scale = 1 lambda) variabile Esponenziale di parametroλ

Altre distribuzioni (con relativa documentazione) disponibili suhttpsdocsscipyorgdocscipyreferencestatshtml

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 82 88

Esercizi - 1

1 Unrsquourna contiene 10 palline di cui 4 bianche e 6 nere Si eseguono 5estrazioni con reimmissione

1 Tracciare grafico della funzione massa di probabilita della variabilecasuale X = rdquonumero di palline bianche estratterdquo

2 Calcolare la probabilita di estrarre 2 palline bianche3 Calcolare la probabilita di estrarre al piu 2 palline bianche4 Calcolare la probabilita di estrarre almeno 2 palline bianche5 Qual e il numero minimo x tale che la probabilita di estrarre al piu x

palline bianche sia almeno 08

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 83 88

Esercizi - 2

2 Si eseguono 10 estrazioni senza reimmissione da unrsquourna

1 Tracciare il grafico della funzione massa di probabilita della variabilecasuale X = rdquonumero di palline bianche estratterdquo nei seguenti casi

1 lrsquourna contiene 100 palline di cui 20 bianche e le restanti nere2 lrsquourna contiene 100 palline di cui 2 bianche e le restanti nere

2 Tracciare il grafico della funzione massa di probabilita della variabilecasuale X nel caso dellrsquourna 1 se si eseguono 25 estrazioni

3 Consideriamo lrsquourna 1 e N = 10 estrazioni Si aumenti il numero totaleM di palline nellrsquourna mantenendo uguale a 02 la frazione di pallinebianche Per ciascun valore di M confrontare graficamente ladistribuzione di probabilita del numero di palline bianche estratte nelcaso di estrazioni con e senza reimmissione Provare con 20 40 e 200palline bianche

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 84 88

Esercizi - 3

3 Calcolare la probabilita di ottenere piu teste che croci lanciando 7volte una moneta truccata con probabilita di avere croce pari a 045

4 Calcolare la probabilita di avere almeno 3 sei lanciando 5 dadi a 12facce

5 Calcolare la probabilita di estrarre 20 euro da un sacco contenente 47monete da 1 centesimo e 53 da 2 euro estraendo (uniformemente) acaso 10 monete senza reinserirle

6 Un grammo di uranio emette mediamente 2152 particelle α ognimillisecondo Qual e con buona approssimazione la probabilita che ungrammo di uranio emetta al piu 2000 particelle α in un millisecondo

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 85 88

Esercizi - 4

7 Un uomo si risveglia in mezzo al deserto senza acqua Dopo ogniminuto ha una probabilita del 3 di perdere conoscenza per via dellecondizioni estreme Calcolare la probabilita che lrsquouomo perdaconoscenza dopo almeno due ore e la probabilita che lrsquouomo perdaconoscenza dopo esattamente un quarto drsquoora

8 Sia X una variabile aleatoria normale di parametri micro = 10 e σ = 36Calcola

1 P(X gt 5)2 P(4 le X le 16)3 P(X le 8)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 86 88

Esercizi - 5

9 Il numero di errori tipografici per pagina di una certa rivista segue unadistribuzione di Poisson Sapendo che mediamente sono presenti 02errori per pagina determinare la probabilita che una pagina contenga

1 nessun refuso2 piu refusi

10 Arrivi alla fermata dellrsquoautobus alle 1000 e sei certo che ne passerauno in un momento distribuito uniformemente tra le 1000 e le 1030

1 Qual e la probabilita che tu debba aspettare piu di 10 minuti2 Se alle 1015 lrsquoautobus non e ancora arrivato qual e la probabilita che

tu debba aspettare almeno altri 10 minuti

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 87 88

Esercizi - 6

11 Il signor Jones e convinto che il tempo di vita di una automobile (inmigliaia di chilometri percorse) sia una variabile aleatoria esponenzialedi parametro 120 Il signor Smith ha una macchina usata da vendereche ha percorso circa 10 000 chilometri

1 Se il signor Jones decide di comprarla che probabilita ha di farle farealmeno altri 20 000 chilometri prima che sia da buttare

2 Il modello assunto dal signor Jones e ragionevole

12 Sia X una variabile casuale binomiale di parametri n = 100 e p = 07

1 Tracciate la funzione di ripartizione di X2 Calcolate il primo quartile il quantile di ordine 09 e la mediana di X3 Calcolare la probabilita P(X le 60)4 Calcolare la probabilita P(X le 88)5 Trovare il piu piccolo valore x tale che P(X le x) ge 09

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 88 88

  • Lezione 1
    • Script in Python
    • Numpy
    • Esercizi
    • Pandas
    • Esercizi
      • Lezione 2
        • File csv
        • DataFrame
        • Accesso ai DataFrame
        • Frequenze
        • Esercizi
          • Lezione 3
            • Matplotlib
            • Grafici a Barre
            • Istogrammi
            • Cumulativa empirica
            • Boxplot
            • QQplot
            • Diagramma di Pareto
            • Esercizi
              • Lezione 4
                • Definizioni
                • Probabilitagrave condizionata
                • Indipendenza
                • Esercizi
                  • Lezione 5
                    • Variabili Aleatorie
                    • Funzione di Ripartizione
                    • Funzione di Densitagrave
                    • Valore Atteso
                    • Varianza
                    • Covarianza
                    • Esercizi
                      • Lezione 6
                        • Scipy - Variabili Discrete
                        • Scipy - Variabili continue
                        • Esercizi

Programma

Pagina del corso httpcesaridiunimiitteachinghtml

1 Introduzione script in Python Arrays Series

2 DataFrame

3 Grafici

4 Variabili aleatorie

5 Esercizi di riepilogo

6 Calcolo di probabilita - 1

7 Calcolo di probabilita - 2

8 Risoluzione di un tema drsquoesame

9 Simulazione di un tema drsquoesame

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 2 88

Introduzione Python

rdquoPython e un linguaggio di programmazione dinamico orientato aglioggetti utilizzabile per molti tipi di sviluppo softwarerdquo(httpswwwpythonit)

Figurehttpsstackoverflowblog20170906incredible-growth-python

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 3 88

Introduzione installare Python

Mac OS X 102 e successivi includono una versione pre-installata

Nei sistemi Linux spesso e gia presente nel setup di base

Per verificare se Python e gia installato e sufficiente aprire una finestra delterminale e digitare il comando python

Installazione

httpswwwanacondacomdownload (raccomandata)

httpswwwpythonit

Nota la versione che verra utilizzata nel corso e la 3x

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 4 88

Interprete interattivo - 1

Il comando python apre lrsquointerprete interattivo Lrsquointerprete valuta leistruzioni Python inserite a riga di comando e fornisce una risposta

dottorandodottorando-Lenovo-Y50-70 $ python

Python 365 |Anaconda Inc| (default Apr 29 2018

161456)

GCC 720on linux

Type help copyright credits or license for more

information

gtgtgt

gtgtgt print(Hello world)

Hello world

gtgtgt

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 5 88

Interprete interattivo - 2

La funzione exit() e digitata per uscire dallrsquoambiente interprete (o inalternativa ctrl + d cmd + d)

gtgtgt print(Hello world)

Hello world

gtgtgt

dottorandodottorando-Lenovo-Y50-70 $

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 6 88

Script

Usare lrsquointerprete interattivo non e la maniera piu comoda perprogrammareE possibile lanciare un programma python (filepy) eseguendo ilcomando python ltnomefilepygt dalla cartella in cui si trova il filepy

dottorandodottorando-Lenovo-Y50-70 Scrivania$ python

testpy

My first script in Python

dottorandodottorando-Lenovo-Y50-70 Scrivania$

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 7 88

Variabili in Python - 1

Python e dinamicamente tipato e fortemente tipatoUna variabile inizia ad esistere nel momento in cui le viene assegnato unvalore che ne determina il tipo

gtgtgt a=10000

gtgtgt type(a)

lttype lsquointrsquogt

gtgtgt len(a)

Traceback (most recent call last)

File ltstdingt line 1 in ltmodulegt

TypeError object of type rsquointrsquo has no len()

gtgtgt

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 8 88

Variabili in Python - 2

Riferirsi ad una variabile inesistente (a cui non e ancora stato assegnato unvalore) genera un errore

gtgtgt b

Traceback (most recent call last)

File ltstdingt line 1 in ltmodulegt

NameError name rsquobrsquo is not defined

gtgtgt

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 9 88

Funzione Help

Per aprire la documentazione a riguardo di un particolare oggetto metodoo attributo si puo invocare la funzione help(rdquonomerdquo) con il nomedellrsquooggetto che stiamo cercando

gtgtgt help(str)

Help on class str in module builtin

class str(basestring)

| str(object=rsquorsquo) -gt string

|

| Return a nice string representation of the object

| If the argument is a string the return value is the

same object

|

Si esce dal manuale interattivo premendo q

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 10 88

Tipi Predefiniti in Python

Stringhe (str) rdquoquesta e una stringardquo rdquoquesta purerdquo

Dizionari (dict) lsquochiaversquo valoreTuple (tuple) (1 2 3 1 rsquociaorsquo)

Liste (list) [1 2 3 4 rsquopipporsquo]

Set (set) (1 2 3)

Interi (int) 1 2 3

Float (float) 15 314 2718281828459045

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 11 88

Numpy

Il modulo numpy (httpwwwnumpyorg) mette a disposizione unastruttura dati creata appositamente per il calcolo scientifico

ArrayUn array e un contenitore di dati omogenei cioe dello stesso tipo Se sitenta di costruire un array con dati di tipo diverso questi vengonoldquotrasformatirdquo nel piu piccolo tipo adatto a contenerli tutti

gtgtgt import numpy as np

gtgtgt nparray( [146810] )

array([ 1 4 68 10 ])

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 12 88

Creazione di Array - 1

numpyarange(x) restituisce un array contenente gli interi da 0 a x minus 1

gtgtgt numpyarange(5)

array([0 1 2 3 4])

numpyarange(start stop step) permette di scegliere gli estremi dellasequenza contenuta nellrsquoarray e il passo tra un numero ed il successivo

gtgtgt numpyarange(262)

array([2 4])

gtgtgt numpyarange(2-3-1)

array([ 2 1 0 -1 -2])

numpylinspace(start stop n) permette di scegliere gli estremi e quantinumeri devono comparire allrsquointerno della sequenza

gtgtgt numpylinspace(014)

array)[0 03333333 066666667 1])

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 13 88

Creazione di Array - 2

numpyones(rdquotuplardquo) restuituisce un array di 1 date le dimensionispecificate nella tupla come argomento

gtgtgt numpyones( (15) )

array([1 1 1 1 1])

numpyzeros(rdquotuplardquo) restuituisce un array di 0 date le dimensionispecificate nella tupla come argomento

gtgtgt numpyzeros( (25) )

array([[0 0 0 0 0] [0 0 0

0 0]])

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 14 88

Operazioni con Array

Applicando un operazione logica ad un array si ottiene come risposta unarray di tipo booleano contenente nella posizione i-esima il risultatodellrsquoespressione logica valutata per lrsquoelemento i-esimo dellrsquoarray

gtgtgt numpyarange(5) gt 3

array([False False False False True] dtype=bool)

Le operazioni + - tra due array vengono eseguite elemento perelemento (gli array devono avere le stesse dimensioni)

gtgtgt numpyarange(5) + numpylinspace(025)

array([ 0 15 3 45 6 ])

gtgtgt numpyarange(5) 2

array([0 2 4 6 8])

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 15 88

Selezioni di un sottoinsieme di elementi

Ad un array e possibile accedere in tutti i modi con cui e possibile accederead una lista ad esempio

Ottenere una tupla di elementi

gtgtgt a[2] a[-1] a[36]

(2 9 array([3 4 5]))

Slicing [startstopstep]

gtgtgt a[293]

array([2 5 8])

gtgtgt a[2]

array([0 2 4 6 8])

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 16 88

Accesso con maschere booleane

Specificando tra [ ] un array di tipo booleano selezioniamo dallrsquoarray glielementi la cui posizione corrisponde ad un True nellrsquoarray di tipobooleano (che prende il nome di maschera)

gtgtgt a = numpyarange(10)

gtgtgt mask = a2 == 0

gtgtgt mask

array([ True False True False True False True

False True False] dtype=bool)

gtgtgt a[mask]

array([0 2 4 6 8])

o in maniera piu compatta

gtgtgt a[a2 == 0]

array([0 2 4 6 8])

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 17 88

Esercizi

1 Lanciare uno script che stampi il vostro nome e cognome

2 Creare un array i cui elementi siano gli interi che compongono ilvostro numero di matricola

3 Sia X la lunghezza dellrsquoarray del punto precedente Creare un array diX elementi equispaziati lrsquouno dallrsquoaltro di 15

4 Creare un array di X elementi equispaziati nellrsquointervallo tra 1 e 3

5 Ottenere gli array dati dalla somma tra lrsquoarray del punto 2 e quello delpunto 3 e quello dato dalla moltiplicazione tra punto 3 e punto 4

6 Ottenere per ciascuno dei due array del punto 5 un array mascherache in corrispondenza dei numeri divisibili per 3 abbia True Falsealtrimenti

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 18 88

Pandas - Series (1)

Pandas (httpspandaspydataorg) e una libreria Python chefornisce strutture dati e strumenti relativi esclusivamente allrsquoanalisi deidatiUna Series e un array monodimensionale ed etichettato Rappresenta unaserie di osservazioni di un certo carattere fatto su un insieme di individui

a 00

b 10

c 20

d 30

e 40

f 50

g 60

h 70

Name serie di esempio dtype float64

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 19 88

Pandas - Series (2)

pandasSeries (data index dtype name )

data contiene i dati che si vuole inserire nella serie

index della stessa lunghezza di data contiene le etichette

dtype permette di specificare il tipo che i dati devono assumere

name permette di dare un nome alla Series

gtgtgt import pandas as pd

gtgtgt import numpy as np

gtgtgt oss = nparange(8)

gtgtgt etic = [rsquoarsquorsquobrsquorsquocrsquorsquodrsquorsquoersquorsquofrsquorsquogrsquorsquohrsquo]

gtgtgt pdSeries(data=oss index=etic name=rsquoserie di esempiorsquo

dtype=float)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 20 88

Accesso ai dati di una Series

Specificando un valore (o una lista di valori) per lrsquoetichetta

gtgtgt sloc[[rsquohrsquorsquoarsquo]]

h 70

a 00

Specificando un valore (o una lista di valori) per la posizione

gtgtgt s[[56]]

f 50

g 60

Usando lo slicing (come per gli array numpy) per la posizione

gtgtgt s[36]

d 30

e 40

f 50

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 21 88

Pandas Series - Utils

Seriesmin() Seriesmax() restituiscono rispettivamente il minimoed massimo tra i valori della Series

Seriessum() restituisce la somma dei valori della Series

Seriessort values() restituisce una copia della Series ordinata pervalore

Seriessort index() restituisce una copia della Series ordinata peretichette

Seriessample(n) restituisce una Series di n elementi sceltiuniformemente a caso allrsquointerno di quelli della Series

Seriesappend([s1s2]) concatena una o piu Series a quella dipartenza

Seriescount() restituisce il numero dei valori della Series che nonsiano il valore NaN

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 22 88

Il valore NaN

Nan un oggetto del modulo numpy che puo rappresentare in una Seriesun dato di cui non e stato possibile fare unrsquoosservazioneOperazioni con un valore Nan hanno come risultato il valore Nan

gtgtgt oss = range(5)

gtgtgt ossappend(None)

gtgtgt pandasSeries(oss)

0 00

1 10

2 20

3 30

4 40

5 NaN

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 23 88

Esercizi

Creare la Series gol in modo che le etichette siano numeri dallrsquo1 al 23 Idati raccolti siano numeri interi tra 0 e 30 scelti casualmente (scarica ilnotebook) La Series rappresenta i gol segnati da ciascun giocatore diuna societa calcistica nella stagione appena passata Lrsquoetichettacorrisponde al numero di maglia del giocatore Ottenere

1 I gol segnati dal capocannoniere2 Chi non ha mai fatto gol durante lrsquoanno3 La statistica del punto 2 per i soli titolari (numeri dallrsquo1 allrsquo11) e per

le sole riserve (dal 12 al 23)4 La statistica del punto 2 per i soli attaccanti (numeri dalrsquo9 allrsquo11)5 I gol segnati dai giocatori coi numeri di maglia 5 9 10 14 (somma)6 Chi ha segnato piu di 10 gol e chi ha segnato esattamente 10 gol7 Una copia della Series ordinata secondo i gol effettuati8 Una stampa dei primi 5 cannonieri e degli ultimi 59 Una copia della Series ordinata in modo discendente secondo il

numero di maglia

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 24 88

File csv

Il formato csv (comma-separated value) e un formato utilizzato perrappresentare una tabella di dati e favorirne lrsquoimportazione e lrsquoesportazioneUn file csv e scritto nella seguente forma

titolopaeseannoduratagenerevoto

Guerre StellariUSA1977121Fantascienza4

Lrsquoimpero colpisce ancoraUSA1980124Fantascienza4

Il ritorno dello JediUSA1983Fantascienza35

Profondo RossoITA1975Horror35

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 25 88

Leggere csv

La funzione read csv() di Pandas puo essere utilizzata per leggere unfile di formato csv Tra i vari parametri che passiamo in input unoparticolarmente importante e sep che indica il carattere utilizzato perseparare le colonne (default e rsquorsquo)

gtgtgt df film = pdread csv(rsquofilmcsvrsquo)

gtgtgt df film

titolo paese anno durata genere voto

Il padrino USA 19720 1750 Drammatico 45

Pulp Fiction USA 19940 1540 Drammatico 40

Fight Club USA 19990 1390 Thriller 40

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 26 88

DataFrame

In Pandas un DataFrame e una struttura dati tabulare con assi etichettatile cui colonne possono contenere dati eterogenei da colonna a colonna

gtgtgt dataframe

esempio

Nome Cognome Eta Citta

Tommaso Rossi 300 Milano

Sergio Bianchi 340 Roma

Pasquale Verdi 290 Palermo

Antonio Gialli 300 Roma

Il DataFrame puo essere visto come un insieme di serie aventi lo stessoindice accostate una allrsquoaltra

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 27 88

Accesso colonne DataFrame - 1

Per conoscere le colonne di un DataFrame possiamo invocare il comandodfcolumns dove df e la variabile in cui abbiamo instanziato ilDataFramePer accedere ad una colonna dobbiamo specificarne il nome nel seguentemodo

gtgtgt df film[rsquogenerersquo]

titolo

Il padrino Drammatico

Pulp Fiction Drammatico

Fight Club Thriller

Selezionando unrsquounica colonna in output viene restituita una Series

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 28 88

Accesso colonne DataFrame - 2

Possiamo accedere allo stesso tempo a piu colonne

gtgtgt df film[[rsquopaesersquorsquoannorsquo]]

titolo paese anno

Il padrino USA 19720

Pulp Fiction USA 19940

Fight Club USA 19990

Selezionando piu colonne in output viene restituito un DataFrame

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 29 88

Accesso righe DataFrame - 1

Per indice numerico

gtgtgt df film[1518]

titolo paese anno durata genere voto

Il padrino USA 19720 1750 Drammatico 45

Pulp Fiction USA 19940 1540 Drammatico 40

Fight Club USA 19990 1390 Thriller 40

Quasi Amici FRA 20110 1120 Commedia 35

Per valore dellrsquoindice (assumiamo che titolo sia lrsquoindice delDataFrame)

gtgtgt df film[rsquoIl padrinorsquorsquoFight Clubrsquo]

titolo paese anno durata genere voto

Il padrino USA 19720 1750 Drammatico 45

Pulp Fiction USA 19940 1540 Drammatico 40

Fight Club USA 19990 1390 Thriller 40

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 30 88

loc amp iloc

Cosı come per le Series anche con i DataFrame possiamo usare loc ediloc per lrsquoaccesso ai dati

loc[rsquonome indicersquo] permette lrsquoaccesso ad una riga o piu righetramite nome dellrsquoindice

iloc[rsquoposizionersquo] permette lrsquoaccesso ad una o piu righe tramitela loro posizione

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 31 88

Accesso tramite unrsquoespressione logica

gtgtgt df film[rsquoannorsquo gt 1998]

titolo

Il padrino False

Pulp Fiction False

Fight Club True

Quasi Amici True

gtgtgt df film[df film[rsquoannorsquo] gt 1998]

titolo paese anno durata genere voto

Fight Club USA 19990 1390 Thriller 40

Quasi Amici FRA 20110 1120 Commedia 35

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 32 88

Metodi dei DataFrame

La classe DataFrame ha diversi metodi Elenchiamo qui i piu importanti

DataFrameappend() permette di estendere il DataFrame

DataFramedrop duplicates() restituisce un DataFrame senza righeduplicate

DataFramedropna() Eliminare i valori Nan da un DataFrame

DataFramesort values() permette di ordinare il DataFrame

DataFramemax() DataFramemin() DataFramemean()DataFramemedian()

Per la completa documentazione si puo utilizzare il comandohelp(pdDataFrame) oppure andare al seguente linkhttpspandaspydataorgpandas-docsstablegenerated

pandasDataFramehtml

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 33 88

Frequenze

La frequenza assoluta indica il numero di volte che una dataosservazione occorre in un campione

La frequenza relativa e un valore tra 0 e 1 che permette di valutare inmaniera piu efficace la frequenza di un osservazione Si calcoladividendo la frequenza assoluta per il numero totale di casi

Per calcolare questa quantita in Pandas possiamo utilizzare la funzionevalue counts() che opera su una Series

In alternativa si puo utilizzare la funzione pdcrosstab che calcolaqueste frequenze in automatico restituendole in output in un DataFrame

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 34 88

Esercizi

Utilizzando il file dati-ospedalicsv dai csv del laboratorio

1 Leggere il file e visualizzarlo in un DataFrame

2 Calcolare le frequenze assolute e relative dellrsquoattributo Regioneusando crosstab

3 Ottenere la singola serie relativa allrsquoattributo Regione e calcolarne lafrequenza assoluta e relativa senza usare crosstab

4 Estrarre un sottodataframe contenente le colonne Nome (attributoDenominazione Str Pubblica New) e Numero di medici (attributoMedici SSN) degli ospedali aventi meno di 200 medici

5 Visualizzare il nome degli ospedali della regione Lombardia

6 Calcolare il numero medio di ingegneri (Ingegneri SSN) presenti negliospedali campani

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 35 88

Esercizi

7 Calcolare la varianza del numero di assistenti sociali (Assistenti socialiSSN) negli ospedali con piu di 400 medici

8 Qual e lrsquoospedale con meno medici

9 Visualizzare in ordine alfabetico il nome dei primi 10 ospedali pernumero di medici

10 Visualizzare il numero degli ospedali che hanno dichiarato il numerodi odontoiatri (per cui il valore e diverso da NaN) (OdontoiatriUniversitari)

11 Visualizzare il numero degli ospedali che hanno dichiarato il numerodi odontoiatri (Odontoiatri Universitari) e per cui questo numero emaggiore di 0

12 Calcolare le frequenze assolute per lrsquoattributo Odontoiatri SSNTrasformare questo risultato in frequenze relative

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 36 88

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) SAD 20182019 January 12 2019 37 88

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) SAD 20182019 January 12 2019 38 88

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) SAD 20182019 January 12 2019 39 88

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) SAD 20182019 January 12 2019 40 88

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) SAD 20182019 January 12 2019 41 88

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) SAD 20182019 January 12 2019 42 88

Grafici con le Series

In generale possiamo tracciare diversi tipi di grafici con le Series

rsquolinersquo line plot (default)

rsquobarrsquo vertical bar plot

rsquobarhrsquo horizontal bar plot

rsquohistrsquo histogram

rsquoboxrsquo boxplot

rsquokdersquo Kernel Density Estimation plot

rsquodensityrsquo same as rsquokdersquo

rsquoarearsquo area plot

rsquopiersquo pie plot

Per saperne di piu consultare questo link

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 43 88

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) SAD 20182019 January 12 2019 44 88

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) SAD 20182019 January 12 2019 45 88

Boxplot

Rappresenta la distribuzione di un vettore di numeri cerchiando gli outlier

gtgtgt weight = heroes[rsquoWeightrsquo]

gtgtgt weightplotbox()

gtgtgt pltshow()

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 46 88

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) SAD 20182019 January 12 2019 47 88

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) SAD 20182019 January 12 2019 48 88

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) SAD 20182019 January 12 2019 49 88

Esercizi - 1

Utilizzando il file capellicsv dai csv del laboratorio

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) SAD 20182019 January 12 2019 50 88

Esercizi - 2

Utilizzando il file dati-ospedalicsv dai csv del laboratorio

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 e canipdf

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 51 88

Sample space

Un esperimento e qualsiasi processo che produce una realizzazione (oosservazione) Lrsquoinsieme di tutte le possibili realizzazioni di un esperimentoviene detto sample space ed indicato con S

lancio di 2 monete

S = (T T ) (T C) (C T ) (C C)

gara di 3 cavalli (ab c)

S = tutti i possibili ordinamenti di(ab c)= (ab c) (a cb) (c b a)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 52 88

Eventi

lancio di 2 monete

S = (T T ) (T C) (C T ) (C C)

A = 2 monete uguali

A = (T T ) (C C)

B = 2 monete diverse

B = Ac = (T C) (C T )

gara di 3 cavalli

A = cavallo a vincente

A = (ab c) (a c b)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 53 88

Probabilita - 1

Consideriamo un esperimento con sample space S Supponiamo che adogni evento A sia associato un numero chiamato probabilita di A edindicato con P(A) che soddisfa le seguenti proprieta

1 Per ogni evento A la probabilita di A e un numero tra 0 e 1

0 le P(A) le 1

2 La probabilita del sample space S e 1

P(S) = 1

3 La probabilita dellrsquounione di eventi disgiunti e uguale alla somma delleprobabilita di tali eventi

P(A cupB) = P(A) + P(B)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 54 88

Probabilita - 2

In generale 2 eventi potrebbero non essere disgiunti

P(A cupB) = P(A) + P(B) minus P(A capB)

Esempio un certo negozio accetta pagamenti o con carte di credito VISAo Mastercard

1 22 dei clienti ha Mastercard

2 58 dei clienti ha VISA

3 14 dei clienti ha entrambe

Qual e la probabilita che un cliente ha almeno una delle 2 carte

P(A) = 022 P(B) = 058

P(A cupB) = P(A) + P(B) minus P(A capB) = 022 + 058 minus 014 = 066

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 55 88

Probabilita condizionata - 1

Se alcune informazioni riguardo lrsquoesito di un esperimento sono disponibiliparliamo di probabilita condizionata

Esempio lancio di 2 dadi

S = (11) (12) (65) (66)

Probabilita che la somma sia 10 (evento B) sapendo che il primo dadomostra 4 (evento A)

(41) (42) (43) (44) (45) (46)

P(B ∣A) = 16

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 56 88

Probabilita condizionata - 2

In generale

P(B ∣A) = P(A capB)P(A)

Supponiamo lrsquoesito sia in A

Per essere anche in B deve essere in entrambi A e B cioe in A capB

Sapendo che A e gia accaduto il nostro nuovo sample space diventa A

la probabilita di A capB viene calcolata rispetto ad A

Nel caso dei dadi

P(B ∣A) = P((46))P((41) (42) (43) (44) (45) (46)) = 136

16= 1

6

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 57 88

Indipendenza

In generale sapere che A e accaduto modifica le chance che B accadaNel caso cio non avvenga cioe se P(B ∣A) = P(B) allora i 2 eventi sidicono indipendenti In questo caso sapere che A e accaduto nonaggiunge alcuna informazione

SiccomeP(A capB) = P(B ∣A)P(A)

Abbiamo che B e indipendente da A se

P(A capB) = P(B)P(A)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 58 88

Esercizi - 1

1 Svolgere gli esercizi di combinatoria

2 Si consideri il seguente esperimento casuale rdquosi lancia tre volte unamonetardquo Qual e lo spazio degli esiti di questo esperimento casualeSi scriva esplicitamente lrsquoevento rdquosi ottengono piu teste che crocirdquo

3 Si consideri il seguente esperimento casuale rdquoSi tirano due dadirdquo Siconsiderino gli eventi E = rdquola somma dei punteggi e disparirdquo F = rdquoilprimo dado realizza un 1rdquo e G = rdquola somma dei punteggi e 5rdquo Sidescrivano gli eventi E cap F E cup F F capG E cap F c e E cap F capG

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 59 88

Esercizi - 2

4 Si consideri il seguente esperimento casuale rdquoUn sistema e compostoda 4 componenti ciascuno dei quali o funziona oppure e guasto Siosserva lo stato dei componenti ottenendo un vettore (x1 x2 x3 x4)dove xi e 1 oppure 0 a seconda che il componente i-esimo funzionioppure nordquo

1 Da quanti elementi e formato lo spazio degli esiti2 Il sistema nel suo insieme funziona fintantoche entrambi i componenti

1 e 2 oppure entrambi i componenti 3 e 4 funzionano Specifica tuttigli esiti dellrsquoevento il rdquosistema funzionardquo

3 Sia E lrsquoevento rdquoi componenti 1 e 3 sono guastirdquo Quanti esiti contiene

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 60 88

Esercizi - 3

5 Si dimostri che in uno spazio degli esiti Ω dotato di una probabilita Pper ogni evento E F sub Ω vale la disuguaglianza seguente

P(E cap F ) ge P(E) + P(F ) minus 1

6 Un gruppo di 5 bambini e 10 bambine e in fila in ordine casuale nelsenso che tutte le 15 possibili permutazioni si suppongonoequiprobabili

1 Qual e la probabilita che il quarto della fila sia un bambino2 E il dodicesimo3 Qual e la probabilita che un determinato bambino occupi la terza

posizione

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 61 88

Esercizi - 4

7 In un comune vi sono 5 alberghi Se 3 persone devono scegliere unalbergo in cui pernottare qual e la probabilita che finiscano tutte inalberghi differenti Che cosa stiamo assumendo senza dirloesplicitamente

8 La media del salario annuale di un gruppo di 100 lavoratori impiegatinellrsquoamministrazione di una grande azienda e di 130000 dollari conuna deviazione standard di 20000 dollari Se si prende una persona acaso da questo gruppo cosa possiamo dire sulla probabilita che il suosalario sia

1 tra i 90000 e i 170000 dollari2 superiore a 150000 dollari

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 62 88

Esercizi - 5

9 In una certa regione vi sono due ditte che producono forni amicroonde Quelli della fabbrica A sono difettosi con probabilita 005mentre quelli della fabbrica B con probabilita 001 Supponi di averacquistato due apparecchi prodotti dalla stessa ditta che puo essere laA o la B con probabilita del 50 Se il primo microonde e difettosoqual e la probabilita condizionata che sia difettoso anche il secondo

10 Hai chiesto ad un vicino di innaffiare una piantina delicata mentre seiin vacanza Pensi che senza acqua la piantina muoia con probabilita08 mentre se innaffiata questa probabilita si ridurrebbe a 015 Latua fiducia che il vicino si ricordi di innaffiarla e del 90

1 Qual e la probabilita che la pianta sia ancora viva al tuo ritorno2 Se fosse morta quale sarebbe la probabilita che il vicino si sia

dimenticato di innaffiarla

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 63 88

Esercizi - 6

11 Una compagnia di assicurazioni classifica i suoi clienti in tre fascebasso rischio medio rischio alto rischio Le sue statistiche indicanoche le probabilita che un cliente delle tre fasce abbia un incidenteentro un periodo di un anno sono rispettivamente 005 015 e 030Se il 20 dei clienti sono a basso rischio il 50 a medio rischio e il30 ad alto rischio che percentuale dei clienti avra mediamenteincidenti in un lasso di un anno Se un cliente non ha avuto incidentinel 1987 qual e la probabilita che appartenga a ciascuna delle trefasce

12 Se un votante scelto a caso e favorevole ad una certa riforma conprobabilita di 07 qual e la probabilita che su 10 votanti esattamente7 siano favorevoli

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 64 88

Variabili aleatorie

Una variabile aleatoria (o anche variabile aleatoria) e una variabile chepuo assumere valori diversi in dipendenza da qualche fenomeno aleatorio

fenomeno lancio di 2 dadivariabile aleatoria somma dei 2 dadi

fenomeno 3 lanci di una monetavariabile aleatoria numero di rdquotesterdquo complessivo

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 65 88

Funzione di Ripartizione

Sia X una variabile aleatoria Si chiama funzione di ripartizione di X lafunzione F che associa ad ogni numero reale a la probabilita che X siaminore o uguale ad a cioe P(X le a) = FX (a)

Nel caso della moneta (fair) lanciata 3 volte (X indica il numero di testecomplessivo)

FX (a) =

⎧⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎨⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎩

0 if a lt 0

18 per 0 le a lt 1

18 + 38 = 48 per 1 le a lt 2

48 + 38 = 78 per 2 le a lt 3

88 = 1 per a ge 3

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 66 88

Funzione di densita o di massa

Sia X una variabile aleatoria Si chiama funzione di densita di X lafunzione f che associa ad ogni numero reale a la probabilita che X siauguale ad a indicata con fX (a)

Nel caso della moneta (fair) lanciata 3 volte (X indica il numero di testecomplessivo)

fX (a) =

⎧⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎨⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎩

18 per a = 0

38 per a = 1

38 per a = 2

18 per a = 3

0 altrimenti

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 67 88

Valore Atteso

Chiamato anche media (expectation in inglese) e appunto una mediapesata dei possibili valori di una variabile aleatoria Il peso dato a ciascunvalore e la probabilita data a quello specifico valore

E[X ] =sumi

aiP(X = ai)

Esempio dado truccato

valore 6 con probabilita 712

valori da 1 a 5 con probabilita 112

La variabile aleatoria X indica la faccia risultante dal lancio di un dado

E[X ] = 1

12lowast 1 + 1

12lowast 2 + 1

12lowast 3 + 1

12lowast 4 + 1

12lowast 5 + 7

12lowast 6 = 475

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 68 88

Valore Atteso - Proprieta

Sia X una variabile aleatoria con valore atteso E[X ] Se c e una costanteallora anche cX e X + c sono variabili casuali In particolare valgono leseguenti proprieta

E[cX ] = cE[X ]E[X + c] = E[X ] + c

Sia Y una variabile aleatoria Allora

E[X +Y ] = E[X ] +E[Y ]se e solo se X e Y sono independenti

E[XY ] = E[X ]E[Y ]

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 69 88

Varianza

Ersquo il valore atteso del quadrato della differenza tra la variabile aleatoria e ilsuo valore atteso

Var(X ) = E[(X minusE[X ])2] = E[X 2] minus (E[X ])2

La radice quadrata viene detta deviazione standard di X

Esempio dado truccato

E[X 2] = 1

12lowast 12 + 1

12lowast 22 + 1

12lowast 32 + 1

12lowast 42 + 1

12lowast 52 + 7

12lowast 62 ≃ 255

Var(X ) = E[X 2] minus (E[X ])2 ≃ 255 minus 4752 ≃ 3

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 70 88

Varianza - proprieta

Sia X una variabile aleatoria e c una costante Allora valgono le seguentiproprieta

1 Var(cX ) = c2Var(X )

2 Var(X + c) = Var(X )

NOTA

Var(X +X ) ne Var(X ) +Var(X )

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 71 88

Covarianza

Siano X Y due variabili aleatorie con valore atteso rispettivamenteE[X ] = microX e E[Y ] = microY La covarianza e definita come segue

Cov(X Y ) = E[(X minus microX )(Y minus microY )] = = E[XY ] minus microXmicroY

Proprieta

1 Cov(X Y ) = Cov(Y X )2 Cov(X X ) = Var(X )3 Sia a una costante allora

Cov(aX Y ) = aCov(X Y )

4 Sia Z una variabile aleatoria allora

Cov(X + Z Y ) = Cov(X Y ) + Cov(Z Y )

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 72 88

Esercizi - 1

1 Consideriamo una variabile aleatoria X che puo assumere i valori 12o 3 Se sappiamo che

fX (1) = 1

3 fX (2) = 3

7

1 Quanto vale fX (3)2 Disegnare il grafico di questa funzione di massa3 Disegnare il grafico della relativa funzione di ripartizione

2 Dimostrare che se X1 e X2 hanno la stessa distribuzione allora

Cov(X1 +X2X1 minusX2) = 0

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 73 88

Esercizi - 2

3 La funzione di ripartizione di X e definita come segue

FX (x) =

⎧⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎨⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎩

0 per x le 0

x2 per 0 le x lt 1

23 per 1 le x lt 2

1112 per 2 le x lt 3

1 per x ge 3

Se ne tracci il graficoQuanto vale P(X gt 12)Quanto vale P(2 le X le 4)Quanto vale P(X le 3)Quanto vale P(X = 1)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 74 88

Esercizi - 3

4 Un tipo di prodotti vengono classificati a seconda dei loro difetti edella fabbrica che li ha prodotti Sia X1 il numero (1 o 2) dellafabbrica e sia X2 il numero di difetti per pezzo (che possono essere da0 a 3) di un prodotto scelto a caso tra la totalita di quelli esistentiLa tabella seguente riporta la funzione di massa di probabilitacongiunta per queste due variabili aleatorie discrete Le righe siriferiscono alla variabile X1 mentre le colonne alla variabile X2

Trova le distribuzioni marginali di X1 e X2Calcola media e varianza di X2

0 1 2 31 18 116 316 182 116 116 18 14

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 75 88

Scipy

Scipy e un modulo che permette di utilizzare varie distribuzioni diprobabilita sia di tipo discreto che continuo

La sintassi generale e la seguente Scipystatsltnome distribuzionegt

rvs(size=z) restituisce un vettore di numeri casuali estrattisecondo la distribuzione di lunghezza z

pdf(x) restituisce il vettore della densita della distribuzionevalutata nei valori del vettore di input x (pmf per le discrete)

cdf(x) restituisce il vettore della funzione di ripartizione (ocumulativa) della distribuzione valutata nei valori del vettore di inputx

ppf(q) restituisce il vettore dei quantili della distribuzione valutatanei valori del vettore di input q

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 76 88

Variabili aleatorie discrete Binomiale

gtgtgt from scipystats import binom

gtgtgt rv = binom(n p)

rvrvs(x) restituisce un vettore di x numeri estratti secondo unadistribuzione Binomiale di parametri n p

rvpmf(x) restituisce la probabilita di ottenere esattamente x

successi in un esperimento dicotomico (01) ripetuto n volte con unaprobabilita di successo p (x puo essere un vettore)

rvcdf(q) restituisce il valore della funzione di ripartizione in q (qpuo essere un vettore)

rvppf(p) restituisce il valore del quantile di ordine p

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 77 88

Variabili aleatorie discrete Ipergeometrica

Supponiamo di avere M = 20 animali di cui n = 7 cani Se vogliamosapere la probabilita di trovare un dato numero di cani se scegliamoN = 12 dei 20 animali in maniera casuale possiamo usare una distribuzioneipergeometrica in questo modo

gtgtgt from scipystats import hypergeom

gtgtgt [M n N] = [20 7 12]

gtgtgt rv = hypergeom(M n N)

rvpmf(x) restituisce la probabilita di estrarre esattamente x cani

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 78 88

Variabili aleatorie discrete Geometrica

gtgtgt from scipystats import geom

gtgtgt rv = geom(p)

rvpmf(x) restituisce la probabilita di avere un successo dopoesattamente x insuccessi in una successione di esperimenti dicotomici(esito 01) con una probabilita di successo p (x puo essere un vettore)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 79 88

Variabili aleatorie discrete Poisson

La distribuzione di Poisson viene usata spesso come modello per il numerodi volte per cui un evento avviene in un dato intervallo di tempo (ospazio) Ad esempio si puo utilizzare per misurare il numero di chiamatericevute da un call center in una mattinata

gtgtgt from scipystats import poisson

gtgtgt mu = 2

gtgtgt rv = poisson(mu)

rvpmf(x) restituisce il seguente valore

f (x) = exp(minusmicro)microx

x

In questo caso x rappresenta il numero di eventi per cui si vuole calcolarela probabilita sapendo che in media ne accadono micro

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 80 88

Variabili aleatorie continue Uniforme

In Scipy la funzione uniforme e soltanto continua Questo significa chenella generazione di numeri casuali otterro dati di tipo float Possiamotuttavia simulare una variabile discreta estraendo la parte intera delrisultato ottenuto

gtgtgt from scipystats import uniform

gtgtgt rv = uniform()

Il comando uniform() crea una distribuzione uniforme nellrsquointervallo[01] Possiamo creare una distribuzione uniforme qualsiasi usandouniform(x y - x) per lrsquointervallo [x y]

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 81 88

Variabili aleatorie continue

norm(mu sigma) variabile Gaussiana (o Normale) di media micro edeviazione standard σ

expon(scale = 1 lambda) variabile Esponenziale di parametroλ

Altre distribuzioni (con relativa documentazione) disponibili suhttpsdocsscipyorgdocscipyreferencestatshtml

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 82 88

Esercizi - 1

1 Unrsquourna contiene 10 palline di cui 4 bianche e 6 nere Si eseguono 5estrazioni con reimmissione

1 Tracciare grafico della funzione massa di probabilita della variabilecasuale X = rdquonumero di palline bianche estratterdquo

2 Calcolare la probabilita di estrarre 2 palline bianche3 Calcolare la probabilita di estrarre al piu 2 palline bianche4 Calcolare la probabilita di estrarre almeno 2 palline bianche5 Qual e il numero minimo x tale che la probabilita di estrarre al piu x

palline bianche sia almeno 08

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 83 88

Esercizi - 2

2 Si eseguono 10 estrazioni senza reimmissione da unrsquourna

1 Tracciare il grafico della funzione massa di probabilita della variabilecasuale X = rdquonumero di palline bianche estratterdquo nei seguenti casi

1 lrsquourna contiene 100 palline di cui 20 bianche e le restanti nere2 lrsquourna contiene 100 palline di cui 2 bianche e le restanti nere

2 Tracciare il grafico della funzione massa di probabilita della variabilecasuale X nel caso dellrsquourna 1 se si eseguono 25 estrazioni

3 Consideriamo lrsquourna 1 e N = 10 estrazioni Si aumenti il numero totaleM di palline nellrsquourna mantenendo uguale a 02 la frazione di pallinebianche Per ciascun valore di M confrontare graficamente ladistribuzione di probabilita del numero di palline bianche estratte nelcaso di estrazioni con e senza reimmissione Provare con 20 40 e 200palline bianche

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 84 88

Esercizi - 3

3 Calcolare la probabilita di ottenere piu teste che croci lanciando 7volte una moneta truccata con probabilita di avere croce pari a 045

4 Calcolare la probabilita di avere almeno 3 sei lanciando 5 dadi a 12facce

5 Calcolare la probabilita di estrarre 20 euro da un sacco contenente 47monete da 1 centesimo e 53 da 2 euro estraendo (uniformemente) acaso 10 monete senza reinserirle

6 Un grammo di uranio emette mediamente 2152 particelle α ognimillisecondo Qual e con buona approssimazione la probabilita che ungrammo di uranio emetta al piu 2000 particelle α in un millisecondo

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 85 88

Esercizi - 4

7 Un uomo si risveglia in mezzo al deserto senza acqua Dopo ogniminuto ha una probabilita del 3 di perdere conoscenza per via dellecondizioni estreme Calcolare la probabilita che lrsquouomo perdaconoscenza dopo almeno due ore e la probabilita che lrsquouomo perdaconoscenza dopo esattamente un quarto drsquoora

8 Sia X una variabile aleatoria normale di parametri micro = 10 e σ = 36Calcola

1 P(X gt 5)2 P(4 le X le 16)3 P(X le 8)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 86 88

Esercizi - 5

9 Il numero di errori tipografici per pagina di una certa rivista segue unadistribuzione di Poisson Sapendo che mediamente sono presenti 02errori per pagina determinare la probabilita che una pagina contenga

1 nessun refuso2 piu refusi

10 Arrivi alla fermata dellrsquoautobus alle 1000 e sei certo che ne passerauno in un momento distribuito uniformemente tra le 1000 e le 1030

1 Qual e la probabilita che tu debba aspettare piu di 10 minuti2 Se alle 1015 lrsquoautobus non e ancora arrivato qual e la probabilita che

tu debba aspettare almeno altri 10 minuti

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 87 88

Esercizi - 6

11 Il signor Jones e convinto che il tempo di vita di una automobile (inmigliaia di chilometri percorse) sia una variabile aleatoria esponenzialedi parametro 120 Il signor Smith ha una macchina usata da vendereche ha percorso circa 10 000 chilometri

1 Se il signor Jones decide di comprarla che probabilita ha di farle farealmeno altri 20 000 chilometri prima che sia da buttare

2 Il modello assunto dal signor Jones e ragionevole

12 Sia X una variabile casuale binomiale di parametri n = 100 e p = 07

1 Tracciate la funzione di ripartizione di X2 Calcolate il primo quartile il quantile di ordine 09 e la mediana di X3 Calcolare la probabilita P(X le 60)4 Calcolare la probabilita P(X le 88)5 Trovare il piu piccolo valore x tale che P(X le x) ge 09

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 88 88

  • Lezione 1
    • Script in Python
    • Numpy
    • Esercizi
    • Pandas
    • Esercizi
      • Lezione 2
        • File csv
        • DataFrame
        • Accesso ai DataFrame
        • Frequenze
        • Esercizi
          • Lezione 3
            • Matplotlib
            • Grafici a Barre
            • Istogrammi
            • Cumulativa empirica
            • Boxplot
            • QQplot
            • Diagramma di Pareto
            • Esercizi
              • Lezione 4
                • Definizioni
                • Probabilitagrave condizionata
                • Indipendenza
                • Esercizi
                  • Lezione 5
                    • Variabili Aleatorie
                    • Funzione di Ripartizione
                    • Funzione di Densitagrave
                    • Valore Atteso
                    • Varianza
                    • Covarianza
                    • Esercizi
                      • Lezione 6
                        • Scipy - Variabili Discrete
                        • Scipy - Variabili continue
                        • Esercizi

Introduzione Python

rdquoPython e un linguaggio di programmazione dinamico orientato aglioggetti utilizzabile per molti tipi di sviluppo softwarerdquo(httpswwwpythonit)

Figurehttpsstackoverflowblog20170906incredible-growth-python

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 3 88

Introduzione installare Python

Mac OS X 102 e successivi includono una versione pre-installata

Nei sistemi Linux spesso e gia presente nel setup di base

Per verificare se Python e gia installato e sufficiente aprire una finestra delterminale e digitare il comando python

Installazione

httpswwwanacondacomdownload (raccomandata)

httpswwwpythonit

Nota la versione che verra utilizzata nel corso e la 3x

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 4 88

Interprete interattivo - 1

Il comando python apre lrsquointerprete interattivo Lrsquointerprete valuta leistruzioni Python inserite a riga di comando e fornisce una risposta

dottorandodottorando-Lenovo-Y50-70 $ python

Python 365 |Anaconda Inc| (default Apr 29 2018

161456)

GCC 720on linux

Type help copyright credits or license for more

information

gtgtgt

gtgtgt print(Hello world)

Hello world

gtgtgt

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 5 88

Interprete interattivo - 2

La funzione exit() e digitata per uscire dallrsquoambiente interprete (o inalternativa ctrl + d cmd + d)

gtgtgt print(Hello world)

Hello world

gtgtgt

dottorandodottorando-Lenovo-Y50-70 $

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 6 88

Script

Usare lrsquointerprete interattivo non e la maniera piu comoda perprogrammareE possibile lanciare un programma python (filepy) eseguendo ilcomando python ltnomefilepygt dalla cartella in cui si trova il filepy

dottorandodottorando-Lenovo-Y50-70 Scrivania$ python

testpy

My first script in Python

dottorandodottorando-Lenovo-Y50-70 Scrivania$

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 7 88

Variabili in Python - 1

Python e dinamicamente tipato e fortemente tipatoUna variabile inizia ad esistere nel momento in cui le viene assegnato unvalore che ne determina il tipo

gtgtgt a=10000

gtgtgt type(a)

lttype lsquointrsquogt

gtgtgt len(a)

Traceback (most recent call last)

File ltstdingt line 1 in ltmodulegt

TypeError object of type rsquointrsquo has no len()

gtgtgt

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 8 88

Variabili in Python - 2

Riferirsi ad una variabile inesistente (a cui non e ancora stato assegnato unvalore) genera un errore

gtgtgt b

Traceback (most recent call last)

File ltstdingt line 1 in ltmodulegt

NameError name rsquobrsquo is not defined

gtgtgt

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 9 88

Funzione Help

Per aprire la documentazione a riguardo di un particolare oggetto metodoo attributo si puo invocare la funzione help(rdquonomerdquo) con il nomedellrsquooggetto che stiamo cercando

gtgtgt help(str)

Help on class str in module builtin

class str(basestring)

| str(object=rsquorsquo) -gt string

|

| Return a nice string representation of the object

| If the argument is a string the return value is the

same object

|

Si esce dal manuale interattivo premendo q

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 10 88

Tipi Predefiniti in Python

Stringhe (str) rdquoquesta e una stringardquo rdquoquesta purerdquo

Dizionari (dict) lsquochiaversquo valoreTuple (tuple) (1 2 3 1 rsquociaorsquo)

Liste (list) [1 2 3 4 rsquopipporsquo]

Set (set) (1 2 3)

Interi (int) 1 2 3

Float (float) 15 314 2718281828459045

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 11 88

Numpy

Il modulo numpy (httpwwwnumpyorg) mette a disposizione unastruttura dati creata appositamente per il calcolo scientifico

ArrayUn array e un contenitore di dati omogenei cioe dello stesso tipo Se sitenta di costruire un array con dati di tipo diverso questi vengonoldquotrasformatirdquo nel piu piccolo tipo adatto a contenerli tutti

gtgtgt import numpy as np

gtgtgt nparray( [146810] )

array([ 1 4 68 10 ])

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 12 88

Creazione di Array - 1

numpyarange(x) restituisce un array contenente gli interi da 0 a x minus 1

gtgtgt numpyarange(5)

array([0 1 2 3 4])

numpyarange(start stop step) permette di scegliere gli estremi dellasequenza contenuta nellrsquoarray e il passo tra un numero ed il successivo

gtgtgt numpyarange(262)

array([2 4])

gtgtgt numpyarange(2-3-1)

array([ 2 1 0 -1 -2])

numpylinspace(start stop n) permette di scegliere gli estremi e quantinumeri devono comparire allrsquointerno della sequenza

gtgtgt numpylinspace(014)

array)[0 03333333 066666667 1])

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 13 88

Creazione di Array - 2

numpyones(rdquotuplardquo) restuituisce un array di 1 date le dimensionispecificate nella tupla come argomento

gtgtgt numpyones( (15) )

array([1 1 1 1 1])

numpyzeros(rdquotuplardquo) restuituisce un array di 0 date le dimensionispecificate nella tupla come argomento

gtgtgt numpyzeros( (25) )

array([[0 0 0 0 0] [0 0 0

0 0]])

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 14 88

Operazioni con Array

Applicando un operazione logica ad un array si ottiene come risposta unarray di tipo booleano contenente nella posizione i-esima il risultatodellrsquoespressione logica valutata per lrsquoelemento i-esimo dellrsquoarray

gtgtgt numpyarange(5) gt 3

array([False False False False True] dtype=bool)

Le operazioni + - tra due array vengono eseguite elemento perelemento (gli array devono avere le stesse dimensioni)

gtgtgt numpyarange(5) + numpylinspace(025)

array([ 0 15 3 45 6 ])

gtgtgt numpyarange(5) 2

array([0 2 4 6 8])

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 15 88

Selezioni di un sottoinsieme di elementi

Ad un array e possibile accedere in tutti i modi con cui e possibile accederead una lista ad esempio

Ottenere una tupla di elementi

gtgtgt a[2] a[-1] a[36]

(2 9 array([3 4 5]))

Slicing [startstopstep]

gtgtgt a[293]

array([2 5 8])

gtgtgt a[2]

array([0 2 4 6 8])

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 16 88

Accesso con maschere booleane

Specificando tra [ ] un array di tipo booleano selezioniamo dallrsquoarray glielementi la cui posizione corrisponde ad un True nellrsquoarray di tipobooleano (che prende il nome di maschera)

gtgtgt a = numpyarange(10)

gtgtgt mask = a2 == 0

gtgtgt mask

array([ True False True False True False True

False True False] dtype=bool)

gtgtgt a[mask]

array([0 2 4 6 8])

o in maniera piu compatta

gtgtgt a[a2 == 0]

array([0 2 4 6 8])

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 17 88

Esercizi

1 Lanciare uno script che stampi il vostro nome e cognome

2 Creare un array i cui elementi siano gli interi che compongono ilvostro numero di matricola

3 Sia X la lunghezza dellrsquoarray del punto precedente Creare un array diX elementi equispaziati lrsquouno dallrsquoaltro di 15

4 Creare un array di X elementi equispaziati nellrsquointervallo tra 1 e 3

5 Ottenere gli array dati dalla somma tra lrsquoarray del punto 2 e quello delpunto 3 e quello dato dalla moltiplicazione tra punto 3 e punto 4

6 Ottenere per ciascuno dei due array del punto 5 un array mascherache in corrispondenza dei numeri divisibili per 3 abbia True Falsealtrimenti

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 18 88

Pandas - Series (1)

Pandas (httpspandaspydataorg) e una libreria Python chefornisce strutture dati e strumenti relativi esclusivamente allrsquoanalisi deidatiUna Series e un array monodimensionale ed etichettato Rappresenta unaserie di osservazioni di un certo carattere fatto su un insieme di individui

a 00

b 10

c 20

d 30

e 40

f 50

g 60

h 70

Name serie di esempio dtype float64

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 19 88

Pandas - Series (2)

pandasSeries (data index dtype name )

data contiene i dati che si vuole inserire nella serie

index della stessa lunghezza di data contiene le etichette

dtype permette di specificare il tipo che i dati devono assumere

name permette di dare un nome alla Series

gtgtgt import pandas as pd

gtgtgt import numpy as np

gtgtgt oss = nparange(8)

gtgtgt etic = [rsquoarsquorsquobrsquorsquocrsquorsquodrsquorsquoersquorsquofrsquorsquogrsquorsquohrsquo]

gtgtgt pdSeries(data=oss index=etic name=rsquoserie di esempiorsquo

dtype=float)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 20 88

Accesso ai dati di una Series

Specificando un valore (o una lista di valori) per lrsquoetichetta

gtgtgt sloc[[rsquohrsquorsquoarsquo]]

h 70

a 00

Specificando un valore (o una lista di valori) per la posizione

gtgtgt s[[56]]

f 50

g 60

Usando lo slicing (come per gli array numpy) per la posizione

gtgtgt s[36]

d 30

e 40

f 50

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 21 88

Pandas Series - Utils

Seriesmin() Seriesmax() restituiscono rispettivamente il minimoed massimo tra i valori della Series

Seriessum() restituisce la somma dei valori della Series

Seriessort values() restituisce una copia della Series ordinata pervalore

Seriessort index() restituisce una copia della Series ordinata peretichette

Seriessample(n) restituisce una Series di n elementi sceltiuniformemente a caso allrsquointerno di quelli della Series

Seriesappend([s1s2]) concatena una o piu Series a quella dipartenza

Seriescount() restituisce il numero dei valori della Series che nonsiano il valore NaN

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 22 88

Il valore NaN

Nan un oggetto del modulo numpy che puo rappresentare in una Seriesun dato di cui non e stato possibile fare unrsquoosservazioneOperazioni con un valore Nan hanno come risultato il valore Nan

gtgtgt oss = range(5)

gtgtgt ossappend(None)

gtgtgt pandasSeries(oss)

0 00

1 10

2 20

3 30

4 40

5 NaN

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 23 88

Esercizi

Creare la Series gol in modo che le etichette siano numeri dallrsquo1 al 23 Idati raccolti siano numeri interi tra 0 e 30 scelti casualmente (scarica ilnotebook) La Series rappresenta i gol segnati da ciascun giocatore diuna societa calcistica nella stagione appena passata Lrsquoetichettacorrisponde al numero di maglia del giocatore Ottenere

1 I gol segnati dal capocannoniere2 Chi non ha mai fatto gol durante lrsquoanno3 La statistica del punto 2 per i soli titolari (numeri dallrsquo1 allrsquo11) e per

le sole riserve (dal 12 al 23)4 La statistica del punto 2 per i soli attaccanti (numeri dalrsquo9 allrsquo11)5 I gol segnati dai giocatori coi numeri di maglia 5 9 10 14 (somma)6 Chi ha segnato piu di 10 gol e chi ha segnato esattamente 10 gol7 Una copia della Series ordinata secondo i gol effettuati8 Una stampa dei primi 5 cannonieri e degli ultimi 59 Una copia della Series ordinata in modo discendente secondo il

numero di maglia

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 24 88

File csv

Il formato csv (comma-separated value) e un formato utilizzato perrappresentare una tabella di dati e favorirne lrsquoimportazione e lrsquoesportazioneUn file csv e scritto nella seguente forma

titolopaeseannoduratagenerevoto

Guerre StellariUSA1977121Fantascienza4

Lrsquoimpero colpisce ancoraUSA1980124Fantascienza4

Il ritorno dello JediUSA1983Fantascienza35

Profondo RossoITA1975Horror35

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 25 88

Leggere csv

La funzione read csv() di Pandas puo essere utilizzata per leggere unfile di formato csv Tra i vari parametri che passiamo in input unoparticolarmente importante e sep che indica il carattere utilizzato perseparare le colonne (default e rsquorsquo)

gtgtgt df film = pdread csv(rsquofilmcsvrsquo)

gtgtgt df film

titolo paese anno durata genere voto

Il padrino USA 19720 1750 Drammatico 45

Pulp Fiction USA 19940 1540 Drammatico 40

Fight Club USA 19990 1390 Thriller 40

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 26 88

DataFrame

In Pandas un DataFrame e una struttura dati tabulare con assi etichettatile cui colonne possono contenere dati eterogenei da colonna a colonna

gtgtgt dataframe

esempio

Nome Cognome Eta Citta

Tommaso Rossi 300 Milano

Sergio Bianchi 340 Roma

Pasquale Verdi 290 Palermo

Antonio Gialli 300 Roma

Il DataFrame puo essere visto come un insieme di serie aventi lo stessoindice accostate una allrsquoaltra

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 27 88

Accesso colonne DataFrame - 1

Per conoscere le colonne di un DataFrame possiamo invocare il comandodfcolumns dove df e la variabile in cui abbiamo instanziato ilDataFramePer accedere ad una colonna dobbiamo specificarne il nome nel seguentemodo

gtgtgt df film[rsquogenerersquo]

titolo

Il padrino Drammatico

Pulp Fiction Drammatico

Fight Club Thriller

Selezionando unrsquounica colonna in output viene restituita una Series

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 28 88

Accesso colonne DataFrame - 2

Possiamo accedere allo stesso tempo a piu colonne

gtgtgt df film[[rsquopaesersquorsquoannorsquo]]

titolo paese anno

Il padrino USA 19720

Pulp Fiction USA 19940

Fight Club USA 19990

Selezionando piu colonne in output viene restituito un DataFrame

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 29 88

Accesso righe DataFrame - 1

Per indice numerico

gtgtgt df film[1518]

titolo paese anno durata genere voto

Il padrino USA 19720 1750 Drammatico 45

Pulp Fiction USA 19940 1540 Drammatico 40

Fight Club USA 19990 1390 Thriller 40

Quasi Amici FRA 20110 1120 Commedia 35

Per valore dellrsquoindice (assumiamo che titolo sia lrsquoindice delDataFrame)

gtgtgt df film[rsquoIl padrinorsquorsquoFight Clubrsquo]

titolo paese anno durata genere voto

Il padrino USA 19720 1750 Drammatico 45

Pulp Fiction USA 19940 1540 Drammatico 40

Fight Club USA 19990 1390 Thriller 40

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 30 88

loc amp iloc

Cosı come per le Series anche con i DataFrame possiamo usare loc ediloc per lrsquoaccesso ai dati

loc[rsquonome indicersquo] permette lrsquoaccesso ad una riga o piu righetramite nome dellrsquoindice

iloc[rsquoposizionersquo] permette lrsquoaccesso ad una o piu righe tramitela loro posizione

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 31 88

Accesso tramite unrsquoespressione logica

gtgtgt df film[rsquoannorsquo gt 1998]

titolo

Il padrino False

Pulp Fiction False

Fight Club True

Quasi Amici True

gtgtgt df film[df film[rsquoannorsquo] gt 1998]

titolo paese anno durata genere voto

Fight Club USA 19990 1390 Thriller 40

Quasi Amici FRA 20110 1120 Commedia 35

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 32 88

Metodi dei DataFrame

La classe DataFrame ha diversi metodi Elenchiamo qui i piu importanti

DataFrameappend() permette di estendere il DataFrame

DataFramedrop duplicates() restituisce un DataFrame senza righeduplicate

DataFramedropna() Eliminare i valori Nan da un DataFrame

DataFramesort values() permette di ordinare il DataFrame

DataFramemax() DataFramemin() DataFramemean()DataFramemedian()

Per la completa documentazione si puo utilizzare il comandohelp(pdDataFrame) oppure andare al seguente linkhttpspandaspydataorgpandas-docsstablegenerated

pandasDataFramehtml

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 33 88

Frequenze

La frequenza assoluta indica il numero di volte che una dataosservazione occorre in un campione

La frequenza relativa e un valore tra 0 e 1 che permette di valutare inmaniera piu efficace la frequenza di un osservazione Si calcoladividendo la frequenza assoluta per il numero totale di casi

Per calcolare questa quantita in Pandas possiamo utilizzare la funzionevalue counts() che opera su una Series

In alternativa si puo utilizzare la funzione pdcrosstab che calcolaqueste frequenze in automatico restituendole in output in un DataFrame

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 34 88

Esercizi

Utilizzando il file dati-ospedalicsv dai csv del laboratorio

1 Leggere il file e visualizzarlo in un DataFrame

2 Calcolare le frequenze assolute e relative dellrsquoattributo Regioneusando crosstab

3 Ottenere la singola serie relativa allrsquoattributo Regione e calcolarne lafrequenza assoluta e relativa senza usare crosstab

4 Estrarre un sottodataframe contenente le colonne Nome (attributoDenominazione Str Pubblica New) e Numero di medici (attributoMedici SSN) degli ospedali aventi meno di 200 medici

5 Visualizzare il nome degli ospedali della regione Lombardia

6 Calcolare il numero medio di ingegneri (Ingegneri SSN) presenti negliospedali campani

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 35 88

Esercizi

7 Calcolare la varianza del numero di assistenti sociali (Assistenti socialiSSN) negli ospedali con piu di 400 medici

8 Qual e lrsquoospedale con meno medici

9 Visualizzare in ordine alfabetico il nome dei primi 10 ospedali pernumero di medici

10 Visualizzare il numero degli ospedali che hanno dichiarato il numerodi odontoiatri (per cui il valore e diverso da NaN) (OdontoiatriUniversitari)

11 Visualizzare il numero degli ospedali che hanno dichiarato il numerodi odontoiatri (Odontoiatri Universitari) e per cui questo numero emaggiore di 0

12 Calcolare le frequenze assolute per lrsquoattributo Odontoiatri SSNTrasformare questo risultato in frequenze relative

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 36 88

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) SAD 20182019 January 12 2019 37 88

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) SAD 20182019 January 12 2019 38 88

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) SAD 20182019 January 12 2019 39 88

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) SAD 20182019 January 12 2019 40 88

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) SAD 20182019 January 12 2019 41 88

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) SAD 20182019 January 12 2019 42 88

Grafici con le Series

In generale possiamo tracciare diversi tipi di grafici con le Series

rsquolinersquo line plot (default)

rsquobarrsquo vertical bar plot

rsquobarhrsquo horizontal bar plot

rsquohistrsquo histogram

rsquoboxrsquo boxplot

rsquokdersquo Kernel Density Estimation plot

rsquodensityrsquo same as rsquokdersquo

rsquoarearsquo area plot

rsquopiersquo pie plot

Per saperne di piu consultare questo link

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 43 88

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) SAD 20182019 January 12 2019 44 88

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) SAD 20182019 January 12 2019 45 88

Boxplot

Rappresenta la distribuzione di un vettore di numeri cerchiando gli outlier

gtgtgt weight = heroes[rsquoWeightrsquo]

gtgtgt weightplotbox()

gtgtgt pltshow()

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 46 88

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) SAD 20182019 January 12 2019 47 88

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) SAD 20182019 January 12 2019 48 88

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) SAD 20182019 January 12 2019 49 88

Esercizi - 1

Utilizzando il file capellicsv dai csv del laboratorio

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) SAD 20182019 January 12 2019 50 88

Esercizi - 2

Utilizzando il file dati-ospedalicsv dai csv del laboratorio

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 e canipdf

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 51 88

Sample space

Un esperimento e qualsiasi processo che produce una realizzazione (oosservazione) Lrsquoinsieme di tutte le possibili realizzazioni di un esperimentoviene detto sample space ed indicato con S

lancio di 2 monete

S = (T T ) (T C) (C T ) (C C)

gara di 3 cavalli (ab c)

S = tutti i possibili ordinamenti di(ab c)= (ab c) (a cb) (c b a)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 52 88

Eventi

lancio di 2 monete

S = (T T ) (T C) (C T ) (C C)

A = 2 monete uguali

A = (T T ) (C C)

B = 2 monete diverse

B = Ac = (T C) (C T )

gara di 3 cavalli

A = cavallo a vincente

A = (ab c) (a c b)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 53 88

Probabilita - 1

Consideriamo un esperimento con sample space S Supponiamo che adogni evento A sia associato un numero chiamato probabilita di A edindicato con P(A) che soddisfa le seguenti proprieta

1 Per ogni evento A la probabilita di A e un numero tra 0 e 1

0 le P(A) le 1

2 La probabilita del sample space S e 1

P(S) = 1

3 La probabilita dellrsquounione di eventi disgiunti e uguale alla somma delleprobabilita di tali eventi

P(A cupB) = P(A) + P(B)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 54 88

Probabilita - 2

In generale 2 eventi potrebbero non essere disgiunti

P(A cupB) = P(A) + P(B) minus P(A capB)

Esempio un certo negozio accetta pagamenti o con carte di credito VISAo Mastercard

1 22 dei clienti ha Mastercard

2 58 dei clienti ha VISA

3 14 dei clienti ha entrambe

Qual e la probabilita che un cliente ha almeno una delle 2 carte

P(A) = 022 P(B) = 058

P(A cupB) = P(A) + P(B) minus P(A capB) = 022 + 058 minus 014 = 066

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 55 88

Probabilita condizionata - 1

Se alcune informazioni riguardo lrsquoesito di un esperimento sono disponibiliparliamo di probabilita condizionata

Esempio lancio di 2 dadi

S = (11) (12) (65) (66)

Probabilita che la somma sia 10 (evento B) sapendo che il primo dadomostra 4 (evento A)

(41) (42) (43) (44) (45) (46)

P(B ∣A) = 16

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 56 88

Probabilita condizionata - 2

In generale

P(B ∣A) = P(A capB)P(A)

Supponiamo lrsquoesito sia in A

Per essere anche in B deve essere in entrambi A e B cioe in A capB

Sapendo che A e gia accaduto il nostro nuovo sample space diventa A

la probabilita di A capB viene calcolata rispetto ad A

Nel caso dei dadi

P(B ∣A) = P((46))P((41) (42) (43) (44) (45) (46)) = 136

16= 1

6

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 57 88

Indipendenza

In generale sapere che A e accaduto modifica le chance che B accadaNel caso cio non avvenga cioe se P(B ∣A) = P(B) allora i 2 eventi sidicono indipendenti In questo caso sapere che A e accaduto nonaggiunge alcuna informazione

SiccomeP(A capB) = P(B ∣A)P(A)

Abbiamo che B e indipendente da A se

P(A capB) = P(B)P(A)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 58 88

Esercizi - 1

1 Svolgere gli esercizi di combinatoria

2 Si consideri il seguente esperimento casuale rdquosi lancia tre volte unamonetardquo Qual e lo spazio degli esiti di questo esperimento casualeSi scriva esplicitamente lrsquoevento rdquosi ottengono piu teste che crocirdquo

3 Si consideri il seguente esperimento casuale rdquoSi tirano due dadirdquo Siconsiderino gli eventi E = rdquola somma dei punteggi e disparirdquo F = rdquoilprimo dado realizza un 1rdquo e G = rdquola somma dei punteggi e 5rdquo Sidescrivano gli eventi E cap F E cup F F capG E cap F c e E cap F capG

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 59 88

Esercizi - 2

4 Si consideri il seguente esperimento casuale rdquoUn sistema e compostoda 4 componenti ciascuno dei quali o funziona oppure e guasto Siosserva lo stato dei componenti ottenendo un vettore (x1 x2 x3 x4)dove xi e 1 oppure 0 a seconda che il componente i-esimo funzionioppure nordquo

1 Da quanti elementi e formato lo spazio degli esiti2 Il sistema nel suo insieme funziona fintantoche entrambi i componenti

1 e 2 oppure entrambi i componenti 3 e 4 funzionano Specifica tuttigli esiti dellrsquoevento il rdquosistema funzionardquo

3 Sia E lrsquoevento rdquoi componenti 1 e 3 sono guastirdquo Quanti esiti contiene

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 60 88

Esercizi - 3

5 Si dimostri che in uno spazio degli esiti Ω dotato di una probabilita Pper ogni evento E F sub Ω vale la disuguaglianza seguente

P(E cap F ) ge P(E) + P(F ) minus 1

6 Un gruppo di 5 bambini e 10 bambine e in fila in ordine casuale nelsenso che tutte le 15 possibili permutazioni si suppongonoequiprobabili

1 Qual e la probabilita che il quarto della fila sia un bambino2 E il dodicesimo3 Qual e la probabilita che un determinato bambino occupi la terza

posizione

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 61 88

Esercizi - 4

7 In un comune vi sono 5 alberghi Se 3 persone devono scegliere unalbergo in cui pernottare qual e la probabilita che finiscano tutte inalberghi differenti Che cosa stiamo assumendo senza dirloesplicitamente

8 La media del salario annuale di un gruppo di 100 lavoratori impiegatinellrsquoamministrazione di una grande azienda e di 130000 dollari conuna deviazione standard di 20000 dollari Se si prende una persona acaso da questo gruppo cosa possiamo dire sulla probabilita che il suosalario sia

1 tra i 90000 e i 170000 dollari2 superiore a 150000 dollari

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 62 88

Esercizi - 5

9 In una certa regione vi sono due ditte che producono forni amicroonde Quelli della fabbrica A sono difettosi con probabilita 005mentre quelli della fabbrica B con probabilita 001 Supponi di averacquistato due apparecchi prodotti dalla stessa ditta che puo essere laA o la B con probabilita del 50 Se il primo microonde e difettosoqual e la probabilita condizionata che sia difettoso anche il secondo

10 Hai chiesto ad un vicino di innaffiare una piantina delicata mentre seiin vacanza Pensi che senza acqua la piantina muoia con probabilita08 mentre se innaffiata questa probabilita si ridurrebbe a 015 Latua fiducia che il vicino si ricordi di innaffiarla e del 90

1 Qual e la probabilita che la pianta sia ancora viva al tuo ritorno2 Se fosse morta quale sarebbe la probabilita che il vicino si sia

dimenticato di innaffiarla

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 63 88

Esercizi - 6

11 Una compagnia di assicurazioni classifica i suoi clienti in tre fascebasso rischio medio rischio alto rischio Le sue statistiche indicanoche le probabilita che un cliente delle tre fasce abbia un incidenteentro un periodo di un anno sono rispettivamente 005 015 e 030Se il 20 dei clienti sono a basso rischio il 50 a medio rischio e il30 ad alto rischio che percentuale dei clienti avra mediamenteincidenti in un lasso di un anno Se un cliente non ha avuto incidentinel 1987 qual e la probabilita che appartenga a ciascuna delle trefasce

12 Se un votante scelto a caso e favorevole ad una certa riforma conprobabilita di 07 qual e la probabilita che su 10 votanti esattamente7 siano favorevoli

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 64 88

Variabili aleatorie

Una variabile aleatoria (o anche variabile aleatoria) e una variabile chepuo assumere valori diversi in dipendenza da qualche fenomeno aleatorio

fenomeno lancio di 2 dadivariabile aleatoria somma dei 2 dadi

fenomeno 3 lanci di una monetavariabile aleatoria numero di rdquotesterdquo complessivo

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 65 88

Funzione di Ripartizione

Sia X una variabile aleatoria Si chiama funzione di ripartizione di X lafunzione F che associa ad ogni numero reale a la probabilita che X siaminore o uguale ad a cioe P(X le a) = FX (a)

Nel caso della moneta (fair) lanciata 3 volte (X indica il numero di testecomplessivo)

FX (a) =

⎧⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎨⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎩

0 if a lt 0

18 per 0 le a lt 1

18 + 38 = 48 per 1 le a lt 2

48 + 38 = 78 per 2 le a lt 3

88 = 1 per a ge 3

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 66 88

Funzione di densita o di massa

Sia X una variabile aleatoria Si chiama funzione di densita di X lafunzione f che associa ad ogni numero reale a la probabilita che X siauguale ad a indicata con fX (a)

Nel caso della moneta (fair) lanciata 3 volte (X indica il numero di testecomplessivo)

fX (a) =

⎧⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎨⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎩

18 per a = 0

38 per a = 1

38 per a = 2

18 per a = 3

0 altrimenti

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 67 88

Valore Atteso

Chiamato anche media (expectation in inglese) e appunto una mediapesata dei possibili valori di una variabile aleatoria Il peso dato a ciascunvalore e la probabilita data a quello specifico valore

E[X ] =sumi

aiP(X = ai)

Esempio dado truccato

valore 6 con probabilita 712

valori da 1 a 5 con probabilita 112

La variabile aleatoria X indica la faccia risultante dal lancio di un dado

E[X ] = 1

12lowast 1 + 1

12lowast 2 + 1

12lowast 3 + 1

12lowast 4 + 1

12lowast 5 + 7

12lowast 6 = 475

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 68 88

Valore Atteso - Proprieta

Sia X una variabile aleatoria con valore atteso E[X ] Se c e una costanteallora anche cX e X + c sono variabili casuali In particolare valgono leseguenti proprieta

E[cX ] = cE[X ]E[X + c] = E[X ] + c

Sia Y una variabile aleatoria Allora

E[X +Y ] = E[X ] +E[Y ]se e solo se X e Y sono independenti

E[XY ] = E[X ]E[Y ]

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 69 88

Varianza

Ersquo il valore atteso del quadrato della differenza tra la variabile aleatoria e ilsuo valore atteso

Var(X ) = E[(X minusE[X ])2] = E[X 2] minus (E[X ])2

La radice quadrata viene detta deviazione standard di X

Esempio dado truccato

E[X 2] = 1

12lowast 12 + 1

12lowast 22 + 1

12lowast 32 + 1

12lowast 42 + 1

12lowast 52 + 7

12lowast 62 ≃ 255

Var(X ) = E[X 2] minus (E[X ])2 ≃ 255 minus 4752 ≃ 3

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 70 88

Varianza - proprieta

Sia X una variabile aleatoria e c una costante Allora valgono le seguentiproprieta

1 Var(cX ) = c2Var(X )

2 Var(X + c) = Var(X )

NOTA

Var(X +X ) ne Var(X ) +Var(X )

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 71 88

Covarianza

Siano X Y due variabili aleatorie con valore atteso rispettivamenteE[X ] = microX e E[Y ] = microY La covarianza e definita come segue

Cov(X Y ) = E[(X minus microX )(Y minus microY )] = = E[XY ] minus microXmicroY

Proprieta

1 Cov(X Y ) = Cov(Y X )2 Cov(X X ) = Var(X )3 Sia a una costante allora

Cov(aX Y ) = aCov(X Y )

4 Sia Z una variabile aleatoria allora

Cov(X + Z Y ) = Cov(X Y ) + Cov(Z Y )

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 72 88

Esercizi - 1

1 Consideriamo una variabile aleatoria X che puo assumere i valori 12o 3 Se sappiamo che

fX (1) = 1

3 fX (2) = 3

7

1 Quanto vale fX (3)2 Disegnare il grafico di questa funzione di massa3 Disegnare il grafico della relativa funzione di ripartizione

2 Dimostrare che se X1 e X2 hanno la stessa distribuzione allora

Cov(X1 +X2X1 minusX2) = 0

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 73 88

Esercizi - 2

3 La funzione di ripartizione di X e definita come segue

FX (x) =

⎧⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎨⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎩

0 per x le 0

x2 per 0 le x lt 1

23 per 1 le x lt 2

1112 per 2 le x lt 3

1 per x ge 3

Se ne tracci il graficoQuanto vale P(X gt 12)Quanto vale P(2 le X le 4)Quanto vale P(X le 3)Quanto vale P(X = 1)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 74 88

Esercizi - 3

4 Un tipo di prodotti vengono classificati a seconda dei loro difetti edella fabbrica che li ha prodotti Sia X1 il numero (1 o 2) dellafabbrica e sia X2 il numero di difetti per pezzo (che possono essere da0 a 3) di un prodotto scelto a caso tra la totalita di quelli esistentiLa tabella seguente riporta la funzione di massa di probabilitacongiunta per queste due variabili aleatorie discrete Le righe siriferiscono alla variabile X1 mentre le colonne alla variabile X2

Trova le distribuzioni marginali di X1 e X2Calcola media e varianza di X2

0 1 2 31 18 116 316 182 116 116 18 14

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 75 88

Scipy

Scipy e un modulo che permette di utilizzare varie distribuzioni diprobabilita sia di tipo discreto che continuo

La sintassi generale e la seguente Scipystatsltnome distribuzionegt

rvs(size=z) restituisce un vettore di numeri casuali estrattisecondo la distribuzione di lunghezza z

pdf(x) restituisce il vettore della densita della distribuzionevalutata nei valori del vettore di input x (pmf per le discrete)

cdf(x) restituisce il vettore della funzione di ripartizione (ocumulativa) della distribuzione valutata nei valori del vettore di inputx

ppf(q) restituisce il vettore dei quantili della distribuzione valutatanei valori del vettore di input q

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 76 88

Variabili aleatorie discrete Binomiale

gtgtgt from scipystats import binom

gtgtgt rv = binom(n p)

rvrvs(x) restituisce un vettore di x numeri estratti secondo unadistribuzione Binomiale di parametri n p

rvpmf(x) restituisce la probabilita di ottenere esattamente x

successi in un esperimento dicotomico (01) ripetuto n volte con unaprobabilita di successo p (x puo essere un vettore)

rvcdf(q) restituisce il valore della funzione di ripartizione in q (qpuo essere un vettore)

rvppf(p) restituisce il valore del quantile di ordine p

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 77 88

Variabili aleatorie discrete Ipergeometrica

Supponiamo di avere M = 20 animali di cui n = 7 cani Se vogliamosapere la probabilita di trovare un dato numero di cani se scegliamoN = 12 dei 20 animali in maniera casuale possiamo usare una distribuzioneipergeometrica in questo modo

gtgtgt from scipystats import hypergeom

gtgtgt [M n N] = [20 7 12]

gtgtgt rv = hypergeom(M n N)

rvpmf(x) restituisce la probabilita di estrarre esattamente x cani

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 78 88

Variabili aleatorie discrete Geometrica

gtgtgt from scipystats import geom

gtgtgt rv = geom(p)

rvpmf(x) restituisce la probabilita di avere un successo dopoesattamente x insuccessi in una successione di esperimenti dicotomici(esito 01) con una probabilita di successo p (x puo essere un vettore)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 79 88

Variabili aleatorie discrete Poisson

La distribuzione di Poisson viene usata spesso come modello per il numerodi volte per cui un evento avviene in un dato intervallo di tempo (ospazio) Ad esempio si puo utilizzare per misurare il numero di chiamatericevute da un call center in una mattinata

gtgtgt from scipystats import poisson

gtgtgt mu = 2

gtgtgt rv = poisson(mu)

rvpmf(x) restituisce il seguente valore

f (x) = exp(minusmicro)microx

x

In questo caso x rappresenta il numero di eventi per cui si vuole calcolarela probabilita sapendo che in media ne accadono micro

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 80 88

Variabili aleatorie continue Uniforme

In Scipy la funzione uniforme e soltanto continua Questo significa chenella generazione di numeri casuali otterro dati di tipo float Possiamotuttavia simulare una variabile discreta estraendo la parte intera delrisultato ottenuto

gtgtgt from scipystats import uniform

gtgtgt rv = uniform()

Il comando uniform() crea una distribuzione uniforme nellrsquointervallo[01] Possiamo creare una distribuzione uniforme qualsiasi usandouniform(x y - x) per lrsquointervallo [x y]

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 81 88

Variabili aleatorie continue

norm(mu sigma) variabile Gaussiana (o Normale) di media micro edeviazione standard σ

expon(scale = 1 lambda) variabile Esponenziale di parametroλ

Altre distribuzioni (con relativa documentazione) disponibili suhttpsdocsscipyorgdocscipyreferencestatshtml

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 82 88

Esercizi - 1

1 Unrsquourna contiene 10 palline di cui 4 bianche e 6 nere Si eseguono 5estrazioni con reimmissione

1 Tracciare grafico della funzione massa di probabilita della variabilecasuale X = rdquonumero di palline bianche estratterdquo

2 Calcolare la probabilita di estrarre 2 palline bianche3 Calcolare la probabilita di estrarre al piu 2 palline bianche4 Calcolare la probabilita di estrarre almeno 2 palline bianche5 Qual e il numero minimo x tale che la probabilita di estrarre al piu x

palline bianche sia almeno 08

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 83 88

Esercizi - 2

2 Si eseguono 10 estrazioni senza reimmissione da unrsquourna

1 Tracciare il grafico della funzione massa di probabilita della variabilecasuale X = rdquonumero di palline bianche estratterdquo nei seguenti casi

1 lrsquourna contiene 100 palline di cui 20 bianche e le restanti nere2 lrsquourna contiene 100 palline di cui 2 bianche e le restanti nere

2 Tracciare il grafico della funzione massa di probabilita della variabilecasuale X nel caso dellrsquourna 1 se si eseguono 25 estrazioni

3 Consideriamo lrsquourna 1 e N = 10 estrazioni Si aumenti il numero totaleM di palline nellrsquourna mantenendo uguale a 02 la frazione di pallinebianche Per ciascun valore di M confrontare graficamente ladistribuzione di probabilita del numero di palline bianche estratte nelcaso di estrazioni con e senza reimmissione Provare con 20 40 e 200palline bianche

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 84 88

Esercizi - 3

3 Calcolare la probabilita di ottenere piu teste che croci lanciando 7volte una moneta truccata con probabilita di avere croce pari a 045

4 Calcolare la probabilita di avere almeno 3 sei lanciando 5 dadi a 12facce

5 Calcolare la probabilita di estrarre 20 euro da un sacco contenente 47monete da 1 centesimo e 53 da 2 euro estraendo (uniformemente) acaso 10 monete senza reinserirle

6 Un grammo di uranio emette mediamente 2152 particelle α ognimillisecondo Qual e con buona approssimazione la probabilita che ungrammo di uranio emetta al piu 2000 particelle α in un millisecondo

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 85 88

Esercizi - 4

7 Un uomo si risveglia in mezzo al deserto senza acqua Dopo ogniminuto ha una probabilita del 3 di perdere conoscenza per via dellecondizioni estreme Calcolare la probabilita che lrsquouomo perdaconoscenza dopo almeno due ore e la probabilita che lrsquouomo perdaconoscenza dopo esattamente un quarto drsquoora

8 Sia X una variabile aleatoria normale di parametri micro = 10 e σ = 36Calcola

1 P(X gt 5)2 P(4 le X le 16)3 P(X le 8)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 86 88

Esercizi - 5

9 Il numero di errori tipografici per pagina di una certa rivista segue unadistribuzione di Poisson Sapendo che mediamente sono presenti 02errori per pagina determinare la probabilita che una pagina contenga

1 nessun refuso2 piu refusi

10 Arrivi alla fermata dellrsquoautobus alle 1000 e sei certo che ne passerauno in un momento distribuito uniformemente tra le 1000 e le 1030

1 Qual e la probabilita che tu debba aspettare piu di 10 minuti2 Se alle 1015 lrsquoautobus non e ancora arrivato qual e la probabilita che

tu debba aspettare almeno altri 10 minuti

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 87 88

Esercizi - 6

11 Il signor Jones e convinto che il tempo di vita di una automobile (inmigliaia di chilometri percorse) sia una variabile aleatoria esponenzialedi parametro 120 Il signor Smith ha una macchina usata da vendereche ha percorso circa 10 000 chilometri

1 Se il signor Jones decide di comprarla che probabilita ha di farle farealmeno altri 20 000 chilometri prima che sia da buttare

2 Il modello assunto dal signor Jones e ragionevole

12 Sia X una variabile casuale binomiale di parametri n = 100 e p = 07

1 Tracciate la funzione di ripartizione di X2 Calcolate il primo quartile il quantile di ordine 09 e la mediana di X3 Calcolare la probabilita P(X le 60)4 Calcolare la probabilita P(X le 88)5 Trovare il piu piccolo valore x tale che P(X le x) ge 09

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 88 88

  • Lezione 1
    • Script in Python
    • Numpy
    • Esercizi
    • Pandas
    • Esercizi
      • Lezione 2
        • File csv
        • DataFrame
        • Accesso ai DataFrame
        • Frequenze
        • Esercizi
          • Lezione 3
            • Matplotlib
            • Grafici a Barre
            • Istogrammi
            • Cumulativa empirica
            • Boxplot
            • QQplot
            • Diagramma di Pareto
            • Esercizi
              • Lezione 4
                • Definizioni
                • Probabilitagrave condizionata
                • Indipendenza
                • Esercizi
                  • Lezione 5
                    • Variabili Aleatorie
                    • Funzione di Ripartizione
                    • Funzione di Densitagrave
                    • Valore Atteso
                    • Varianza
                    • Covarianza
                    • Esercizi
                      • Lezione 6
                        • Scipy - Variabili Discrete
                        • Scipy - Variabili continue
                        • Esercizi

Introduzione installare Python

Mac OS X 102 e successivi includono una versione pre-installata

Nei sistemi Linux spesso e gia presente nel setup di base

Per verificare se Python e gia installato e sufficiente aprire una finestra delterminale e digitare il comando python

Installazione

httpswwwanacondacomdownload (raccomandata)

httpswwwpythonit

Nota la versione che verra utilizzata nel corso e la 3x

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 4 88

Interprete interattivo - 1

Il comando python apre lrsquointerprete interattivo Lrsquointerprete valuta leistruzioni Python inserite a riga di comando e fornisce una risposta

dottorandodottorando-Lenovo-Y50-70 $ python

Python 365 |Anaconda Inc| (default Apr 29 2018

161456)

GCC 720on linux

Type help copyright credits or license for more

information

gtgtgt

gtgtgt print(Hello world)

Hello world

gtgtgt

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 5 88

Interprete interattivo - 2

La funzione exit() e digitata per uscire dallrsquoambiente interprete (o inalternativa ctrl + d cmd + d)

gtgtgt print(Hello world)

Hello world

gtgtgt

dottorandodottorando-Lenovo-Y50-70 $

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 6 88

Script

Usare lrsquointerprete interattivo non e la maniera piu comoda perprogrammareE possibile lanciare un programma python (filepy) eseguendo ilcomando python ltnomefilepygt dalla cartella in cui si trova il filepy

dottorandodottorando-Lenovo-Y50-70 Scrivania$ python

testpy

My first script in Python

dottorandodottorando-Lenovo-Y50-70 Scrivania$

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 7 88

Variabili in Python - 1

Python e dinamicamente tipato e fortemente tipatoUna variabile inizia ad esistere nel momento in cui le viene assegnato unvalore che ne determina il tipo

gtgtgt a=10000

gtgtgt type(a)

lttype lsquointrsquogt

gtgtgt len(a)

Traceback (most recent call last)

File ltstdingt line 1 in ltmodulegt

TypeError object of type rsquointrsquo has no len()

gtgtgt

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 8 88

Variabili in Python - 2

Riferirsi ad una variabile inesistente (a cui non e ancora stato assegnato unvalore) genera un errore

gtgtgt b

Traceback (most recent call last)

File ltstdingt line 1 in ltmodulegt

NameError name rsquobrsquo is not defined

gtgtgt

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 9 88

Funzione Help

Per aprire la documentazione a riguardo di un particolare oggetto metodoo attributo si puo invocare la funzione help(rdquonomerdquo) con il nomedellrsquooggetto che stiamo cercando

gtgtgt help(str)

Help on class str in module builtin

class str(basestring)

| str(object=rsquorsquo) -gt string

|

| Return a nice string representation of the object

| If the argument is a string the return value is the

same object

|

Si esce dal manuale interattivo premendo q

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 10 88

Tipi Predefiniti in Python

Stringhe (str) rdquoquesta e una stringardquo rdquoquesta purerdquo

Dizionari (dict) lsquochiaversquo valoreTuple (tuple) (1 2 3 1 rsquociaorsquo)

Liste (list) [1 2 3 4 rsquopipporsquo]

Set (set) (1 2 3)

Interi (int) 1 2 3

Float (float) 15 314 2718281828459045

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 11 88

Numpy

Il modulo numpy (httpwwwnumpyorg) mette a disposizione unastruttura dati creata appositamente per il calcolo scientifico

ArrayUn array e un contenitore di dati omogenei cioe dello stesso tipo Se sitenta di costruire un array con dati di tipo diverso questi vengonoldquotrasformatirdquo nel piu piccolo tipo adatto a contenerli tutti

gtgtgt import numpy as np

gtgtgt nparray( [146810] )

array([ 1 4 68 10 ])

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 12 88

Creazione di Array - 1

numpyarange(x) restituisce un array contenente gli interi da 0 a x minus 1

gtgtgt numpyarange(5)

array([0 1 2 3 4])

numpyarange(start stop step) permette di scegliere gli estremi dellasequenza contenuta nellrsquoarray e il passo tra un numero ed il successivo

gtgtgt numpyarange(262)

array([2 4])

gtgtgt numpyarange(2-3-1)

array([ 2 1 0 -1 -2])

numpylinspace(start stop n) permette di scegliere gli estremi e quantinumeri devono comparire allrsquointerno della sequenza

gtgtgt numpylinspace(014)

array)[0 03333333 066666667 1])

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 13 88

Creazione di Array - 2

numpyones(rdquotuplardquo) restuituisce un array di 1 date le dimensionispecificate nella tupla come argomento

gtgtgt numpyones( (15) )

array([1 1 1 1 1])

numpyzeros(rdquotuplardquo) restuituisce un array di 0 date le dimensionispecificate nella tupla come argomento

gtgtgt numpyzeros( (25) )

array([[0 0 0 0 0] [0 0 0

0 0]])

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 14 88

Operazioni con Array

Applicando un operazione logica ad un array si ottiene come risposta unarray di tipo booleano contenente nella posizione i-esima il risultatodellrsquoespressione logica valutata per lrsquoelemento i-esimo dellrsquoarray

gtgtgt numpyarange(5) gt 3

array([False False False False True] dtype=bool)

Le operazioni + - tra due array vengono eseguite elemento perelemento (gli array devono avere le stesse dimensioni)

gtgtgt numpyarange(5) + numpylinspace(025)

array([ 0 15 3 45 6 ])

gtgtgt numpyarange(5) 2

array([0 2 4 6 8])

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 15 88

Selezioni di un sottoinsieme di elementi

Ad un array e possibile accedere in tutti i modi con cui e possibile accederead una lista ad esempio

Ottenere una tupla di elementi

gtgtgt a[2] a[-1] a[36]

(2 9 array([3 4 5]))

Slicing [startstopstep]

gtgtgt a[293]

array([2 5 8])

gtgtgt a[2]

array([0 2 4 6 8])

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 16 88

Accesso con maschere booleane

Specificando tra [ ] un array di tipo booleano selezioniamo dallrsquoarray glielementi la cui posizione corrisponde ad un True nellrsquoarray di tipobooleano (che prende il nome di maschera)

gtgtgt a = numpyarange(10)

gtgtgt mask = a2 == 0

gtgtgt mask

array([ True False True False True False True

False True False] dtype=bool)

gtgtgt a[mask]

array([0 2 4 6 8])

o in maniera piu compatta

gtgtgt a[a2 == 0]

array([0 2 4 6 8])

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 17 88

Esercizi

1 Lanciare uno script che stampi il vostro nome e cognome

2 Creare un array i cui elementi siano gli interi che compongono ilvostro numero di matricola

3 Sia X la lunghezza dellrsquoarray del punto precedente Creare un array diX elementi equispaziati lrsquouno dallrsquoaltro di 15

4 Creare un array di X elementi equispaziati nellrsquointervallo tra 1 e 3

5 Ottenere gli array dati dalla somma tra lrsquoarray del punto 2 e quello delpunto 3 e quello dato dalla moltiplicazione tra punto 3 e punto 4

6 Ottenere per ciascuno dei due array del punto 5 un array mascherache in corrispondenza dei numeri divisibili per 3 abbia True Falsealtrimenti

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 18 88

Pandas - Series (1)

Pandas (httpspandaspydataorg) e una libreria Python chefornisce strutture dati e strumenti relativi esclusivamente allrsquoanalisi deidatiUna Series e un array monodimensionale ed etichettato Rappresenta unaserie di osservazioni di un certo carattere fatto su un insieme di individui

a 00

b 10

c 20

d 30

e 40

f 50

g 60

h 70

Name serie di esempio dtype float64

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 19 88

Pandas - Series (2)

pandasSeries (data index dtype name )

data contiene i dati che si vuole inserire nella serie

index della stessa lunghezza di data contiene le etichette

dtype permette di specificare il tipo che i dati devono assumere

name permette di dare un nome alla Series

gtgtgt import pandas as pd

gtgtgt import numpy as np

gtgtgt oss = nparange(8)

gtgtgt etic = [rsquoarsquorsquobrsquorsquocrsquorsquodrsquorsquoersquorsquofrsquorsquogrsquorsquohrsquo]

gtgtgt pdSeries(data=oss index=etic name=rsquoserie di esempiorsquo

dtype=float)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 20 88

Accesso ai dati di una Series

Specificando un valore (o una lista di valori) per lrsquoetichetta

gtgtgt sloc[[rsquohrsquorsquoarsquo]]

h 70

a 00

Specificando un valore (o una lista di valori) per la posizione

gtgtgt s[[56]]

f 50

g 60

Usando lo slicing (come per gli array numpy) per la posizione

gtgtgt s[36]

d 30

e 40

f 50

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 21 88

Pandas Series - Utils

Seriesmin() Seriesmax() restituiscono rispettivamente il minimoed massimo tra i valori della Series

Seriessum() restituisce la somma dei valori della Series

Seriessort values() restituisce una copia della Series ordinata pervalore

Seriessort index() restituisce una copia della Series ordinata peretichette

Seriessample(n) restituisce una Series di n elementi sceltiuniformemente a caso allrsquointerno di quelli della Series

Seriesappend([s1s2]) concatena una o piu Series a quella dipartenza

Seriescount() restituisce il numero dei valori della Series che nonsiano il valore NaN

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 22 88

Il valore NaN

Nan un oggetto del modulo numpy che puo rappresentare in una Seriesun dato di cui non e stato possibile fare unrsquoosservazioneOperazioni con un valore Nan hanno come risultato il valore Nan

gtgtgt oss = range(5)

gtgtgt ossappend(None)

gtgtgt pandasSeries(oss)

0 00

1 10

2 20

3 30

4 40

5 NaN

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 23 88

Esercizi

Creare la Series gol in modo che le etichette siano numeri dallrsquo1 al 23 Idati raccolti siano numeri interi tra 0 e 30 scelti casualmente (scarica ilnotebook) La Series rappresenta i gol segnati da ciascun giocatore diuna societa calcistica nella stagione appena passata Lrsquoetichettacorrisponde al numero di maglia del giocatore Ottenere

1 I gol segnati dal capocannoniere2 Chi non ha mai fatto gol durante lrsquoanno3 La statistica del punto 2 per i soli titolari (numeri dallrsquo1 allrsquo11) e per

le sole riserve (dal 12 al 23)4 La statistica del punto 2 per i soli attaccanti (numeri dalrsquo9 allrsquo11)5 I gol segnati dai giocatori coi numeri di maglia 5 9 10 14 (somma)6 Chi ha segnato piu di 10 gol e chi ha segnato esattamente 10 gol7 Una copia della Series ordinata secondo i gol effettuati8 Una stampa dei primi 5 cannonieri e degli ultimi 59 Una copia della Series ordinata in modo discendente secondo il

numero di maglia

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 24 88

File csv

Il formato csv (comma-separated value) e un formato utilizzato perrappresentare una tabella di dati e favorirne lrsquoimportazione e lrsquoesportazioneUn file csv e scritto nella seguente forma

titolopaeseannoduratagenerevoto

Guerre StellariUSA1977121Fantascienza4

Lrsquoimpero colpisce ancoraUSA1980124Fantascienza4

Il ritorno dello JediUSA1983Fantascienza35

Profondo RossoITA1975Horror35

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 25 88

Leggere csv

La funzione read csv() di Pandas puo essere utilizzata per leggere unfile di formato csv Tra i vari parametri che passiamo in input unoparticolarmente importante e sep che indica il carattere utilizzato perseparare le colonne (default e rsquorsquo)

gtgtgt df film = pdread csv(rsquofilmcsvrsquo)

gtgtgt df film

titolo paese anno durata genere voto

Il padrino USA 19720 1750 Drammatico 45

Pulp Fiction USA 19940 1540 Drammatico 40

Fight Club USA 19990 1390 Thriller 40

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 26 88

DataFrame

In Pandas un DataFrame e una struttura dati tabulare con assi etichettatile cui colonne possono contenere dati eterogenei da colonna a colonna

gtgtgt dataframe

esempio

Nome Cognome Eta Citta

Tommaso Rossi 300 Milano

Sergio Bianchi 340 Roma

Pasquale Verdi 290 Palermo

Antonio Gialli 300 Roma

Il DataFrame puo essere visto come un insieme di serie aventi lo stessoindice accostate una allrsquoaltra

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 27 88

Accesso colonne DataFrame - 1

Per conoscere le colonne di un DataFrame possiamo invocare il comandodfcolumns dove df e la variabile in cui abbiamo instanziato ilDataFramePer accedere ad una colonna dobbiamo specificarne il nome nel seguentemodo

gtgtgt df film[rsquogenerersquo]

titolo

Il padrino Drammatico

Pulp Fiction Drammatico

Fight Club Thriller

Selezionando unrsquounica colonna in output viene restituita una Series

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 28 88

Accesso colonne DataFrame - 2

Possiamo accedere allo stesso tempo a piu colonne

gtgtgt df film[[rsquopaesersquorsquoannorsquo]]

titolo paese anno

Il padrino USA 19720

Pulp Fiction USA 19940

Fight Club USA 19990

Selezionando piu colonne in output viene restituito un DataFrame

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 29 88

Accesso righe DataFrame - 1

Per indice numerico

gtgtgt df film[1518]

titolo paese anno durata genere voto

Il padrino USA 19720 1750 Drammatico 45

Pulp Fiction USA 19940 1540 Drammatico 40

Fight Club USA 19990 1390 Thriller 40

Quasi Amici FRA 20110 1120 Commedia 35

Per valore dellrsquoindice (assumiamo che titolo sia lrsquoindice delDataFrame)

gtgtgt df film[rsquoIl padrinorsquorsquoFight Clubrsquo]

titolo paese anno durata genere voto

Il padrino USA 19720 1750 Drammatico 45

Pulp Fiction USA 19940 1540 Drammatico 40

Fight Club USA 19990 1390 Thriller 40

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 30 88

loc amp iloc

Cosı come per le Series anche con i DataFrame possiamo usare loc ediloc per lrsquoaccesso ai dati

loc[rsquonome indicersquo] permette lrsquoaccesso ad una riga o piu righetramite nome dellrsquoindice

iloc[rsquoposizionersquo] permette lrsquoaccesso ad una o piu righe tramitela loro posizione

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 31 88

Accesso tramite unrsquoespressione logica

gtgtgt df film[rsquoannorsquo gt 1998]

titolo

Il padrino False

Pulp Fiction False

Fight Club True

Quasi Amici True

gtgtgt df film[df film[rsquoannorsquo] gt 1998]

titolo paese anno durata genere voto

Fight Club USA 19990 1390 Thriller 40

Quasi Amici FRA 20110 1120 Commedia 35

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 32 88

Metodi dei DataFrame

La classe DataFrame ha diversi metodi Elenchiamo qui i piu importanti

DataFrameappend() permette di estendere il DataFrame

DataFramedrop duplicates() restituisce un DataFrame senza righeduplicate

DataFramedropna() Eliminare i valori Nan da un DataFrame

DataFramesort values() permette di ordinare il DataFrame

DataFramemax() DataFramemin() DataFramemean()DataFramemedian()

Per la completa documentazione si puo utilizzare il comandohelp(pdDataFrame) oppure andare al seguente linkhttpspandaspydataorgpandas-docsstablegenerated

pandasDataFramehtml

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 33 88

Frequenze

La frequenza assoluta indica il numero di volte che una dataosservazione occorre in un campione

La frequenza relativa e un valore tra 0 e 1 che permette di valutare inmaniera piu efficace la frequenza di un osservazione Si calcoladividendo la frequenza assoluta per il numero totale di casi

Per calcolare questa quantita in Pandas possiamo utilizzare la funzionevalue counts() che opera su una Series

In alternativa si puo utilizzare la funzione pdcrosstab che calcolaqueste frequenze in automatico restituendole in output in un DataFrame

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 34 88

Esercizi

Utilizzando il file dati-ospedalicsv dai csv del laboratorio

1 Leggere il file e visualizzarlo in un DataFrame

2 Calcolare le frequenze assolute e relative dellrsquoattributo Regioneusando crosstab

3 Ottenere la singola serie relativa allrsquoattributo Regione e calcolarne lafrequenza assoluta e relativa senza usare crosstab

4 Estrarre un sottodataframe contenente le colonne Nome (attributoDenominazione Str Pubblica New) e Numero di medici (attributoMedici SSN) degli ospedali aventi meno di 200 medici

5 Visualizzare il nome degli ospedali della regione Lombardia

6 Calcolare il numero medio di ingegneri (Ingegneri SSN) presenti negliospedali campani

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 35 88

Esercizi

7 Calcolare la varianza del numero di assistenti sociali (Assistenti socialiSSN) negli ospedali con piu di 400 medici

8 Qual e lrsquoospedale con meno medici

9 Visualizzare in ordine alfabetico il nome dei primi 10 ospedali pernumero di medici

10 Visualizzare il numero degli ospedali che hanno dichiarato il numerodi odontoiatri (per cui il valore e diverso da NaN) (OdontoiatriUniversitari)

11 Visualizzare il numero degli ospedali che hanno dichiarato il numerodi odontoiatri (Odontoiatri Universitari) e per cui questo numero emaggiore di 0

12 Calcolare le frequenze assolute per lrsquoattributo Odontoiatri SSNTrasformare questo risultato in frequenze relative

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 36 88

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) SAD 20182019 January 12 2019 37 88

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) SAD 20182019 January 12 2019 38 88

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) SAD 20182019 January 12 2019 39 88

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) SAD 20182019 January 12 2019 40 88

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) SAD 20182019 January 12 2019 41 88

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) SAD 20182019 January 12 2019 42 88

Grafici con le Series

In generale possiamo tracciare diversi tipi di grafici con le Series

rsquolinersquo line plot (default)

rsquobarrsquo vertical bar plot

rsquobarhrsquo horizontal bar plot

rsquohistrsquo histogram

rsquoboxrsquo boxplot

rsquokdersquo Kernel Density Estimation plot

rsquodensityrsquo same as rsquokdersquo

rsquoarearsquo area plot

rsquopiersquo pie plot

Per saperne di piu consultare questo link

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 43 88

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) SAD 20182019 January 12 2019 44 88

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) SAD 20182019 January 12 2019 45 88

Boxplot

Rappresenta la distribuzione di un vettore di numeri cerchiando gli outlier

gtgtgt weight = heroes[rsquoWeightrsquo]

gtgtgt weightplotbox()

gtgtgt pltshow()

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 46 88

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) SAD 20182019 January 12 2019 47 88

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) SAD 20182019 January 12 2019 48 88

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) SAD 20182019 January 12 2019 49 88

Esercizi - 1

Utilizzando il file capellicsv dai csv del laboratorio

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) SAD 20182019 January 12 2019 50 88

Esercizi - 2

Utilizzando il file dati-ospedalicsv dai csv del laboratorio

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 e canipdf

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 51 88

Sample space

Un esperimento e qualsiasi processo che produce una realizzazione (oosservazione) Lrsquoinsieme di tutte le possibili realizzazioni di un esperimentoviene detto sample space ed indicato con S

lancio di 2 monete

S = (T T ) (T C) (C T ) (C C)

gara di 3 cavalli (ab c)

S = tutti i possibili ordinamenti di(ab c)= (ab c) (a cb) (c b a)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 52 88

Eventi

lancio di 2 monete

S = (T T ) (T C) (C T ) (C C)

A = 2 monete uguali

A = (T T ) (C C)

B = 2 monete diverse

B = Ac = (T C) (C T )

gara di 3 cavalli

A = cavallo a vincente

A = (ab c) (a c b)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 53 88

Probabilita - 1

Consideriamo un esperimento con sample space S Supponiamo che adogni evento A sia associato un numero chiamato probabilita di A edindicato con P(A) che soddisfa le seguenti proprieta

1 Per ogni evento A la probabilita di A e un numero tra 0 e 1

0 le P(A) le 1

2 La probabilita del sample space S e 1

P(S) = 1

3 La probabilita dellrsquounione di eventi disgiunti e uguale alla somma delleprobabilita di tali eventi

P(A cupB) = P(A) + P(B)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 54 88

Probabilita - 2

In generale 2 eventi potrebbero non essere disgiunti

P(A cupB) = P(A) + P(B) minus P(A capB)

Esempio un certo negozio accetta pagamenti o con carte di credito VISAo Mastercard

1 22 dei clienti ha Mastercard

2 58 dei clienti ha VISA

3 14 dei clienti ha entrambe

Qual e la probabilita che un cliente ha almeno una delle 2 carte

P(A) = 022 P(B) = 058

P(A cupB) = P(A) + P(B) minus P(A capB) = 022 + 058 minus 014 = 066

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 55 88

Probabilita condizionata - 1

Se alcune informazioni riguardo lrsquoesito di un esperimento sono disponibiliparliamo di probabilita condizionata

Esempio lancio di 2 dadi

S = (11) (12) (65) (66)

Probabilita che la somma sia 10 (evento B) sapendo che il primo dadomostra 4 (evento A)

(41) (42) (43) (44) (45) (46)

P(B ∣A) = 16

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 56 88

Probabilita condizionata - 2

In generale

P(B ∣A) = P(A capB)P(A)

Supponiamo lrsquoesito sia in A

Per essere anche in B deve essere in entrambi A e B cioe in A capB

Sapendo che A e gia accaduto il nostro nuovo sample space diventa A

la probabilita di A capB viene calcolata rispetto ad A

Nel caso dei dadi

P(B ∣A) = P((46))P((41) (42) (43) (44) (45) (46)) = 136

16= 1

6

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 57 88

Indipendenza

In generale sapere che A e accaduto modifica le chance che B accadaNel caso cio non avvenga cioe se P(B ∣A) = P(B) allora i 2 eventi sidicono indipendenti In questo caso sapere che A e accaduto nonaggiunge alcuna informazione

SiccomeP(A capB) = P(B ∣A)P(A)

Abbiamo che B e indipendente da A se

P(A capB) = P(B)P(A)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 58 88

Esercizi - 1

1 Svolgere gli esercizi di combinatoria

2 Si consideri il seguente esperimento casuale rdquosi lancia tre volte unamonetardquo Qual e lo spazio degli esiti di questo esperimento casualeSi scriva esplicitamente lrsquoevento rdquosi ottengono piu teste che crocirdquo

3 Si consideri il seguente esperimento casuale rdquoSi tirano due dadirdquo Siconsiderino gli eventi E = rdquola somma dei punteggi e disparirdquo F = rdquoilprimo dado realizza un 1rdquo e G = rdquola somma dei punteggi e 5rdquo Sidescrivano gli eventi E cap F E cup F F capG E cap F c e E cap F capG

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 59 88

Esercizi - 2

4 Si consideri il seguente esperimento casuale rdquoUn sistema e compostoda 4 componenti ciascuno dei quali o funziona oppure e guasto Siosserva lo stato dei componenti ottenendo un vettore (x1 x2 x3 x4)dove xi e 1 oppure 0 a seconda che il componente i-esimo funzionioppure nordquo

1 Da quanti elementi e formato lo spazio degli esiti2 Il sistema nel suo insieme funziona fintantoche entrambi i componenti

1 e 2 oppure entrambi i componenti 3 e 4 funzionano Specifica tuttigli esiti dellrsquoevento il rdquosistema funzionardquo

3 Sia E lrsquoevento rdquoi componenti 1 e 3 sono guastirdquo Quanti esiti contiene

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 60 88

Esercizi - 3

5 Si dimostri che in uno spazio degli esiti Ω dotato di una probabilita Pper ogni evento E F sub Ω vale la disuguaglianza seguente

P(E cap F ) ge P(E) + P(F ) minus 1

6 Un gruppo di 5 bambini e 10 bambine e in fila in ordine casuale nelsenso che tutte le 15 possibili permutazioni si suppongonoequiprobabili

1 Qual e la probabilita che il quarto della fila sia un bambino2 E il dodicesimo3 Qual e la probabilita che un determinato bambino occupi la terza

posizione

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 61 88

Esercizi - 4

7 In un comune vi sono 5 alberghi Se 3 persone devono scegliere unalbergo in cui pernottare qual e la probabilita che finiscano tutte inalberghi differenti Che cosa stiamo assumendo senza dirloesplicitamente

8 La media del salario annuale di un gruppo di 100 lavoratori impiegatinellrsquoamministrazione di una grande azienda e di 130000 dollari conuna deviazione standard di 20000 dollari Se si prende una persona acaso da questo gruppo cosa possiamo dire sulla probabilita che il suosalario sia

1 tra i 90000 e i 170000 dollari2 superiore a 150000 dollari

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 62 88

Esercizi - 5

9 In una certa regione vi sono due ditte che producono forni amicroonde Quelli della fabbrica A sono difettosi con probabilita 005mentre quelli della fabbrica B con probabilita 001 Supponi di averacquistato due apparecchi prodotti dalla stessa ditta che puo essere laA o la B con probabilita del 50 Se il primo microonde e difettosoqual e la probabilita condizionata che sia difettoso anche il secondo

10 Hai chiesto ad un vicino di innaffiare una piantina delicata mentre seiin vacanza Pensi che senza acqua la piantina muoia con probabilita08 mentre se innaffiata questa probabilita si ridurrebbe a 015 Latua fiducia che il vicino si ricordi di innaffiarla e del 90

1 Qual e la probabilita che la pianta sia ancora viva al tuo ritorno2 Se fosse morta quale sarebbe la probabilita che il vicino si sia

dimenticato di innaffiarla

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 63 88

Esercizi - 6

11 Una compagnia di assicurazioni classifica i suoi clienti in tre fascebasso rischio medio rischio alto rischio Le sue statistiche indicanoche le probabilita che un cliente delle tre fasce abbia un incidenteentro un periodo di un anno sono rispettivamente 005 015 e 030Se il 20 dei clienti sono a basso rischio il 50 a medio rischio e il30 ad alto rischio che percentuale dei clienti avra mediamenteincidenti in un lasso di un anno Se un cliente non ha avuto incidentinel 1987 qual e la probabilita che appartenga a ciascuna delle trefasce

12 Se un votante scelto a caso e favorevole ad una certa riforma conprobabilita di 07 qual e la probabilita che su 10 votanti esattamente7 siano favorevoli

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 64 88

Variabili aleatorie

Una variabile aleatoria (o anche variabile aleatoria) e una variabile chepuo assumere valori diversi in dipendenza da qualche fenomeno aleatorio

fenomeno lancio di 2 dadivariabile aleatoria somma dei 2 dadi

fenomeno 3 lanci di una monetavariabile aleatoria numero di rdquotesterdquo complessivo

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 65 88

Funzione di Ripartizione

Sia X una variabile aleatoria Si chiama funzione di ripartizione di X lafunzione F che associa ad ogni numero reale a la probabilita che X siaminore o uguale ad a cioe P(X le a) = FX (a)

Nel caso della moneta (fair) lanciata 3 volte (X indica il numero di testecomplessivo)

FX (a) =

⎧⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎨⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎩

0 if a lt 0

18 per 0 le a lt 1

18 + 38 = 48 per 1 le a lt 2

48 + 38 = 78 per 2 le a lt 3

88 = 1 per a ge 3

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 66 88

Funzione di densita o di massa

Sia X una variabile aleatoria Si chiama funzione di densita di X lafunzione f che associa ad ogni numero reale a la probabilita che X siauguale ad a indicata con fX (a)

Nel caso della moneta (fair) lanciata 3 volte (X indica il numero di testecomplessivo)

fX (a) =

⎧⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎨⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎩

18 per a = 0

38 per a = 1

38 per a = 2

18 per a = 3

0 altrimenti

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 67 88

Valore Atteso

Chiamato anche media (expectation in inglese) e appunto una mediapesata dei possibili valori di una variabile aleatoria Il peso dato a ciascunvalore e la probabilita data a quello specifico valore

E[X ] =sumi

aiP(X = ai)

Esempio dado truccato

valore 6 con probabilita 712

valori da 1 a 5 con probabilita 112

La variabile aleatoria X indica la faccia risultante dal lancio di un dado

E[X ] = 1

12lowast 1 + 1

12lowast 2 + 1

12lowast 3 + 1

12lowast 4 + 1

12lowast 5 + 7

12lowast 6 = 475

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 68 88

Valore Atteso - Proprieta

Sia X una variabile aleatoria con valore atteso E[X ] Se c e una costanteallora anche cX e X + c sono variabili casuali In particolare valgono leseguenti proprieta

E[cX ] = cE[X ]E[X + c] = E[X ] + c

Sia Y una variabile aleatoria Allora

E[X +Y ] = E[X ] +E[Y ]se e solo se X e Y sono independenti

E[XY ] = E[X ]E[Y ]

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 69 88

Varianza

Ersquo il valore atteso del quadrato della differenza tra la variabile aleatoria e ilsuo valore atteso

Var(X ) = E[(X minusE[X ])2] = E[X 2] minus (E[X ])2

La radice quadrata viene detta deviazione standard di X

Esempio dado truccato

E[X 2] = 1

12lowast 12 + 1

12lowast 22 + 1

12lowast 32 + 1

12lowast 42 + 1

12lowast 52 + 7

12lowast 62 ≃ 255

Var(X ) = E[X 2] minus (E[X ])2 ≃ 255 minus 4752 ≃ 3

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 70 88

Varianza - proprieta

Sia X una variabile aleatoria e c una costante Allora valgono le seguentiproprieta

1 Var(cX ) = c2Var(X )

2 Var(X + c) = Var(X )

NOTA

Var(X +X ) ne Var(X ) +Var(X )

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 71 88

Covarianza

Siano X Y due variabili aleatorie con valore atteso rispettivamenteE[X ] = microX e E[Y ] = microY La covarianza e definita come segue

Cov(X Y ) = E[(X minus microX )(Y minus microY )] = = E[XY ] minus microXmicroY

Proprieta

1 Cov(X Y ) = Cov(Y X )2 Cov(X X ) = Var(X )3 Sia a una costante allora

Cov(aX Y ) = aCov(X Y )

4 Sia Z una variabile aleatoria allora

Cov(X + Z Y ) = Cov(X Y ) + Cov(Z Y )

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 72 88

Esercizi - 1

1 Consideriamo una variabile aleatoria X che puo assumere i valori 12o 3 Se sappiamo che

fX (1) = 1

3 fX (2) = 3

7

1 Quanto vale fX (3)2 Disegnare il grafico di questa funzione di massa3 Disegnare il grafico della relativa funzione di ripartizione

2 Dimostrare che se X1 e X2 hanno la stessa distribuzione allora

Cov(X1 +X2X1 minusX2) = 0

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 73 88

Esercizi - 2

3 La funzione di ripartizione di X e definita come segue

FX (x) =

⎧⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎨⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎩

0 per x le 0

x2 per 0 le x lt 1

23 per 1 le x lt 2

1112 per 2 le x lt 3

1 per x ge 3

Se ne tracci il graficoQuanto vale P(X gt 12)Quanto vale P(2 le X le 4)Quanto vale P(X le 3)Quanto vale P(X = 1)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 74 88

Esercizi - 3

4 Un tipo di prodotti vengono classificati a seconda dei loro difetti edella fabbrica che li ha prodotti Sia X1 il numero (1 o 2) dellafabbrica e sia X2 il numero di difetti per pezzo (che possono essere da0 a 3) di un prodotto scelto a caso tra la totalita di quelli esistentiLa tabella seguente riporta la funzione di massa di probabilitacongiunta per queste due variabili aleatorie discrete Le righe siriferiscono alla variabile X1 mentre le colonne alla variabile X2

Trova le distribuzioni marginali di X1 e X2Calcola media e varianza di X2

0 1 2 31 18 116 316 182 116 116 18 14

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 75 88

Scipy

Scipy e un modulo che permette di utilizzare varie distribuzioni diprobabilita sia di tipo discreto che continuo

La sintassi generale e la seguente Scipystatsltnome distribuzionegt

rvs(size=z) restituisce un vettore di numeri casuali estrattisecondo la distribuzione di lunghezza z

pdf(x) restituisce il vettore della densita della distribuzionevalutata nei valori del vettore di input x (pmf per le discrete)

cdf(x) restituisce il vettore della funzione di ripartizione (ocumulativa) della distribuzione valutata nei valori del vettore di inputx

ppf(q) restituisce il vettore dei quantili della distribuzione valutatanei valori del vettore di input q

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 76 88

Variabili aleatorie discrete Binomiale

gtgtgt from scipystats import binom

gtgtgt rv = binom(n p)

rvrvs(x) restituisce un vettore di x numeri estratti secondo unadistribuzione Binomiale di parametri n p

rvpmf(x) restituisce la probabilita di ottenere esattamente x

successi in un esperimento dicotomico (01) ripetuto n volte con unaprobabilita di successo p (x puo essere un vettore)

rvcdf(q) restituisce il valore della funzione di ripartizione in q (qpuo essere un vettore)

rvppf(p) restituisce il valore del quantile di ordine p

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 77 88

Variabili aleatorie discrete Ipergeometrica

Supponiamo di avere M = 20 animali di cui n = 7 cani Se vogliamosapere la probabilita di trovare un dato numero di cani se scegliamoN = 12 dei 20 animali in maniera casuale possiamo usare una distribuzioneipergeometrica in questo modo

gtgtgt from scipystats import hypergeom

gtgtgt [M n N] = [20 7 12]

gtgtgt rv = hypergeom(M n N)

rvpmf(x) restituisce la probabilita di estrarre esattamente x cani

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 78 88

Variabili aleatorie discrete Geometrica

gtgtgt from scipystats import geom

gtgtgt rv = geom(p)

rvpmf(x) restituisce la probabilita di avere un successo dopoesattamente x insuccessi in una successione di esperimenti dicotomici(esito 01) con una probabilita di successo p (x puo essere un vettore)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 79 88

Variabili aleatorie discrete Poisson

La distribuzione di Poisson viene usata spesso come modello per il numerodi volte per cui un evento avviene in un dato intervallo di tempo (ospazio) Ad esempio si puo utilizzare per misurare il numero di chiamatericevute da un call center in una mattinata

gtgtgt from scipystats import poisson

gtgtgt mu = 2

gtgtgt rv = poisson(mu)

rvpmf(x) restituisce il seguente valore

f (x) = exp(minusmicro)microx

x

In questo caso x rappresenta il numero di eventi per cui si vuole calcolarela probabilita sapendo che in media ne accadono micro

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 80 88

Variabili aleatorie continue Uniforme

In Scipy la funzione uniforme e soltanto continua Questo significa chenella generazione di numeri casuali otterro dati di tipo float Possiamotuttavia simulare una variabile discreta estraendo la parte intera delrisultato ottenuto

gtgtgt from scipystats import uniform

gtgtgt rv = uniform()

Il comando uniform() crea una distribuzione uniforme nellrsquointervallo[01] Possiamo creare una distribuzione uniforme qualsiasi usandouniform(x y - x) per lrsquointervallo [x y]

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 81 88

Variabili aleatorie continue

norm(mu sigma) variabile Gaussiana (o Normale) di media micro edeviazione standard σ

expon(scale = 1 lambda) variabile Esponenziale di parametroλ

Altre distribuzioni (con relativa documentazione) disponibili suhttpsdocsscipyorgdocscipyreferencestatshtml

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 82 88

Esercizi - 1

1 Unrsquourna contiene 10 palline di cui 4 bianche e 6 nere Si eseguono 5estrazioni con reimmissione

1 Tracciare grafico della funzione massa di probabilita della variabilecasuale X = rdquonumero di palline bianche estratterdquo

2 Calcolare la probabilita di estrarre 2 palline bianche3 Calcolare la probabilita di estrarre al piu 2 palline bianche4 Calcolare la probabilita di estrarre almeno 2 palline bianche5 Qual e il numero minimo x tale che la probabilita di estrarre al piu x

palline bianche sia almeno 08

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 83 88

Esercizi - 2

2 Si eseguono 10 estrazioni senza reimmissione da unrsquourna

1 Tracciare il grafico della funzione massa di probabilita della variabilecasuale X = rdquonumero di palline bianche estratterdquo nei seguenti casi

1 lrsquourna contiene 100 palline di cui 20 bianche e le restanti nere2 lrsquourna contiene 100 palline di cui 2 bianche e le restanti nere

2 Tracciare il grafico della funzione massa di probabilita della variabilecasuale X nel caso dellrsquourna 1 se si eseguono 25 estrazioni

3 Consideriamo lrsquourna 1 e N = 10 estrazioni Si aumenti il numero totaleM di palline nellrsquourna mantenendo uguale a 02 la frazione di pallinebianche Per ciascun valore di M confrontare graficamente ladistribuzione di probabilita del numero di palline bianche estratte nelcaso di estrazioni con e senza reimmissione Provare con 20 40 e 200palline bianche

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 84 88

Esercizi - 3

3 Calcolare la probabilita di ottenere piu teste che croci lanciando 7volte una moneta truccata con probabilita di avere croce pari a 045

4 Calcolare la probabilita di avere almeno 3 sei lanciando 5 dadi a 12facce

5 Calcolare la probabilita di estrarre 20 euro da un sacco contenente 47monete da 1 centesimo e 53 da 2 euro estraendo (uniformemente) acaso 10 monete senza reinserirle

6 Un grammo di uranio emette mediamente 2152 particelle α ognimillisecondo Qual e con buona approssimazione la probabilita che ungrammo di uranio emetta al piu 2000 particelle α in un millisecondo

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 85 88

Esercizi - 4

7 Un uomo si risveglia in mezzo al deserto senza acqua Dopo ogniminuto ha una probabilita del 3 di perdere conoscenza per via dellecondizioni estreme Calcolare la probabilita che lrsquouomo perdaconoscenza dopo almeno due ore e la probabilita che lrsquouomo perdaconoscenza dopo esattamente un quarto drsquoora

8 Sia X una variabile aleatoria normale di parametri micro = 10 e σ = 36Calcola

1 P(X gt 5)2 P(4 le X le 16)3 P(X le 8)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 86 88

Esercizi - 5

9 Il numero di errori tipografici per pagina di una certa rivista segue unadistribuzione di Poisson Sapendo che mediamente sono presenti 02errori per pagina determinare la probabilita che una pagina contenga

1 nessun refuso2 piu refusi

10 Arrivi alla fermata dellrsquoautobus alle 1000 e sei certo che ne passerauno in un momento distribuito uniformemente tra le 1000 e le 1030

1 Qual e la probabilita che tu debba aspettare piu di 10 minuti2 Se alle 1015 lrsquoautobus non e ancora arrivato qual e la probabilita che

tu debba aspettare almeno altri 10 minuti

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 87 88

Esercizi - 6

11 Il signor Jones e convinto che il tempo di vita di una automobile (inmigliaia di chilometri percorse) sia una variabile aleatoria esponenzialedi parametro 120 Il signor Smith ha una macchina usata da vendereche ha percorso circa 10 000 chilometri

1 Se il signor Jones decide di comprarla che probabilita ha di farle farealmeno altri 20 000 chilometri prima che sia da buttare

2 Il modello assunto dal signor Jones e ragionevole

12 Sia X una variabile casuale binomiale di parametri n = 100 e p = 07

1 Tracciate la funzione di ripartizione di X2 Calcolate il primo quartile il quantile di ordine 09 e la mediana di X3 Calcolare la probabilita P(X le 60)4 Calcolare la probabilita P(X le 88)5 Trovare il piu piccolo valore x tale che P(X le x) ge 09

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 88 88

  • Lezione 1
    • Script in Python
    • Numpy
    • Esercizi
    • Pandas
    • Esercizi
      • Lezione 2
        • File csv
        • DataFrame
        • Accesso ai DataFrame
        • Frequenze
        • Esercizi
          • Lezione 3
            • Matplotlib
            • Grafici a Barre
            • Istogrammi
            • Cumulativa empirica
            • Boxplot
            • QQplot
            • Diagramma di Pareto
            • Esercizi
              • Lezione 4
                • Definizioni
                • Probabilitagrave condizionata
                • Indipendenza
                • Esercizi
                  • Lezione 5
                    • Variabili Aleatorie
                    • Funzione di Ripartizione
                    • Funzione di Densitagrave
                    • Valore Atteso
                    • Varianza
                    • Covarianza
                    • Esercizi
                      • Lezione 6
                        • Scipy - Variabili Discrete
                        • Scipy - Variabili continue
                        • Esercizi

Interprete interattivo - 1

Il comando python apre lrsquointerprete interattivo Lrsquointerprete valuta leistruzioni Python inserite a riga di comando e fornisce una risposta

dottorandodottorando-Lenovo-Y50-70 $ python

Python 365 |Anaconda Inc| (default Apr 29 2018

161456)

GCC 720on linux

Type help copyright credits or license for more

information

gtgtgt

gtgtgt print(Hello world)

Hello world

gtgtgt

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 5 88

Interprete interattivo - 2

La funzione exit() e digitata per uscire dallrsquoambiente interprete (o inalternativa ctrl + d cmd + d)

gtgtgt print(Hello world)

Hello world

gtgtgt

dottorandodottorando-Lenovo-Y50-70 $

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 6 88

Script

Usare lrsquointerprete interattivo non e la maniera piu comoda perprogrammareE possibile lanciare un programma python (filepy) eseguendo ilcomando python ltnomefilepygt dalla cartella in cui si trova il filepy

dottorandodottorando-Lenovo-Y50-70 Scrivania$ python

testpy

My first script in Python

dottorandodottorando-Lenovo-Y50-70 Scrivania$

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 7 88

Variabili in Python - 1

Python e dinamicamente tipato e fortemente tipatoUna variabile inizia ad esistere nel momento in cui le viene assegnato unvalore che ne determina il tipo

gtgtgt a=10000

gtgtgt type(a)

lttype lsquointrsquogt

gtgtgt len(a)

Traceback (most recent call last)

File ltstdingt line 1 in ltmodulegt

TypeError object of type rsquointrsquo has no len()

gtgtgt

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 8 88

Variabili in Python - 2

Riferirsi ad una variabile inesistente (a cui non e ancora stato assegnato unvalore) genera un errore

gtgtgt b

Traceback (most recent call last)

File ltstdingt line 1 in ltmodulegt

NameError name rsquobrsquo is not defined

gtgtgt

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 9 88

Funzione Help

Per aprire la documentazione a riguardo di un particolare oggetto metodoo attributo si puo invocare la funzione help(rdquonomerdquo) con il nomedellrsquooggetto che stiamo cercando

gtgtgt help(str)

Help on class str in module builtin

class str(basestring)

| str(object=rsquorsquo) -gt string

|

| Return a nice string representation of the object

| If the argument is a string the return value is the

same object

|

Si esce dal manuale interattivo premendo q

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 10 88

Tipi Predefiniti in Python

Stringhe (str) rdquoquesta e una stringardquo rdquoquesta purerdquo

Dizionari (dict) lsquochiaversquo valoreTuple (tuple) (1 2 3 1 rsquociaorsquo)

Liste (list) [1 2 3 4 rsquopipporsquo]

Set (set) (1 2 3)

Interi (int) 1 2 3

Float (float) 15 314 2718281828459045

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 11 88

Numpy

Il modulo numpy (httpwwwnumpyorg) mette a disposizione unastruttura dati creata appositamente per il calcolo scientifico

ArrayUn array e un contenitore di dati omogenei cioe dello stesso tipo Se sitenta di costruire un array con dati di tipo diverso questi vengonoldquotrasformatirdquo nel piu piccolo tipo adatto a contenerli tutti

gtgtgt import numpy as np

gtgtgt nparray( [146810] )

array([ 1 4 68 10 ])

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 12 88

Creazione di Array - 1

numpyarange(x) restituisce un array contenente gli interi da 0 a x minus 1

gtgtgt numpyarange(5)

array([0 1 2 3 4])

numpyarange(start stop step) permette di scegliere gli estremi dellasequenza contenuta nellrsquoarray e il passo tra un numero ed il successivo

gtgtgt numpyarange(262)

array([2 4])

gtgtgt numpyarange(2-3-1)

array([ 2 1 0 -1 -2])

numpylinspace(start stop n) permette di scegliere gli estremi e quantinumeri devono comparire allrsquointerno della sequenza

gtgtgt numpylinspace(014)

array)[0 03333333 066666667 1])

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 13 88

Creazione di Array - 2

numpyones(rdquotuplardquo) restuituisce un array di 1 date le dimensionispecificate nella tupla come argomento

gtgtgt numpyones( (15) )

array([1 1 1 1 1])

numpyzeros(rdquotuplardquo) restuituisce un array di 0 date le dimensionispecificate nella tupla come argomento

gtgtgt numpyzeros( (25) )

array([[0 0 0 0 0] [0 0 0

0 0]])

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 14 88

Operazioni con Array

Applicando un operazione logica ad un array si ottiene come risposta unarray di tipo booleano contenente nella posizione i-esima il risultatodellrsquoespressione logica valutata per lrsquoelemento i-esimo dellrsquoarray

gtgtgt numpyarange(5) gt 3

array([False False False False True] dtype=bool)

Le operazioni + - tra due array vengono eseguite elemento perelemento (gli array devono avere le stesse dimensioni)

gtgtgt numpyarange(5) + numpylinspace(025)

array([ 0 15 3 45 6 ])

gtgtgt numpyarange(5) 2

array([0 2 4 6 8])

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 15 88

Selezioni di un sottoinsieme di elementi

Ad un array e possibile accedere in tutti i modi con cui e possibile accederead una lista ad esempio

Ottenere una tupla di elementi

gtgtgt a[2] a[-1] a[36]

(2 9 array([3 4 5]))

Slicing [startstopstep]

gtgtgt a[293]

array([2 5 8])

gtgtgt a[2]

array([0 2 4 6 8])

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 16 88

Accesso con maschere booleane

Specificando tra [ ] un array di tipo booleano selezioniamo dallrsquoarray glielementi la cui posizione corrisponde ad un True nellrsquoarray di tipobooleano (che prende il nome di maschera)

gtgtgt a = numpyarange(10)

gtgtgt mask = a2 == 0

gtgtgt mask

array([ True False True False True False True

False True False] dtype=bool)

gtgtgt a[mask]

array([0 2 4 6 8])

o in maniera piu compatta

gtgtgt a[a2 == 0]

array([0 2 4 6 8])

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 17 88

Esercizi

1 Lanciare uno script che stampi il vostro nome e cognome

2 Creare un array i cui elementi siano gli interi che compongono ilvostro numero di matricola

3 Sia X la lunghezza dellrsquoarray del punto precedente Creare un array diX elementi equispaziati lrsquouno dallrsquoaltro di 15

4 Creare un array di X elementi equispaziati nellrsquointervallo tra 1 e 3

5 Ottenere gli array dati dalla somma tra lrsquoarray del punto 2 e quello delpunto 3 e quello dato dalla moltiplicazione tra punto 3 e punto 4

6 Ottenere per ciascuno dei due array del punto 5 un array mascherache in corrispondenza dei numeri divisibili per 3 abbia True Falsealtrimenti

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 18 88

Pandas - Series (1)

Pandas (httpspandaspydataorg) e una libreria Python chefornisce strutture dati e strumenti relativi esclusivamente allrsquoanalisi deidatiUna Series e un array monodimensionale ed etichettato Rappresenta unaserie di osservazioni di un certo carattere fatto su un insieme di individui

a 00

b 10

c 20

d 30

e 40

f 50

g 60

h 70

Name serie di esempio dtype float64

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 19 88

Pandas - Series (2)

pandasSeries (data index dtype name )

data contiene i dati che si vuole inserire nella serie

index della stessa lunghezza di data contiene le etichette

dtype permette di specificare il tipo che i dati devono assumere

name permette di dare un nome alla Series

gtgtgt import pandas as pd

gtgtgt import numpy as np

gtgtgt oss = nparange(8)

gtgtgt etic = [rsquoarsquorsquobrsquorsquocrsquorsquodrsquorsquoersquorsquofrsquorsquogrsquorsquohrsquo]

gtgtgt pdSeries(data=oss index=etic name=rsquoserie di esempiorsquo

dtype=float)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 20 88

Accesso ai dati di una Series

Specificando un valore (o una lista di valori) per lrsquoetichetta

gtgtgt sloc[[rsquohrsquorsquoarsquo]]

h 70

a 00

Specificando un valore (o una lista di valori) per la posizione

gtgtgt s[[56]]

f 50

g 60

Usando lo slicing (come per gli array numpy) per la posizione

gtgtgt s[36]

d 30

e 40

f 50

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 21 88

Pandas Series - Utils

Seriesmin() Seriesmax() restituiscono rispettivamente il minimoed massimo tra i valori della Series

Seriessum() restituisce la somma dei valori della Series

Seriessort values() restituisce una copia della Series ordinata pervalore

Seriessort index() restituisce una copia della Series ordinata peretichette

Seriessample(n) restituisce una Series di n elementi sceltiuniformemente a caso allrsquointerno di quelli della Series

Seriesappend([s1s2]) concatena una o piu Series a quella dipartenza

Seriescount() restituisce il numero dei valori della Series che nonsiano il valore NaN

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 22 88

Il valore NaN

Nan un oggetto del modulo numpy che puo rappresentare in una Seriesun dato di cui non e stato possibile fare unrsquoosservazioneOperazioni con un valore Nan hanno come risultato il valore Nan

gtgtgt oss = range(5)

gtgtgt ossappend(None)

gtgtgt pandasSeries(oss)

0 00

1 10

2 20

3 30

4 40

5 NaN

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 23 88

Esercizi

Creare la Series gol in modo che le etichette siano numeri dallrsquo1 al 23 Idati raccolti siano numeri interi tra 0 e 30 scelti casualmente (scarica ilnotebook) La Series rappresenta i gol segnati da ciascun giocatore diuna societa calcistica nella stagione appena passata Lrsquoetichettacorrisponde al numero di maglia del giocatore Ottenere

1 I gol segnati dal capocannoniere2 Chi non ha mai fatto gol durante lrsquoanno3 La statistica del punto 2 per i soli titolari (numeri dallrsquo1 allrsquo11) e per

le sole riserve (dal 12 al 23)4 La statistica del punto 2 per i soli attaccanti (numeri dalrsquo9 allrsquo11)5 I gol segnati dai giocatori coi numeri di maglia 5 9 10 14 (somma)6 Chi ha segnato piu di 10 gol e chi ha segnato esattamente 10 gol7 Una copia della Series ordinata secondo i gol effettuati8 Una stampa dei primi 5 cannonieri e degli ultimi 59 Una copia della Series ordinata in modo discendente secondo il

numero di maglia

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 24 88

File csv

Il formato csv (comma-separated value) e un formato utilizzato perrappresentare una tabella di dati e favorirne lrsquoimportazione e lrsquoesportazioneUn file csv e scritto nella seguente forma

titolopaeseannoduratagenerevoto

Guerre StellariUSA1977121Fantascienza4

Lrsquoimpero colpisce ancoraUSA1980124Fantascienza4

Il ritorno dello JediUSA1983Fantascienza35

Profondo RossoITA1975Horror35

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 25 88

Leggere csv

La funzione read csv() di Pandas puo essere utilizzata per leggere unfile di formato csv Tra i vari parametri che passiamo in input unoparticolarmente importante e sep che indica il carattere utilizzato perseparare le colonne (default e rsquorsquo)

gtgtgt df film = pdread csv(rsquofilmcsvrsquo)

gtgtgt df film

titolo paese anno durata genere voto

Il padrino USA 19720 1750 Drammatico 45

Pulp Fiction USA 19940 1540 Drammatico 40

Fight Club USA 19990 1390 Thriller 40

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 26 88

DataFrame

In Pandas un DataFrame e una struttura dati tabulare con assi etichettatile cui colonne possono contenere dati eterogenei da colonna a colonna

gtgtgt dataframe

esempio

Nome Cognome Eta Citta

Tommaso Rossi 300 Milano

Sergio Bianchi 340 Roma

Pasquale Verdi 290 Palermo

Antonio Gialli 300 Roma

Il DataFrame puo essere visto come un insieme di serie aventi lo stessoindice accostate una allrsquoaltra

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 27 88

Accesso colonne DataFrame - 1

Per conoscere le colonne di un DataFrame possiamo invocare il comandodfcolumns dove df e la variabile in cui abbiamo instanziato ilDataFramePer accedere ad una colonna dobbiamo specificarne il nome nel seguentemodo

gtgtgt df film[rsquogenerersquo]

titolo

Il padrino Drammatico

Pulp Fiction Drammatico

Fight Club Thriller

Selezionando unrsquounica colonna in output viene restituita una Series

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 28 88

Accesso colonne DataFrame - 2

Possiamo accedere allo stesso tempo a piu colonne

gtgtgt df film[[rsquopaesersquorsquoannorsquo]]

titolo paese anno

Il padrino USA 19720

Pulp Fiction USA 19940

Fight Club USA 19990

Selezionando piu colonne in output viene restituito un DataFrame

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 29 88

Accesso righe DataFrame - 1

Per indice numerico

gtgtgt df film[1518]

titolo paese anno durata genere voto

Il padrino USA 19720 1750 Drammatico 45

Pulp Fiction USA 19940 1540 Drammatico 40

Fight Club USA 19990 1390 Thriller 40

Quasi Amici FRA 20110 1120 Commedia 35

Per valore dellrsquoindice (assumiamo che titolo sia lrsquoindice delDataFrame)

gtgtgt df film[rsquoIl padrinorsquorsquoFight Clubrsquo]

titolo paese anno durata genere voto

Il padrino USA 19720 1750 Drammatico 45

Pulp Fiction USA 19940 1540 Drammatico 40

Fight Club USA 19990 1390 Thriller 40

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 30 88

loc amp iloc

Cosı come per le Series anche con i DataFrame possiamo usare loc ediloc per lrsquoaccesso ai dati

loc[rsquonome indicersquo] permette lrsquoaccesso ad una riga o piu righetramite nome dellrsquoindice

iloc[rsquoposizionersquo] permette lrsquoaccesso ad una o piu righe tramitela loro posizione

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 31 88

Accesso tramite unrsquoespressione logica

gtgtgt df film[rsquoannorsquo gt 1998]

titolo

Il padrino False

Pulp Fiction False

Fight Club True

Quasi Amici True

gtgtgt df film[df film[rsquoannorsquo] gt 1998]

titolo paese anno durata genere voto

Fight Club USA 19990 1390 Thriller 40

Quasi Amici FRA 20110 1120 Commedia 35

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 32 88

Metodi dei DataFrame

La classe DataFrame ha diversi metodi Elenchiamo qui i piu importanti

DataFrameappend() permette di estendere il DataFrame

DataFramedrop duplicates() restituisce un DataFrame senza righeduplicate

DataFramedropna() Eliminare i valori Nan da un DataFrame

DataFramesort values() permette di ordinare il DataFrame

DataFramemax() DataFramemin() DataFramemean()DataFramemedian()

Per la completa documentazione si puo utilizzare il comandohelp(pdDataFrame) oppure andare al seguente linkhttpspandaspydataorgpandas-docsstablegenerated

pandasDataFramehtml

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 33 88

Frequenze

La frequenza assoluta indica il numero di volte che una dataosservazione occorre in un campione

La frequenza relativa e un valore tra 0 e 1 che permette di valutare inmaniera piu efficace la frequenza di un osservazione Si calcoladividendo la frequenza assoluta per il numero totale di casi

Per calcolare questa quantita in Pandas possiamo utilizzare la funzionevalue counts() che opera su una Series

In alternativa si puo utilizzare la funzione pdcrosstab che calcolaqueste frequenze in automatico restituendole in output in un DataFrame

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 34 88

Esercizi

Utilizzando il file dati-ospedalicsv dai csv del laboratorio

1 Leggere il file e visualizzarlo in un DataFrame

2 Calcolare le frequenze assolute e relative dellrsquoattributo Regioneusando crosstab

3 Ottenere la singola serie relativa allrsquoattributo Regione e calcolarne lafrequenza assoluta e relativa senza usare crosstab

4 Estrarre un sottodataframe contenente le colonne Nome (attributoDenominazione Str Pubblica New) e Numero di medici (attributoMedici SSN) degli ospedali aventi meno di 200 medici

5 Visualizzare il nome degli ospedali della regione Lombardia

6 Calcolare il numero medio di ingegneri (Ingegneri SSN) presenti negliospedali campani

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 35 88

Esercizi

7 Calcolare la varianza del numero di assistenti sociali (Assistenti socialiSSN) negli ospedali con piu di 400 medici

8 Qual e lrsquoospedale con meno medici

9 Visualizzare in ordine alfabetico il nome dei primi 10 ospedali pernumero di medici

10 Visualizzare il numero degli ospedali che hanno dichiarato il numerodi odontoiatri (per cui il valore e diverso da NaN) (OdontoiatriUniversitari)

11 Visualizzare il numero degli ospedali che hanno dichiarato il numerodi odontoiatri (Odontoiatri Universitari) e per cui questo numero emaggiore di 0

12 Calcolare le frequenze assolute per lrsquoattributo Odontoiatri SSNTrasformare questo risultato in frequenze relative

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 36 88

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) SAD 20182019 January 12 2019 37 88

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) SAD 20182019 January 12 2019 38 88

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) SAD 20182019 January 12 2019 39 88

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) SAD 20182019 January 12 2019 40 88

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) SAD 20182019 January 12 2019 41 88

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) SAD 20182019 January 12 2019 42 88

Grafici con le Series

In generale possiamo tracciare diversi tipi di grafici con le Series

rsquolinersquo line plot (default)

rsquobarrsquo vertical bar plot

rsquobarhrsquo horizontal bar plot

rsquohistrsquo histogram

rsquoboxrsquo boxplot

rsquokdersquo Kernel Density Estimation plot

rsquodensityrsquo same as rsquokdersquo

rsquoarearsquo area plot

rsquopiersquo pie plot

Per saperne di piu consultare questo link

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 43 88

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) SAD 20182019 January 12 2019 44 88

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) SAD 20182019 January 12 2019 45 88

Boxplot

Rappresenta la distribuzione di un vettore di numeri cerchiando gli outlier

gtgtgt weight = heroes[rsquoWeightrsquo]

gtgtgt weightplotbox()

gtgtgt pltshow()

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 46 88

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) SAD 20182019 January 12 2019 47 88

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) SAD 20182019 January 12 2019 48 88

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) SAD 20182019 January 12 2019 49 88

Esercizi - 1

Utilizzando il file capellicsv dai csv del laboratorio

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) SAD 20182019 January 12 2019 50 88

Esercizi - 2

Utilizzando il file dati-ospedalicsv dai csv del laboratorio

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 e canipdf

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 51 88

Sample space

Un esperimento e qualsiasi processo che produce una realizzazione (oosservazione) Lrsquoinsieme di tutte le possibili realizzazioni di un esperimentoviene detto sample space ed indicato con S

lancio di 2 monete

S = (T T ) (T C) (C T ) (C C)

gara di 3 cavalli (ab c)

S = tutti i possibili ordinamenti di(ab c)= (ab c) (a cb) (c b a)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 52 88

Eventi

lancio di 2 monete

S = (T T ) (T C) (C T ) (C C)

A = 2 monete uguali

A = (T T ) (C C)

B = 2 monete diverse

B = Ac = (T C) (C T )

gara di 3 cavalli

A = cavallo a vincente

A = (ab c) (a c b)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 53 88

Probabilita - 1

Consideriamo un esperimento con sample space S Supponiamo che adogni evento A sia associato un numero chiamato probabilita di A edindicato con P(A) che soddisfa le seguenti proprieta

1 Per ogni evento A la probabilita di A e un numero tra 0 e 1

0 le P(A) le 1

2 La probabilita del sample space S e 1

P(S) = 1

3 La probabilita dellrsquounione di eventi disgiunti e uguale alla somma delleprobabilita di tali eventi

P(A cupB) = P(A) + P(B)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 54 88

Probabilita - 2

In generale 2 eventi potrebbero non essere disgiunti

P(A cupB) = P(A) + P(B) minus P(A capB)

Esempio un certo negozio accetta pagamenti o con carte di credito VISAo Mastercard

1 22 dei clienti ha Mastercard

2 58 dei clienti ha VISA

3 14 dei clienti ha entrambe

Qual e la probabilita che un cliente ha almeno una delle 2 carte

P(A) = 022 P(B) = 058

P(A cupB) = P(A) + P(B) minus P(A capB) = 022 + 058 minus 014 = 066

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 55 88

Probabilita condizionata - 1

Se alcune informazioni riguardo lrsquoesito di un esperimento sono disponibiliparliamo di probabilita condizionata

Esempio lancio di 2 dadi

S = (11) (12) (65) (66)

Probabilita che la somma sia 10 (evento B) sapendo che il primo dadomostra 4 (evento A)

(41) (42) (43) (44) (45) (46)

P(B ∣A) = 16

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 56 88

Probabilita condizionata - 2

In generale

P(B ∣A) = P(A capB)P(A)

Supponiamo lrsquoesito sia in A

Per essere anche in B deve essere in entrambi A e B cioe in A capB

Sapendo che A e gia accaduto il nostro nuovo sample space diventa A

la probabilita di A capB viene calcolata rispetto ad A

Nel caso dei dadi

P(B ∣A) = P((46))P((41) (42) (43) (44) (45) (46)) = 136

16= 1

6

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 57 88

Indipendenza

In generale sapere che A e accaduto modifica le chance che B accadaNel caso cio non avvenga cioe se P(B ∣A) = P(B) allora i 2 eventi sidicono indipendenti In questo caso sapere che A e accaduto nonaggiunge alcuna informazione

SiccomeP(A capB) = P(B ∣A)P(A)

Abbiamo che B e indipendente da A se

P(A capB) = P(B)P(A)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 58 88

Esercizi - 1

1 Svolgere gli esercizi di combinatoria

2 Si consideri il seguente esperimento casuale rdquosi lancia tre volte unamonetardquo Qual e lo spazio degli esiti di questo esperimento casualeSi scriva esplicitamente lrsquoevento rdquosi ottengono piu teste che crocirdquo

3 Si consideri il seguente esperimento casuale rdquoSi tirano due dadirdquo Siconsiderino gli eventi E = rdquola somma dei punteggi e disparirdquo F = rdquoilprimo dado realizza un 1rdquo e G = rdquola somma dei punteggi e 5rdquo Sidescrivano gli eventi E cap F E cup F F capG E cap F c e E cap F capG

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 59 88

Esercizi - 2

4 Si consideri il seguente esperimento casuale rdquoUn sistema e compostoda 4 componenti ciascuno dei quali o funziona oppure e guasto Siosserva lo stato dei componenti ottenendo un vettore (x1 x2 x3 x4)dove xi e 1 oppure 0 a seconda che il componente i-esimo funzionioppure nordquo

1 Da quanti elementi e formato lo spazio degli esiti2 Il sistema nel suo insieme funziona fintantoche entrambi i componenti

1 e 2 oppure entrambi i componenti 3 e 4 funzionano Specifica tuttigli esiti dellrsquoevento il rdquosistema funzionardquo

3 Sia E lrsquoevento rdquoi componenti 1 e 3 sono guastirdquo Quanti esiti contiene

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 60 88

Esercizi - 3

5 Si dimostri che in uno spazio degli esiti Ω dotato di una probabilita Pper ogni evento E F sub Ω vale la disuguaglianza seguente

P(E cap F ) ge P(E) + P(F ) minus 1

6 Un gruppo di 5 bambini e 10 bambine e in fila in ordine casuale nelsenso che tutte le 15 possibili permutazioni si suppongonoequiprobabili

1 Qual e la probabilita che il quarto della fila sia un bambino2 E il dodicesimo3 Qual e la probabilita che un determinato bambino occupi la terza

posizione

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 61 88

Esercizi - 4

7 In un comune vi sono 5 alberghi Se 3 persone devono scegliere unalbergo in cui pernottare qual e la probabilita che finiscano tutte inalberghi differenti Che cosa stiamo assumendo senza dirloesplicitamente

8 La media del salario annuale di un gruppo di 100 lavoratori impiegatinellrsquoamministrazione di una grande azienda e di 130000 dollari conuna deviazione standard di 20000 dollari Se si prende una persona acaso da questo gruppo cosa possiamo dire sulla probabilita che il suosalario sia

1 tra i 90000 e i 170000 dollari2 superiore a 150000 dollari

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 62 88

Esercizi - 5

9 In una certa regione vi sono due ditte che producono forni amicroonde Quelli della fabbrica A sono difettosi con probabilita 005mentre quelli della fabbrica B con probabilita 001 Supponi di averacquistato due apparecchi prodotti dalla stessa ditta che puo essere laA o la B con probabilita del 50 Se il primo microonde e difettosoqual e la probabilita condizionata che sia difettoso anche il secondo

10 Hai chiesto ad un vicino di innaffiare una piantina delicata mentre seiin vacanza Pensi che senza acqua la piantina muoia con probabilita08 mentre se innaffiata questa probabilita si ridurrebbe a 015 Latua fiducia che il vicino si ricordi di innaffiarla e del 90

1 Qual e la probabilita che la pianta sia ancora viva al tuo ritorno2 Se fosse morta quale sarebbe la probabilita che il vicino si sia

dimenticato di innaffiarla

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 63 88

Esercizi - 6

11 Una compagnia di assicurazioni classifica i suoi clienti in tre fascebasso rischio medio rischio alto rischio Le sue statistiche indicanoche le probabilita che un cliente delle tre fasce abbia un incidenteentro un periodo di un anno sono rispettivamente 005 015 e 030Se il 20 dei clienti sono a basso rischio il 50 a medio rischio e il30 ad alto rischio che percentuale dei clienti avra mediamenteincidenti in un lasso di un anno Se un cliente non ha avuto incidentinel 1987 qual e la probabilita che appartenga a ciascuna delle trefasce

12 Se un votante scelto a caso e favorevole ad una certa riforma conprobabilita di 07 qual e la probabilita che su 10 votanti esattamente7 siano favorevoli

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 64 88

Variabili aleatorie

Una variabile aleatoria (o anche variabile aleatoria) e una variabile chepuo assumere valori diversi in dipendenza da qualche fenomeno aleatorio

fenomeno lancio di 2 dadivariabile aleatoria somma dei 2 dadi

fenomeno 3 lanci di una monetavariabile aleatoria numero di rdquotesterdquo complessivo

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 65 88

Funzione di Ripartizione

Sia X una variabile aleatoria Si chiama funzione di ripartizione di X lafunzione F che associa ad ogni numero reale a la probabilita che X siaminore o uguale ad a cioe P(X le a) = FX (a)

Nel caso della moneta (fair) lanciata 3 volte (X indica il numero di testecomplessivo)

FX (a) =

⎧⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎨⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎩

0 if a lt 0

18 per 0 le a lt 1

18 + 38 = 48 per 1 le a lt 2

48 + 38 = 78 per 2 le a lt 3

88 = 1 per a ge 3

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 66 88

Funzione di densita o di massa

Sia X una variabile aleatoria Si chiama funzione di densita di X lafunzione f che associa ad ogni numero reale a la probabilita che X siauguale ad a indicata con fX (a)

Nel caso della moneta (fair) lanciata 3 volte (X indica il numero di testecomplessivo)

fX (a) =

⎧⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎨⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎩

18 per a = 0

38 per a = 1

38 per a = 2

18 per a = 3

0 altrimenti

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 67 88

Valore Atteso

Chiamato anche media (expectation in inglese) e appunto una mediapesata dei possibili valori di una variabile aleatoria Il peso dato a ciascunvalore e la probabilita data a quello specifico valore

E[X ] =sumi

aiP(X = ai)

Esempio dado truccato

valore 6 con probabilita 712

valori da 1 a 5 con probabilita 112

La variabile aleatoria X indica la faccia risultante dal lancio di un dado

E[X ] = 1

12lowast 1 + 1

12lowast 2 + 1

12lowast 3 + 1

12lowast 4 + 1

12lowast 5 + 7

12lowast 6 = 475

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 68 88

Valore Atteso - Proprieta

Sia X una variabile aleatoria con valore atteso E[X ] Se c e una costanteallora anche cX e X + c sono variabili casuali In particolare valgono leseguenti proprieta

E[cX ] = cE[X ]E[X + c] = E[X ] + c

Sia Y una variabile aleatoria Allora

E[X +Y ] = E[X ] +E[Y ]se e solo se X e Y sono independenti

E[XY ] = E[X ]E[Y ]

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 69 88

Varianza

Ersquo il valore atteso del quadrato della differenza tra la variabile aleatoria e ilsuo valore atteso

Var(X ) = E[(X minusE[X ])2] = E[X 2] minus (E[X ])2

La radice quadrata viene detta deviazione standard di X

Esempio dado truccato

E[X 2] = 1

12lowast 12 + 1

12lowast 22 + 1

12lowast 32 + 1

12lowast 42 + 1

12lowast 52 + 7

12lowast 62 ≃ 255

Var(X ) = E[X 2] minus (E[X ])2 ≃ 255 minus 4752 ≃ 3

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 70 88

Varianza - proprieta

Sia X una variabile aleatoria e c una costante Allora valgono le seguentiproprieta

1 Var(cX ) = c2Var(X )

2 Var(X + c) = Var(X )

NOTA

Var(X +X ) ne Var(X ) +Var(X )

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 71 88

Covarianza

Siano X Y due variabili aleatorie con valore atteso rispettivamenteE[X ] = microX e E[Y ] = microY La covarianza e definita come segue

Cov(X Y ) = E[(X minus microX )(Y minus microY )] = = E[XY ] minus microXmicroY

Proprieta

1 Cov(X Y ) = Cov(Y X )2 Cov(X X ) = Var(X )3 Sia a una costante allora

Cov(aX Y ) = aCov(X Y )

4 Sia Z una variabile aleatoria allora

Cov(X + Z Y ) = Cov(X Y ) + Cov(Z Y )

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 72 88

Esercizi - 1

1 Consideriamo una variabile aleatoria X che puo assumere i valori 12o 3 Se sappiamo che

fX (1) = 1

3 fX (2) = 3

7

1 Quanto vale fX (3)2 Disegnare il grafico di questa funzione di massa3 Disegnare il grafico della relativa funzione di ripartizione

2 Dimostrare che se X1 e X2 hanno la stessa distribuzione allora

Cov(X1 +X2X1 minusX2) = 0

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 73 88

Esercizi - 2

3 La funzione di ripartizione di X e definita come segue

FX (x) =

⎧⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎨⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎩

0 per x le 0

x2 per 0 le x lt 1

23 per 1 le x lt 2

1112 per 2 le x lt 3

1 per x ge 3

Se ne tracci il graficoQuanto vale P(X gt 12)Quanto vale P(2 le X le 4)Quanto vale P(X le 3)Quanto vale P(X = 1)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 74 88

Esercizi - 3

4 Un tipo di prodotti vengono classificati a seconda dei loro difetti edella fabbrica che li ha prodotti Sia X1 il numero (1 o 2) dellafabbrica e sia X2 il numero di difetti per pezzo (che possono essere da0 a 3) di un prodotto scelto a caso tra la totalita di quelli esistentiLa tabella seguente riporta la funzione di massa di probabilitacongiunta per queste due variabili aleatorie discrete Le righe siriferiscono alla variabile X1 mentre le colonne alla variabile X2

Trova le distribuzioni marginali di X1 e X2Calcola media e varianza di X2

0 1 2 31 18 116 316 182 116 116 18 14

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 75 88

Scipy

Scipy e un modulo che permette di utilizzare varie distribuzioni diprobabilita sia di tipo discreto che continuo

La sintassi generale e la seguente Scipystatsltnome distribuzionegt

rvs(size=z) restituisce un vettore di numeri casuali estrattisecondo la distribuzione di lunghezza z

pdf(x) restituisce il vettore della densita della distribuzionevalutata nei valori del vettore di input x (pmf per le discrete)

cdf(x) restituisce il vettore della funzione di ripartizione (ocumulativa) della distribuzione valutata nei valori del vettore di inputx

ppf(q) restituisce il vettore dei quantili della distribuzione valutatanei valori del vettore di input q

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 76 88

Variabili aleatorie discrete Binomiale

gtgtgt from scipystats import binom

gtgtgt rv = binom(n p)

rvrvs(x) restituisce un vettore di x numeri estratti secondo unadistribuzione Binomiale di parametri n p

rvpmf(x) restituisce la probabilita di ottenere esattamente x

successi in un esperimento dicotomico (01) ripetuto n volte con unaprobabilita di successo p (x puo essere un vettore)

rvcdf(q) restituisce il valore della funzione di ripartizione in q (qpuo essere un vettore)

rvppf(p) restituisce il valore del quantile di ordine p

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 77 88

Variabili aleatorie discrete Ipergeometrica

Supponiamo di avere M = 20 animali di cui n = 7 cani Se vogliamosapere la probabilita di trovare un dato numero di cani se scegliamoN = 12 dei 20 animali in maniera casuale possiamo usare una distribuzioneipergeometrica in questo modo

gtgtgt from scipystats import hypergeom

gtgtgt [M n N] = [20 7 12]

gtgtgt rv = hypergeom(M n N)

rvpmf(x) restituisce la probabilita di estrarre esattamente x cani

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 78 88

Variabili aleatorie discrete Geometrica

gtgtgt from scipystats import geom

gtgtgt rv = geom(p)

rvpmf(x) restituisce la probabilita di avere un successo dopoesattamente x insuccessi in una successione di esperimenti dicotomici(esito 01) con una probabilita di successo p (x puo essere un vettore)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 79 88

Variabili aleatorie discrete Poisson

La distribuzione di Poisson viene usata spesso come modello per il numerodi volte per cui un evento avviene in un dato intervallo di tempo (ospazio) Ad esempio si puo utilizzare per misurare il numero di chiamatericevute da un call center in una mattinata

gtgtgt from scipystats import poisson

gtgtgt mu = 2

gtgtgt rv = poisson(mu)

rvpmf(x) restituisce il seguente valore

f (x) = exp(minusmicro)microx

x

In questo caso x rappresenta il numero di eventi per cui si vuole calcolarela probabilita sapendo che in media ne accadono micro

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 80 88

Variabili aleatorie continue Uniforme

In Scipy la funzione uniforme e soltanto continua Questo significa chenella generazione di numeri casuali otterro dati di tipo float Possiamotuttavia simulare una variabile discreta estraendo la parte intera delrisultato ottenuto

gtgtgt from scipystats import uniform

gtgtgt rv = uniform()

Il comando uniform() crea una distribuzione uniforme nellrsquointervallo[01] Possiamo creare una distribuzione uniforme qualsiasi usandouniform(x y - x) per lrsquointervallo [x y]

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 81 88

Variabili aleatorie continue

norm(mu sigma) variabile Gaussiana (o Normale) di media micro edeviazione standard σ

expon(scale = 1 lambda) variabile Esponenziale di parametroλ

Altre distribuzioni (con relativa documentazione) disponibili suhttpsdocsscipyorgdocscipyreferencestatshtml

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 82 88

Esercizi - 1

1 Unrsquourna contiene 10 palline di cui 4 bianche e 6 nere Si eseguono 5estrazioni con reimmissione

1 Tracciare grafico della funzione massa di probabilita della variabilecasuale X = rdquonumero di palline bianche estratterdquo

2 Calcolare la probabilita di estrarre 2 palline bianche3 Calcolare la probabilita di estrarre al piu 2 palline bianche4 Calcolare la probabilita di estrarre almeno 2 palline bianche5 Qual e il numero minimo x tale che la probabilita di estrarre al piu x

palline bianche sia almeno 08

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 83 88

Esercizi - 2

2 Si eseguono 10 estrazioni senza reimmissione da unrsquourna

1 Tracciare il grafico della funzione massa di probabilita della variabilecasuale X = rdquonumero di palline bianche estratterdquo nei seguenti casi

1 lrsquourna contiene 100 palline di cui 20 bianche e le restanti nere2 lrsquourna contiene 100 palline di cui 2 bianche e le restanti nere

2 Tracciare il grafico della funzione massa di probabilita della variabilecasuale X nel caso dellrsquourna 1 se si eseguono 25 estrazioni

3 Consideriamo lrsquourna 1 e N = 10 estrazioni Si aumenti il numero totaleM di palline nellrsquourna mantenendo uguale a 02 la frazione di pallinebianche Per ciascun valore di M confrontare graficamente ladistribuzione di probabilita del numero di palline bianche estratte nelcaso di estrazioni con e senza reimmissione Provare con 20 40 e 200palline bianche

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 84 88

Esercizi - 3

3 Calcolare la probabilita di ottenere piu teste che croci lanciando 7volte una moneta truccata con probabilita di avere croce pari a 045

4 Calcolare la probabilita di avere almeno 3 sei lanciando 5 dadi a 12facce

5 Calcolare la probabilita di estrarre 20 euro da un sacco contenente 47monete da 1 centesimo e 53 da 2 euro estraendo (uniformemente) acaso 10 monete senza reinserirle

6 Un grammo di uranio emette mediamente 2152 particelle α ognimillisecondo Qual e con buona approssimazione la probabilita che ungrammo di uranio emetta al piu 2000 particelle α in un millisecondo

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 85 88

Esercizi - 4

7 Un uomo si risveglia in mezzo al deserto senza acqua Dopo ogniminuto ha una probabilita del 3 di perdere conoscenza per via dellecondizioni estreme Calcolare la probabilita che lrsquouomo perdaconoscenza dopo almeno due ore e la probabilita che lrsquouomo perdaconoscenza dopo esattamente un quarto drsquoora

8 Sia X una variabile aleatoria normale di parametri micro = 10 e σ = 36Calcola

1 P(X gt 5)2 P(4 le X le 16)3 P(X le 8)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 86 88

Esercizi - 5

9 Il numero di errori tipografici per pagina di una certa rivista segue unadistribuzione di Poisson Sapendo che mediamente sono presenti 02errori per pagina determinare la probabilita che una pagina contenga

1 nessun refuso2 piu refusi

10 Arrivi alla fermata dellrsquoautobus alle 1000 e sei certo che ne passerauno in un momento distribuito uniformemente tra le 1000 e le 1030

1 Qual e la probabilita che tu debba aspettare piu di 10 minuti2 Se alle 1015 lrsquoautobus non e ancora arrivato qual e la probabilita che

tu debba aspettare almeno altri 10 minuti

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 87 88

Esercizi - 6

11 Il signor Jones e convinto che il tempo di vita di una automobile (inmigliaia di chilometri percorse) sia una variabile aleatoria esponenzialedi parametro 120 Il signor Smith ha una macchina usata da vendereche ha percorso circa 10 000 chilometri

1 Se il signor Jones decide di comprarla che probabilita ha di farle farealmeno altri 20 000 chilometri prima che sia da buttare

2 Il modello assunto dal signor Jones e ragionevole

12 Sia X una variabile casuale binomiale di parametri n = 100 e p = 07

1 Tracciate la funzione di ripartizione di X2 Calcolate il primo quartile il quantile di ordine 09 e la mediana di X3 Calcolare la probabilita P(X le 60)4 Calcolare la probabilita P(X le 88)5 Trovare il piu piccolo valore x tale che P(X le x) ge 09

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 88 88

  • Lezione 1
    • Script in Python
    • Numpy
    • Esercizi
    • Pandas
    • Esercizi
      • Lezione 2
        • File csv
        • DataFrame
        • Accesso ai DataFrame
        • Frequenze
        • Esercizi
          • Lezione 3
            • Matplotlib
            • Grafici a Barre
            • Istogrammi
            • Cumulativa empirica
            • Boxplot
            • QQplot
            • Diagramma di Pareto
            • Esercizi
              • Lezione 4
                • Definizioni
                • Probabilitagrave condizionata
                • Indipendenza
                • Esercizi
                  • Lezione 5
                    • Variabili Aleatorie
                    • Funzione di Ripartizione
                    • Funzione di Densitagrave
                    • Valore Atteso
                    • Varianza
                    • Covarianza
                    • Esercizi
                      • Lezione 6
                        • Scipy - Variabili Discrete
                        • Scipy - Variabili continue
                        • Esercizi

Interprete interattivo - 2

La funzione exit() e digitata per uscire dallrsquoambiente interprete (o inalternativa ctrl + d cmd + d)

gtgtgt print(Hello world)

Hello world

gtgtgt

dottorandodottorando-Lenovo-Y50-70 $

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 6 88

Script

Usare lrsquointerprete interattivo non e la maniera piu comoda perprogrammareE possibile lanciare un programma python (filepy) eseguendo ilcomando python ltnomefilepygt dalla cartella in cui si trova il filepy

dottorandodottorando-Lenovo-Y50-70 Scrivania$ python

testpy

My first script in Python

dottorandodottorando-Lenovo-Y50-70 Scrivania$

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 7 88

Variabili in Python - 1

Python e dinamicamente tipato e fortemente tipatoUna variabile inizia ad esistere nel momento in cui le viene assegnato unvalore che ne determina il tipo

gtgtgt a=10000

gtgtgt type(a)

lttype lsquointrsquogt

gtgtgt len(a)

Traceback (most recent call last)

File ltstdingt line 1 in ltmodulegt

TypeError object of type rsquointrsquo has no len()

gtgtgt

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 8 88

Variabili in Python - 2

Riferirsi ad una variabile inesistente (a cui non e ancora stato assegnato unvalore) genera un errore

gtgtgt b

Traceback (most recent call last)

File ltstdingt line 1 in ltmodulegt

NameError name rsquobrsquo is not defined

gtgtgt

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 9 88

Funzione Help

Per aprire la documentazione a riguardo di un particolare oggetto metodoo attributo si puo invocare la funzione help(rdquonomerdquo) con il nomedellrsquooggetto che stiamo cercando

gtgtgt help(str)

Help on class str in module builtin

class str(basestring)

| str(object=rsquorsquo) -gt string

|

| Return a nice string representation of the object

| If the argument is a string the return value is the

same object

|

Si esce dal manuale interattivo premendo q

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 10 88

Tipi Predefiniti in Python

Stringhe (str) rdquoquesta e una stringardquo rdquoquesta purerdquo

Dizionari (dict) lsquochiaversquo valoreTuple (tuple) (1 2 3 1 rsquociaorsquo)

Liste (list) [1 2 3 4 rsquopipporsquo]

Set (set) (1 2 3)

Interi (int) 1 2 3

Float (float) 15 314 2718281828459045

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 11 88

Numpy

Il modulo numpy (httpwwwnumpyorg) mette a disposizione unastruttura dati creata appositamente per il calcolo scientifico

ArrayUn array e un contenitore di dati omogenei cioe dello stesso tipo Se sitenta di costruire un array con dati di tipo diverso questi vengonoldquotrasformatirdquo nel piu piccolo tipo adatto a contenerli tutti

gtgtgt import numpy as np

gtgtgt nparray( [146810] )

array([ 1 4 68 10 ])

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 12 88

Creazione di Array - 1

numpyarange(x) restituisce un array contenente gli interi da 0 a x minus 1

gtgtgt numpyarange(5)

array([0 1 2 3 4])

numpyarange(start stop step) permette di scegliere gli estremi dellasequenza contenuta nellrsquoarray e il passo tra un numero ed il successivo

gtgtgt numpyarange(262)

array([2 4])

gtgtgt numpyarange(2-3-1)

array([ 2 1 0 -1 -2])

numpylinspace(start stop n) permette di scegliere gli estremi e quantinumeri devono comparire allrsquointerno della sequenza

gtgtgt numpylinspace(014)

array)[0 03333333 066666667 1])

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 13 88

Creazione di Array - 2

numpyones(rdquotuplardquo) restuituisce un array di 1 date le dimensionispecificate nella tupla come argomento

gtgtgt numpyones( (15) )

array([1 1 1 1 1])

numpyzeros(rdquotuplardquo) restuituisce un array di 0 date le dimensionispecificate nella tupla come argomento

gtgtgt numpyzeros( (25) )

array([[0 0 0 0 0] [0 0 0

0 0]])

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 14 88

Operazioni con Array

Applicando un operazione logica ad un array si ottiene come risposta unarray di tipo booleano contenente nella posizione i-esima il risultatodellrsquoespressione logica valutata per lrsquoelemento i-esimo dellrsquoarray

gtgtgt numpyarange(5) gt 3

array([False False False False True] dtype=bool)

Le operazioni + - tra due array vengono eseguite elemento perelemento (gli array devono avere le stesse dimensioni)

gtgtgt numpyarange(5) + numpylinspace(025)

array([ 0 15 3 45 6 ])

gtgtgt numpyarange(5) 2

array([0 2 4 6 8])

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 15 88

Selezioni di un sottoinsieme di elementi

Ad un array e possibile accedere in tutti i modi con cui e possibile accederead una lista ad esempio

Ottenere una tupla di elementi

gtgtgt a[2] a[-1] a[36]

(2 9 array([3 4 5]))

Slicing [startstopstep]

gtgtgt a[293]

array([2 5 8])

gtgtgt a[2]

array([0 2 4 6 8])

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 16 88

Accesso con maschere booleane

Specificando tra [ ] un array di tipo booleano selezioniamo dallrsquoarray glielementi la cui posizione corrisponde ad un True nellrsquoarray di tipobooleano (che prende il nome di maschera)

gtgtgt a = numpyarange(10)

gtgtgt mask = a2 == 0

gtgtgt mask

array([ True False True False True False True

False True False] dtype=bool)

gtgtgt a[mask]

array([0 2 4 6 8])

o in maniera piu compatta

gtgtgt a[a2 == 0]

array([0 2 4 6 8])

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 17 88

Esercizi

1 Lanciare uno script che stampi il vostro nome e cognome

2 Creare un array i cui elementi siano gli interi che compongono ilvostro numero di matricola

3 Sia X la lunghezza dellrsquoarray del punto precedente Creare un array diX elementi equispaziati lrsquouno dallrsquoaltro di 15

4 Creare un array di X elementi equispaziati nellrsquointervallo tra 1 e 3

5 Ottenere gli array dati dalla somma tra lrsquoarray del punto 2 e quello delpunto 3 e quello dato dalla moltiplicazione tra punto 3 e punto 4

6 Ottenere per ciascuno dei due array del punto 5 un array mascherache in corrispondenza dei numeri divisibili per 3 abbia True Falsealtrimenti

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 18 88

Pandas - Series (1)

Pandas (httpspandaspydataorg) e una libreria Python chefornisce strutture dati e strumenti relativi esclusivamente allrsquoanalisi deidatiUna Series e un array monodimensionale ed etichettato Rappresenta unaserie di osservazioni di un certo carattere fatto su un insieme di individui

a 00

b 10

c 20

d 30

e 40

f 50

g 60

h 70

Name serie di esempio dtype float64

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 19 88

Pandas - Series (2)

pandasSeries (data index dtype name )

data contiene i dati che si vuole inserire nella serie

index della stessa lunghezza di data contiene le etichette

dtype permette di specificare il tipo che i dati devono assumere

name permette di dare un nome alla Series

gtgtgt import pandas as pd

gtgtgt import numpy as np

gtgtgt oss = nparange(8)

gtgtgt etic = [rsquoarsquorsquobrsquorsquocrsquorsquodrsquorsquoersquorsquofrsquorsquogrsquorsquohrsquo]

gtgtgt pdSeries(data=oss index=etic name=rsquoserie di esempiorsquo

dtype=float)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 20 88

Accesso ai dati di una Series

Specificando un valore (o una lista di valori) per lrsquoetichetta

gtgtgt sloc[[rsquohrsquorsquoarsquo]]

h 70

a 00

Specificando un valore (o una lista di valori) per la posizione

gtgtgt s[[56]]

f 50

g 60

Usando lo slicing (come per gli array numpy) per la posizione

gtgtgt s[36]

d 30

e 40

f 50

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 21 88

Pandas Series - Utils

Seriesmin() Seriesmax() restituiscono rispettivamente il minimoed massimo tra i valori della Series

Seriessum() restituisce la somma dei valori della Series

Seriessort values() restituisce una copia della Series ordinata pervalore

Seriessort index() restituisce una copia della Series ordinata peretichette

Seriessample(n) restituisce una Series di n elementi sceltiuniformemente a caso allrsquointerno di quelli della Series

Seriesappend([s1s2]) concatena una o piu Series a quella dipartenza

Seriescount() restituisce il numero dei valori della Series che nonsiano il valore NaN

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 22 88

Il valore NaN

Nan un oggetto del modulo numpy che puo rappresentare in una Seriesun dato di cui non e stato possibile fare unrsquoosservazioneOperazioni con un valore Nan hanno come risultato il valore Nan

gtgtgt oss = range(5)

gtgtgt ossappend(None)

gtgtgt pandasSeries(oss)

0 00

1 10

2 20

3 30

4 40

5 NaN

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 23 88

Esercizi

Creare la Series gol in modo che le etichette siano numeri dallrsquo1 al 23 Idati raccolti siano numeri interi tra 0 e 30 scelti casualmente (scarica ilnotebook) La Series rappresenta i gol segnati da ciascun giocatore diuna societa calcistica nella stagione appena passata Lrsquoetichettacorrisponde al numero di maglia del giocatore Ottenere

1 I gol segnati dal capocannoniere2 Chi non ha mai fatto gol durante lrsquoanno3 La statistica del punto 2 per i soli titolari (numeri dallrsquo1 allrsquo11) e per

le sole riserve (dal 12 al 23)4 La statistica del punto 2 per i soli attaccanti (numeri dalrsquo9 allrsquo11)5 I gol segnati dai giocatori coi numeri di maglia 5 9 10 14 (somma)6 Chi ha segnato piu di 10 gol e chi ha segnato esattamente 10 gol7 Una copia della Series ordinata secondo i gol effettuati8 Una stampa dei primi 5 cannonieri e degli ultimi 59 Una copia della Series ordinata in modo discendente secondo il

numero di maglia

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 24 88

File csv

Il formato csv (comma-separated value) e un formato utilizzato perrappresentare una tabella di dati e favorirne lrsquoimportazione e lrsquoesportazioneUn file csv e scritto nella seguente forma

titolopaeseannoduratagenerevoto

Guerre StellariUSA1977121Fantascienza4

Lrsquoimpero colpisce ancoraUSA1980124Fantascienza4

Il ritorno dello JediUSA1983Fantascienza35

Profondo RossoITA1975Horror35

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 25 88

Leggere csv

La funzione read csv() di Pandas puo essere utilizzata per leggere unfile di formato csv Tra i vari parametri che passiamo in input unoparticolarmente importante e sep che indica il carattere utilizzato perseparare le colonne (default e rsquorsquo)

gtgtgt df film = pdread csv(rsquofilmcsvrsquo)

gtgtgt df film

titolo paese anno durata genere voto

Il padrino USA 19720 1750 Drammatico 45

Pulp Fiction USA 19940 1540 Drammatico 40

Fight Club USA 19990 1390 Thriller 40

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 26 88

DataFrame

In Pandas un DataFrame e una struttura dati tabulare con assi etichettatile cui colonne possono contenere dati eterogenei da colonna a colonna

gtgtgt dataframe

esempio

Nome Cognome Eta Citta

Tommaso Rossi 300 Milano

Sergio Bianchi 340 Roma

Pasquale Verdi 290 Palermo

Antonio Gialli 300 Roma

Il DataFrame puo essere visto come un insieme di serie aventi lo stessoindice accostate una allrsquoaltra

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 27 88

Accesso colonne DataFrame - 1

Per conoscere le colonne di un DataFrame possiamo invocare il comandodfcolumns dove df e la variabile in cui abbiamo instanziato ilDataFramePer accedere ad una colonna dobbiamo specificarne il nome nel seguentemodo

gtgtgt df film[rsquogenerersquo]

titolo

Il padrino Drammatico

Pulp Fiction Drammatico

Fight Club Thriller

Selezionando unrsquounica colonna in output viene restituita una Series

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 28 88

Accesso colonne DataFrame - 2

Possiamo accedere allo stesso tempo a piu colonne

gtgtgt df film[[rsquopaesersquorsquoannorsquo]]

titolo paese anno

Il padrino USA 19720

Pulp Fiction USA 19940

Fight Club USA 19990

Selezionando piu colonne in output viene restituito un DataFrame

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 29 88

Accesso righe DataFrame - 1

Per indice numerico

gtgtgt df film[1518]

titolo paese anno durata genere voto

Il padrino USA 19720 1750 Drammatico 45

Pulp Fiction USA 19940 1540 Drammatico 40

Fight Club USA 19990 1390 Thriller 40

Quasi Amici FRA 20110 1120 Commedia 35

Per valore dellrsquoindice (assumiamo che titolo sia lrsquoindice delDataFrame)

gtgtgt df film[rsquoIl padrinorsquorsquoFight Clubrsquo]

titolo paese anno durata genere voto

Il padrino USA 19720 1750 Drammatico 45

Pulp Fiction USA 19940 1540 Drammatico 40

Fight Club USA 19990 1390 Thriller 40

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 30 88

loc amp iloc

Cosı come per le Series anche con i DataFrame possiamo usare loc ediloc per lrsquoaccesso ai dati

loc[rsquonome indicersquo] permette lrsquoaccesso ad una riga o piu righetramite nome dellrsquoindice

iloc[rsquoposizionersquo] permette lrsquoaccesso ad una o piu righe tramitela loro posizione

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 31 88

Accesso tramite unrsquoespressione logica

gtgtgt df film[rsquoannorsquo gt 1998]

titolo

Il padrino False

Pulp Fiction False

Fight Club True

Quasi Amici True

gtgtgt df film[df film[rsquoannorsquo] gt 1998]

titolo paese anno durata genere voto

Fight Club USA 19990 1390 Thriller 40

Quasi Amici FRA 20110 1120 Commedia 35

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 32 88

Metodi dei DataFrame

La classe DataFrame ha diversi metodi Elenchiamo qui i piu importanti

DataFrameappend() permette di estendere il DataFrame

DataFramedrop duplicates() restituisce un DataFrame senza righeduplicate

DataFramedropna() Eliminare i valori Nan da un DataFrame

DataFramesort values() permette di ordinare il DataFrame

DataFramemax() DataFramemin() DataFramemean()DataFramemedian()

Per la completa documentazione si puo utilizzare il comandohelp(pdDataFrame) oppure andare al seguente linkhttpspandaspydataorgpandas-docsstablegenerated

pandasDataFramehtml

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 33 88

Frequenze

La frequenza assoluta indica il numero di volte che una dataosservazione occorre in un campione

La frequenza relativa e un valore tra 0 e 1 che permette di valutare inmaniera piu efficace la frequenza di un osservazione Si calcoladividendo la frequenza assoluta per il numero totale di casi

Per calcolare questa quantita in Pandas possiamo utilizzare la funzionevalue counts() che opera su una Series

In alternativa si puo utilizzare la funzione pdcrosstab che calcolaqueste frequenze in automatico restituendole in output in un DataFrame

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 34 88

Esercizi

Utilizzando il file dati-ospedalicsv dai csv del laboratorio

1 Leggere il file e visualizzarlo in un DataFrame

2 Calcolare le frequenze assolute e relative dellrsquoattributo Regioneusando crosstab

3 Ottenere la singola serie relativa allrsquoattributo Regione e calcolarne lafrequenza assoluta e relativa senza usare crosstab

4 Estrarre un sottodataframe contenente le colonne Nome (attributoDenominazione Str Pubblica New) e Numero di medici (attributoMedici SSN) degli ospedali aventi meno di 200 medici

5 Visualizzare il nome degli ospedali della regione Lombardia

6 Calcolare il numero medio di ingegneri (Ingegneri SSN) presenti negliospedali campani

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 35 88

Esercizi

7 Calcolare la varianza del numero di assistenti sociali (Assistenti socialiSSN) negli ospedali con piu di 400 medici

8 Qual e lrsquoospedale con meno medici

9 Visualizzare in ordine alfabetico il nome dei primi 10 ospedali pernumero di medici

10 Visualizzare il numero degli ospedali che hanno dichiarato il numerodi odontoiatri (per cui il valore e diverso da NaN) (OdontoiatriUniversitari)

11 Visualizzare il numero degli ospedali che hanno dichiarato il numerodi odontoiatri (Odontoiatri Universitari) e per cui questo numero emaggiore di 0

12 Calcolare le frequenze assolute per lrsquoattributo Odontoiatri SSNTrasformare questo risultato in frequenze relative

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 36 88

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) SAD 20182019 January 12 2019 37 88

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) SAD 20182019 January 12 2019 38 88

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) SAD 20182019 January 12 2019 39 88

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) SAD 20182019 January 12 2019 40 88

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) SAD 20182019 January 12 2019 41 88

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) SAD 20182019 January 12 2019 42 88

Grafici con le Series

In generale possiamo tracciare diversi tipi di grafici con le Series

rsquolinersquo line plot (default)

rsquobarrsquo vertical bar plot

rsquobarhrsquo horizontal bar plot

rsquohistrsquo histogram

rsquoboxrsquo boxplot

rsquokdersquo Kernel Density Estimation plot

rsquodensityrsquo same as rsquokdersquo

rsquoarearsquo area plot

rsquopiersquo pie plot

Per saperne di piu consultare questo link

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 43 88

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) SAD 20182019 January 12 2019 44 88

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) SAD 20182019 January 12 2019 45 88

Boxplot

Rappresenta la distribuzione di un vettore di numeri cerchiando gli outlier

gtgtgt weight = heroes[rsquoWeightrsquo]

gtgtgt weightplotbox()

gtgtgt pltshow()

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 46 88

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) SAD 20182019 January 12 2019 47 88

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) SAD 20182019 January 12 2019 48 88

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) SAD 20182019 January 12 2019 49 88

Esercizi - 1

Utilizzando il file capellicsv dai csv del laboratorio

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) SAD 20182019 January 12 2019 50 88

Esercizi - 2

Utilizzando il file dati-ospedalicsv dai csv del laboratorio

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 e canipdf

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 51 88

Sample space

Un esperimento e qualsiasi processo che produce una realizzazione (oosservazione) Lrsquoinsieme di tutte le possibili realizzazioni di un esperimentoviene detto sample space ed indicato con S

lancio di 2 monete

S = (T T ) (T C) (C T ) (C C)

gara di 3 cavalli (ab c)

S = tutti i possibili ordinamenti di(ab c)= (ab c) (a cb) (c b a)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 52 88

Eventi

lancio di 2 monete

S = (T T ) (T C) (C T ) (C C)

A = 2 monete uguali

A = (T T ) (C C)

B = 2 monete diverse

B = Ac = (T C) (C T )

gara di 3 cavalli

A = cavallo a vincente

A = (ab c) (a c b)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 53 88

Probabilita - 1

Consideriamo un esperimento con sample space S Supponiamo che adogni evento A sia associato un numero chiamato probabilita di A edindicato con P(A) che soddisfa le seguenti proprieta

1 Per ogni evento A la probabilita di A e un numero tra 0 e 1

0 le P(A) le 1

2 La probabilita del sample space S e 1

P(S) = 1

3 La probabilita dellrsquounione di eventi disgiunti e uguale alla somma delleprobabilita di tali eventi

P(A cupB) = P(A) + P(B)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 54 88

Probabilita - 2

In generale 2 eventi potrebbero non essere disgiunti

P(A cupB) = P(A) + P(B) minus P(A capB)

Esempio un certo negozio accetta pagamenti o con carte di credito VISAo Mastercard

1 22 dei clienti ha Mastercard

2 58 dei clienti ha VISA

3 14 dei clienti ha entrambe

Qual e la probabilita che un cliente ha almeno una delle 2 carte

P(A) = 022 P(B) = 058

P(A cupB) = P(A) + P(B) minus P(A capB) = 022 + 058 minus 014 = 066

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 55 88

Probabilita condizionata - 1

Se alcune informazioni riguardo lrsquoesito di un esperimento sono disponibiliparliamo di probabilita condizionata

Esempio lancio di 2 dadi

S = (11) (12) (65) (66)

Probabilita che la somma sia 10 (evento B) sapendo che il primo dadomostra 4 (evento A)

(41) (42) (43) (44) (45) (46)

P(B ∣A) = 16

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 56 88

Probabilita condizionata - 2

In generale

P(B ∣A) = P(A capB)P(A)

Supponiamo lrsquoesito sia in A

Per essere anche in B deve essere in entrambi A e B cioe in A capB

Sapendo che A e gia accaduto il nostro nuovo sample space diventa A

la probabilita di A capB viene calcolata rispetto ad A

Nel caso dei dadi

P(B ∣A) = P((46))P((41) (42) (43) (44) (45) (46)) = 136

16= 1

6

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 57 88

Indipendenza

In generale sapere che A e accaduto modifica le chance che B accadaNel caso cio non avvenga cioe se P(B ∣A) = P(B) allora i 2 eventi sidicono indipendenti In questo caso sapere che A e accaduto nonaggiunge alcuna informazione

SiccomeP(A capB) = P(B ∣A)P(A)

Abbiamo che B e indipendente da A se

P(A capB) = P(B)P(A)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 58 88

Esercizi - 1

1 Svolgere gli esercizi di combinatoria

2 Si consideri il seguente esperimento casuale rdquosi lancia tre volte unamonetardquo Qual e lo spazio degli esiti di questo esperimento casualeSi scriva esplicitamente lrsquoevento rdquosi ottengono piu teste che crocirdquo

3 Si consideri il seguente esperimento casuale rdquoSi tirano due dadirdquo Siconsiderino gli eventi E = rdquola somma dei punteggi e disparirdquo F = rdquoilprimo dado realizza un 1rdquo e G = rdquola somma dei punteggi e 5rdquo Sidescrivano gli eventi E cap F E cup F F capG E cap F c e E cap F capG

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 59 88

Esercizi - 2

4 Si consideri il seguente esperimento casuale rdquoUn sistema e compostoda 4 componenti ciascuno dei quali o funziona oppure e guasto Siosserva lo stato dei componenti ottenendo un vettore (x1 x2 x3 x4)dove xi e 1 oppure 0 a seconda che il componente i-esimo funzionioppure nordquo

1 Da quanti elementi e formato lo spazio degli esiti2 Il sistema nel suo insieme funziona fintantoche entrambi i componenti

1 e 2 oppure entrambi i componenti 3 e 4 funzionano Specifica tuttigli esiti dellrsquoevento il rdquosistema funzionardquo

3 Sia E lrsquoevento rdquoi componenti 1 e 3 sono guastirdquo Quanti esiti contiene

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 60 88

Esercizi - 3

5 Si dimostri che in uno spazio degli esiti Ω dotato di una probabilita Pper ogni evento E F sub Ω vale la disuguaglianza seguente

P(E cap F ) ge P(E) + P(F ) minus 1

6 Un gruppo di 5 bambini e 10 bambine e in fila in ordine casuale nelsenso che tutte le 15 possibili permutazioni si suppongonoequiprobabili

1 Qual e la probabilita che il quarto della fila sia un bambino2 E il dodicesimo3 Qual e la probabilita che un determinato bambino occupi la terza

posizione

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 61 88

Esercizi - 4

7 In un comune vi sono 5 alberghi Se 3 persone devono scegliere unalbergo in cui pernottare qual e la probabilita che finiscano tutte inalberghi differenti Che cosa stiamo assumendo senza dirloesplicitamente

8 La media del salario annuale di un gruppo di 100 lavoratori impiegatinellrsquoamministrazione di una grande azienda e di 130000 dollari conuna deviazione standard di 20000 dollari Se si prende una persona acaso da questo gruppo cosa possiamo dire sulla probabilita che il suosalario sia

1 tra i 90000 e i 170000 dollari2 superiore a 150000 dollari

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 62 88

Esercizi - 5

9 In una certa regione vi sono due ditte che producono forni amicroonde Quelli della fabbrica A sono difettosi con probabilita 005mentre quelli della fabbrica B con probabilita 001 Supponi di averacquistato due apparecchi prodotti dalla stessa ditta che puo essere laA o la B con probabilita del 50 Se il primo microonde e difettosoqual e la probabilita condizionata che sia difettoso anche il secondo

10 Hai chiesto ad un vicino di innaffiare una piantina delicata mentre seiin vacanza Pensi che senza acqua la piantina muoia con probabilita08 mentre se innaffiata questa probabilita si ridurrebbe a 015 Latua fiducia che il vicino si ricordi di innaffiarla e del 90

1 Qual e la probabilita che la pianta sia ancora viva al tuo ritorno2 Se fosse morta quale sarebbe la probabilita che il vicino si sia

dimenticato di innaffiarla

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 63 88

Esercizi - 6

11 Una compagnia di assicurazioni classifica i suoi clienti in tre fascebasso rischio medio rischio alto rischio Le sue statistiche indicanoche le probabilita che un cliente delle tre fasce abbia un incidenteentro un periodo di un anno sono rispettivamente 005 015 e 030Se il 20 dei clienti sono a basso rischio il 50 a medio rischio e il30 ad alto rischio che percentuale dei clienti avra mediamenteincidenti in un lasso di un anno Se un cliente non ha avuto incidentinel 1987 qual e la probabilita che appartenga a ciascuna delle trefasce

12 Se un votante scelto a caso e favorevole ad una certa riforma conprobabilita di 07 qual e la probabilita che su 10 votanti esattamente7 siano favorevoli

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 64 88

Variabili aleatorie

Una variabile aleatoria (o anche variabile aleatoria) e una variabile chepuo assumere valori diversi in dipendenza da qualche fenomeno aleatorio

fenomeno lancio di 2 dadivariabile aleatoria somma dei 2 dadi

fenomeno 3 lanci di una monetavariabile aleatoria numero di rdquotesterdquo complessivo

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 65 88

Funzione di Ripartizione

Sia X una variabile aleatoria Si chiama funzione di ripartizione di X lafunzione F che associa ad ogni numero reale a la probabilita che X siaminore o uguale ad a cioe P(X le a) = FX (a)

Nel caso della moneta (fair) lanciata 3 volte (X indica il numero di testecomplessivo)

FX (a) =

⎧⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎨⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎩

0 if a lt 0

18 per 0 le a lt 1

18 + 38 = 48 per 1 le a lt 2

48 + 38 = 78 per 2 le a lt 3

88 = 1 per a ge 3

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 66 88

Funzione di densita o di massa

Sia X una variabile aleatoria Si chiama funzione di densita di X lafunzione f che associa ad ogni numero reale a la probabilita che X siauguale ad a indicata con fX (a)

Nel caso della moneta (fair) lanciata 3 volte (X indica il numero di testecomplessivo)

fX (a) =

⎧⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎨⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎩

18 per a = 0

38 per a = 1

38 per a = 2

18 per a = 3

0 altrimenti

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 67 88

Valore Atteso

Chiamato anche media (expectation in inglese) e appunto una mediapesata dei possibili valori di una variabile aleatoria Il peso dato a ciascunvalore e la probabilita data a quello specifico valore

E[X ] =sumi

aiP(X = ai)

Esempio dado truccato

valore 6 con probabilita 712

valori da 1 a 5 con probabilita 112

La variabile aleatoria X indica la faccia risultante dal lancio di un dado

E[X ] = 1

12lowast 1 + 1

12lowast 2 + 1

12lowast 3 + 1

12lowast 4 + 1

12lowast 5 + 7

12lowast 6 = 475

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 68 88

Valore Atteso - Proprieta

Sia X una variabile aleatoria con valore atteso E[X ] Se c e una costanteallora anche cX e X + c sono variabili casuali In particolare valgono leseguenti proprieta

E[cX ] = cE[X ]E[X + c] = E[X ] + c

Sia Y una variabile aleatoria Allora

E[X +Y ] = E[X ] +E[Y ]se e solo se X e Y sono independenti

E[XY ] = E[X ]E[Y ]

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 69 88

Varianza

Ersquo il valore atteso del quadrato della differenza tra la variabile aleatoria e ilsuo valore atteso

Var(X ) = E[(X minusE[X ])2] = E[X 2] minus (E[X ])2

La radice quadrata viene detta deviazione standard di X

Esempio dado truccato

E[X 2] = 1

12lowast 12 + 1

12lowast 22 + 1

12lowast 32 + 1

12lowast 42 + 1

12lowast 52 + 7

12lowast 62 ≃ 255

Var(X ) = E[X 2] minus (E[X ])2 ≃ 255 minus 4752 ≃ 3

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 70 88

Varianza - proprieta

Sia X una variabile aleatoria e c una costante Allora valgono le seguentiproprieta

1 Var(cX ) = c2Var(X )

2 Var(X + c) = Var(X )

NOTA

Var(X +X ) ne Var(X ) +Var(X )

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 71 88

Covarianza

Siano X Y due variabili aleatorie con valore atteso rispettivamenteE[X ] = microX e E[Y ] = microY La covarianza e definita come segue

Cov(X Y ) = E[(X minus microX )(Y minus microY )] = = E[XY ] minus microXmicroY

Proprieta

1 Cov(X Y ) = Cov(Y X )2 Cov(X X ) = Var(X )3 Sia a una costante allora

Cov(aX Y ) = aCov(X Y )

4 Sia Z una variabile aleatoria allora

Cov(X + Z Y ) = Cov(X Y ) + Cov(Z Y )

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 72 88

Esercizi - 1

1 Consideriamo una variabile aleatoria X che puo assumere i valori 12o 3 Se sappiamo che

fX (1) = 1

3 fX (2) = 3

7

1 Quanto vale fX (3)2 Disegnare il grafico di questa funzione di massa3 Disegnare il grafico della relativa funzione di ripartizione

2 Dimostrare che se X1 e X2 hanno la stessa distribuzione allora

Cov(X1 +X2X1 minusX2) = 0

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 73 88

Esercizi - 2

3 La funzione di ripartizione di X e definita come segue

FX (x) =

⎧⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎨⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎩

0 per x le 0

x2 per 0 le x lt 1

23 per 1 le x lt 2

1112 per 2 le x lt 3

1 per x ge 3

Se ne tracci il graficoQuanto vale P(X gt 12)Quanto vale P(2 le X le 4)Quanto vale P(X le 3)Quanto vale P(X = 1)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 74 88

Esercizi - 3

4 Un tipo di prodotti vengono classificati a seconda dei loro difetti edella fabbrica che li ha prodotti Sia X1 il numero (1 o 2) dellafabbrica e sia X2 il numero di difetti per pezzo (che possono essere da0 a 3) di un prodotto scelto a caso tra la totalita di quelli esistentiLa tabella seguente riporta la funzione di massa di probabilitacongiunta per queste due variabili aleatorie discrete Le righe siriferiscono alla variabile X1 mentre le colonne alla variabile X2

Trova le distribuzioni marginali di X1 e X2Calcola media e varianza di X2

0 1 2 31 18 116 316 182 116 116 18 14

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 75 88

Scipy

Scipy e un modulo che permette di utilizzare varie distribuzioni diprobabilita sia di tipo discreto che continuo

La sintassi generale e la seguente Scipystatsltnome distribuzionegt

rvs(size=z) restituisce un vettore di numeri casuali estrattisecondo la distribuzione di lunghezza z

pdf(x) restituisce il vettore della densita della distribuzionevalutata nei valori del vettore di input x (pmf per le discrete)

cdf(x) restituisce il vettore della funzione di ripartizione (ocumulativa) della distribuzione valutata nei valori del vettore di inputx

ppf(q) restituisce il vettore dei quantili della distribuzione valutatanei valori del vettore di input q

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 76 88

Variabili aleatorie discrete Binomiale

gtgtgt from scipystats import binom

gtgtgt rv = binom(n p)

rvrvs(x) restituisce un vettore di x numeri estratti secondo unadistribuzione Binomiale di parametri n p

rvpmf(x) restituisce la probabilita di ottenere esattamente x

successi in un esperimento dicotomico (01) ripetuto n volte con unaprobabilita di successo p (x puo essere un vettore)

rvcdf(q) restituisce il valore della funzione di ripartizione in q (qpuo essere un vettore)

rvppf(p) restituisce il valore del quantile di ordine p

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 77 88

Variabili aleatorie discrete Ipergeometrica

Supponiamo di avere M = 20 animali di cui n = 7 cani Se vogliamosapere la probabilita di trovare un dato numero di cani se scegliamoN = 12 dei 20 animali in maniera casuale possiamo usare una distribuzioneipergeometrica in questo modo

gtgtgt from scipystats import hypergeom

gtgtgt [M n N] = [20 7 12]

gtgtgt rv = hypergeom(M n N)

rvpmf(x) restituisce la probabilita di estrarre esattamente x cani

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 78 88

Variabili aleatorie discrete Geometrica

gtgtgt from scipystats import geom

gtgtgt rv = geom(p)

rvpmf(x) restituisce la probabilita di avere un successo dopoesattamente x insuccessi in una successione di esperimenti dicotomici(esito 01) con una probabilita di successo p (x puo essere un vettore)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 79 88

Variabili aleatorie discrete Poisson

La distribuzione di Poisson viene usata spesso come modello per il numerodi volte per cui un evento avviene in un dato intervallo di tempo (ospazio) Ad esempio si puo utilizzare per misurare il numero di chiamatericevute da un call center in una mattinata

gtgtgt from scipystats import poisson

gtgtgt mu = 2

gtgtgt rv = poisson(mu)

rvpmf(x) restituisce il seguente valore

f (x) = exp(minusmicro)microx

x

In questo caso x rappresenta il numero di eventi per cui si vuole calcolarela probabilita sapendo che in media ne accadono micro

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 80 88

Variabili aleatorie continue Uniforme

In Scipy la funzione uniforme e soltanto continua Questo significa chenella generazione di numeri casuali otterro dati di tipo float Possiamotuttavia simulare una variabile discreta estraendo la parte intera delrisultato ottenuto

gtgtgt from scipystats import uniform

gtgtgt rv = uniform()

Il comando uniform() crea una distribuzione uniforme nellrsquointervallo[01] Possiamo creare una distribuzione uniforme qualsiasi usandouniform(x y - x) per lrsquointervallo [x y]

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 81 88

Variabili aleatorie continue

norm(mu sigma) variabile Gaussiana (o Normale) di media micro edeviazione standard σ

expon(scale = 1 lambda) variabile Esponenziale di parametroλ

Altre distribuzioni (con relativa documentazione) disponibili suhttpsdocsscipyorgdocscipyreferencestatshtml

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 82 88

Esercizi - 1

1 Unrsquourna contiene 10 palline di cui 4 bianche e 6 nere Si eseguono 5estrazioni con reimmissione

1 Tracciare grafico della funzione massa di probabilita della variabilecasuale X = rdquonumero di palline bianche estratterdquo

2 Calcolare la probabilita di estrarre 2 palline bianche3 Calcolare la probabilita di estrarre al piu 2 palline bianche4 Calcolare la probabilita di estrarre almeno 2 palline bianche5 Qual e il numero minimo x tale che la probabilita di estrarre al piu x

palline bianche sia almeno 08

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 83 88

Esercizi - 2

2 Si eseguono 10 estrazioni senza reimmissione da unrsquourna

1 Tracciare il grafico della funzione massa di probabilita della variabilecasuale X = rdquonumero di palline bianche estratterdquo nei seguenti casi

1 lrsquourna contiene 100 palline di cui 20 bianche e le restanti nere2 lrsquourna contiene 100 palline di cui 2 bianche e le restanti nere

2 Tracciare il grafico della funzione massa di probabilita della variabilecasuale X nel caso dellrsquourna 1 se si eseguono 25 estrazioni

3 Consideriamo lrsquourna 1 e N = 10 estrazioni Si aumenti il numero totaleM di palline nellrsquourna mantenendo uguale a 02 la frazione di pallinebianche Per ciascun valore di M confrontare graficamente ladistribuzione di probabilita del numero di palline bianche estratte nelcaso di estrazioni con e senza reimmissione Provare con 20 40 e 200palline bianche

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 84 88

Esercizi - 3

3 Calcolare la probabilita di ottenere piu teste che croci lanciando 7volte una moneta truccata con probabilita di avere croce pari a 045

4 Calcolare la probabilita di avere almeno 3 sei lanciando 5 dadi a 12facce

5 Calcolare la probabilita di estrarre 20 euro da un sacco contenente 47monete da 1 centesimo e 53 da 2 euro estraendo (uniformemente) acaso 10 monete senza reinserirle

6 Un grammo di uranio emette mediamente 2152 particelle α ognimillisecondo Qual e con buona approssimazione la probabilita che ungrammo di uranio emetta al piu 2000 particelle α in un millisecondo

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 85 88

Esercizi - 4

7 Un uomo si risveglia in mezzo al deserto senza acqua Dopo ogniminuto ha una probabilita del 3 di perdere conoscenza per via dellecondizioni estreme Calcolare la probabilita che lrsquouomo perdaconoscenza dopo almeno due ore e la probabilita che lrsquouomo perdaconoscenza dopo esattamente un quarto drsquoora

8 Sia X una variabile aleatoria normale di parametri micro = 10 e σ = 36Calcola

1 P(X gt 5)2 P(4 le X le 16)3 P(X le 8)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 86 88

Esercizi - 5

9 Il numero di errori tipografici per pagina di una certa rivista segue unadistribuzione di Poisson Sapendo che mediamente sono presenti 02errori per pagina determinare la probabilita che una pagina contenga

1 nessun refuso2 piu refusi

10 Arrivi alla fermata dellrsquoautobus alle 1000 e sei certo che ne passerauno in un momento distribuito uniformemente tra le 1000 e le 1030

1 Qual e la probabilita che tu debba aspettare piu di 10 minuti2 Se alle 1015 lrsquoautobus non e ancora arrivato qual e la probabilita che

tu debba aspettare almeno altri 10 minuti

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 87 88

Esercizi - 6

11 Il signor Jones e convinto che il tempo di vita di una automobile (inmigliaia di chilometri percorse) sia una variabile aleatoria esponenzialedi parametro 120 Il signor Smith ha una macchina usata da vendereche ha percorso circa 10 000 chilometri

1 Se il signor Jones decide di comprarla che probabilita ha di farle farealmeno altri 20 000 chilometri prima che sia da buttare

2 Il modello assunto dal signor Jones e ragionevole

12 Sia X una variabile casuale binomiale di parametri n = 100 e p = 07

1 Tracciate la funzione di ripartizione di X2 Calcolate il primo quartile il quantile di ordine 09 e la mediana di X3 Calcolare la probabilita P(X le 60)4 Calcolare la probabilita P(X le 88)5 Trovare il piu piccolo valore x tale che P(X le x) ge 09

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 88 88

  • Lezione 1
    • Script in Python
    • Numpy
    • Esercizi
    • Pandas
    • Esercizi
      • Lezione 2
        • File csv
        • DataFrame
        • Accesso ai DataFrame
        • Frequenze
        • Esercizi
          • Lezione 3
            • Matplotlib
            • Grafici a Barre
            • Istogrammi
            • Cumulativa empirica
            • Boxplot
            • QQplot
            • Diagramma di Pareto
            • Esercizi
              • Lezione 4
                • Definizioni
                • Probabilitagrave condizionata
                • Indipendenza
                • Esercizi
                  • Lezione 5
                    • Variabili Aleatorie
                    • Funzione di Ripartizione
                    • Funzione di Densitagrave
                    • Valore Atteso
                    • Varianza
                    • Covarianza
                    • Esercizi
                      • Lezione 6
                        • Scipy - Variabili Discrete
                        • Scipy - Variabili continue
                        • Esercizi

Script

Usare lrsquointerprete interattivo non e la maniera piu comoda perprogrammareE possibile lanciare un programma python (filepy) eseguendo ilcomando python ltnomefilepygt dalla cartella in cui si trova il filepy

dottorandodottorando-Lenovo-Y50-70 Scrivania$ python

testpy

My first script in Python

dottorandodottorando-Lenovo-Y50-70 Scrivania$

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 7 88

Variabili in Python - 1

Python e dinamicamente tipato e fortemente tipatoUna variabile inizia ad esistere nel momento in cui le viene assegnato unvalore che ne determina il tipo

gtgtgt a=10000

gtgtgt type(a)

lttype lsquointrsquogt

gtgtgt len(a)

Traceback (most recent call last)

File ltstdingt line 1 in ltmodulegt

TypeError object of type rsquointrsquo has no len()

gtgtgt

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 8 88

Variabili in Python - 2

Riferirsi ad una variabile inesistente (a cui non e ancora stato assegnato unvalore) genera un errore

gtgtgt b

Traceback (most recent call last)

File ltstdingt line 1 in ltmodulegt

NameError name rsquobrsquo is not defined

gtgtgt

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 9 88

Funzione Help

Per aprire la documentazione a riguardo di un particolare oggetto metodoo attributo si puo invocare la funzione help(rdquonomerdquo) con il nomedellrsquooggetto che stiamo cercando

gtgtgt help(str)

Help on class str in module builtin

class str(basestring)

| str(object=rsquorsquo) -gt string

|

| Return a nice string representation of the object

| If the argument is a string the return value is the

same object

|

Si esce dal manuale interattivo premendo q

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 10 88

Tipi Predefiniti in Python

Stringhe (str) rdquoquesta e una stringardquo rdquoquesta purerdquo

Dizionari (dict) lsquochiaversquo valoreTuple (tuple) (1 2 3 1 rsquociaorsquo)

Liste (list) [1 2 3 4 rsquopipporsquo]

Set (set) (1 2 3)

Interi (int) 1 2 3

Float (float) 15 314 2718281828459045

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 11 88

Numpy

Il modulo numpy (httpwwwnumpyorg) mette a disposizione unastruttura dati creata appositamente per il calcolo scientifico

ArrayUn array e un contenitore di dati omogenei cioe dello stesso tipo Se sitenta di costruire un array con dati di tipo diverso questi vengonoldquotrasformatirdquo nel piu piccolo tipo adatto a contenerli tutti

gtgtgt import numpy as np

gtgtgt nparray( [146810] )

array([ 1 4 68 10 ])

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 12 88

Creazione di Array - 1

numpyarange(x) restituisce un array contenente gli interi da 0 a x minus 1

gtgtgt numpyarange(5)

array([0 1 2 3 4])

numpyarange(start stop step) permette di scegliere gli estremi dellasequenza contenuta nellrsquoarray e il passo tra un numero ed il successivo

gtgtgt numpyarange(262)

array([2 4])

gtgtgt numpyarange(2-3-1)

array([ 2 1 0 -1 -2])

numpylinspace(start stop n) permette di scegliere gli estremi e quantinumeri devono comparire allrsquointerno della sequenza

gtgtgt numpylinspace(014)

array)[0 03333333 066666667 1])

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 13 88

Creazione di Array - 2

numpyones(rdquotuplardquo) restuituisce un array di 1 date le dimensionispecificate nella tupla come argomento

gtgtgt numpyones( (15) )

array([1 1 1 1 1])

numpyzeros(rdquotuplardquo) restuituisce un array di 0 date le dimensionispecificate nella tupla come argomento

gtgtgt numpyzeros( (25) )

array([[0 0 0 0 0] [0 0 0

0 0]])

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 14 88

Operazioni con Array

Applicando un operazione logica ad un array si ottiene come risposta unarray di tipo booleano contenente nella posizione i-esima il risultatodellrsquoespressione logica valutata per lrsquoelemento i-esimo dellrsquoarray

gtgtgt numpyarange(5) gt 3

array([False False False False True] dtype=bool)

Le operazioni + - tra due array vengono eseguite elemento perelemento (gli array devono avere le stesse dimensioni)

gtgtgt numpyarange(5) + numpylinspace(025)

array([ 0 15 3 45 6 ])

gtgtgt numpyarange(5) 2

array([0 2 4 6 8])

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 15 88

Selezioni di un sottoinsieme di elementi

Ad un array e possibile accedere in tutti i modi con cui e possibile accederead una lista ad esempio

Ottenere una tupla di elementi

gtgtgt a[2] a[-1] a[36]

(2 9 array([3 4 5]))

Slicing [startstopstep]

gtgtgt a[293]

array([2 5 8])

gtgtgt a[2]

array([0 2 4 6 8])

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 16 88

Accesso con maschere booleane

Specificando tra [ ] un array di tipo booleano selezioniamo dallrsquoarray glielementi la cui posizione corrisponde ad un True nellrsquoarray di tipobooleano (che prende il nome di maschera)

gtgtgt a = numpyarange(10)

gtgtgt mask = a2 == 0

gtgtgt mask

array([ True False True False True False True

False True False] dtype=bool)

gtgtgt a[mask]

array([0 2 4 6 8])

o in maniera piu compatta

gtgtgt a[a2 == 0]

array([0 2 4 6 8])

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 17 88

Esercizi

1 Lanciare uno script che stampi il vostro nome e cognome

2 Creare un array i cui elementi siano gli interi che compongono ilvostro numero di matricola

3 Sia X la lunghezza dellrsquoarray del punto precedente Creare un array diX elementi equispaziati lrsquouno dallrsquoaltro di 15

4 Creare un array di X elementi equispaziati nellrsquointervallo tra 1 e 3

5 Ottenere gli array dati dalla somma tra lrsquoarray del punto 2 e quello delpunto 3 e quello dato dalla moltiplicazione tra punto 3 e punto 4

6 Ottenere per ciascuno dei due array del punto 5 un array mascherache in corrispondenza dei numeri divisibili per 3 abbia True Falsealtrimenti

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 18 88

Pandas - Series (1)

Pandas (httpspandaspydataorg) e una libreria Python chefornisce strutture dati e strumenti relativi esclusivamente allrsquoanalisi deidatiUna Series e un array monodimensionale ed etichettato Rappresenta unaserie di osservazioni di un certo carattere fatto su un insieme di individui

a 00

b 10

c 20

d 30

e 40

f 50

g 60

h 70

Name serie di esempio dtype float64

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 19 88

Pandas - Series (2)

pandasSeries (data index dtype name )

data contiene i dati che si vuole inserire nella serie

index della stessa lunghezza di data contiene le etichette

dtype permette di specificare il tipo che i dati devono assumere

name permette di dare un nome alla Series

gtgtgt import pandas as pd

gtgtgt import numpy as np

gtgtgt oss = nparange(8)

gtgtgt etic = [rsquoarsquorsquobrsquorsquocrsquorsquodrsquorsquoersquorsquofrsquorsquogrsquorsquohrsquo]

gtgtgt pdSeries(data=oss index=etic name=rsquoserie di esempiorsquo

dtype=float)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 20 88

Accesso ai dati di una Series

Specificando un valore (o una lista di valori) per lrsquoetichetta

gtgtgt sloc[[rsquohrsquorsquoarsquo]]

h 70

a 00

Specificando un valore (o una lista di valori) per la posizione

gtgtgt s[[56]]

f 50

g 60

Usando lo slicing (come per gli array numpy) per la posizione

gtgtgt s[36]

d 30

e 40

f 50

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 21 88

Pandas Series - Utils

Seriesmin() Seriesmax() restituiscono rispettivamente il minimoed massimo tra i valori della Series

Seriessum() restituisce la somma dei valori della Series

Seriessort values() restituisce una copia della Series ordinata pervalore

Seriessort index() restituisce una copia della Series ordinata peretichette

Seriessample(n) restituisce una Series di n elementi sceltiuniformemente a caso allrsquointerno di quelli della Series

Seriesappend([s1s2]) concatena una o piu Series a quella dipartenza

Seriescount() restituisce il numero dei valori della Series che nonsiano il valore NaN

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 22 88

Il valore NaN

Nan un oggetto del modulo numpy che puo rappresentare in una Seriesun dato di cui non e stato possibile fare unrsquoosservazioneOperazioni con un valore Nan hanno come risultato il valore Nan

gtgtgt oss = range(5)

gtgtgt ossappend(None)

gtgtgt pandasSeries(oss)

0 00

1 10

2 20

3 30

4 40

5 NaN

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 23 88

Esercizi

Creare la Series gol in modo che le etichette siano numeri dallrsquo1 al 23 Idati raccolti siano numeri interi tra 0 e 30 scelti casualmente (scarica ilnotebook) La Series rappresenta i gol segnati da ciascun giocatore diuna societa calcistica nella stagione appena passata Lrsquoetichettacorrisponde al numero di maglia del giocatore Ottenere

1 I gol segnati dal capocannoniere2 Chi non ha mai fatto gol durante lrsquoanno3 La statistica del punto 2 per i soli titolari (numeri dallrsquo1 allrsquo11) e per

le sole riserve (dal 12 al 23)4 La statistica del punto 2 per i soli attaccanti (numeri dalrsquo9 allrsquo11)5 I gol segnati dai giocatori coi numeri di maglia 5 9 10 14 (somma)6 Chi ha segnato piu di 10 gol e chi ha segnato esattamente 10 gol7 Una copia della Series ordinata secondo i gol effettuati8 Una stampa dei primi 5 cannonieri e degli ultimi 59 Una copia della Series ordinata in modo discendente secondo il

numero di maglia

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 24 88

File csv

Il formato csv (comma-separated value) e un formato utilizzato perrappresentare una tabella di dati e favorirne lrsquoimportazione e lrsquoesportazioneUn file csv e scritto nella seguente forma

titolopaeseannoduratagenerevoto

Guerre StellariUSA1977121Fantascienza4

Lrsquoimpero colpisce ancoraUSA1980124Fantascienza4

Il ritorno dello JediUSA1983Fantascienza35

Profondo RossoITA1975Horror35

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 25 88

Leggere csv

La funzione read csv() di Pandas puo essere utilizzata per leggere unfile di formato csv Tra i vari parametri che passiamo in input unoparticolarmente importante e sep che indica il carattere utilizzato perseparare le colonne (default e rsquorsquo)

gtgtgt df film = pdread csv(rsquofilmcsvrsquo)

gtgtgt df film

titolo paese anno durata genere voto

Il padrino USA 19720 1750 Drammatico 45

Pulp Fiction USA 19940 1540 Drammatico 40

Fight Club USA 19990 1390 Thriller 40

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 26 88

DataFrame

In Pandas un DataFrame e una struttura dati tabulare con assi etichettatile cui colonne possono contenere dati eterogenei da colonna a colonna

gtgtgt dataframe

esempio

Nome Cognome Eta Citta

Tommaso Rossi 300 Milano

Sergio Bianchi 340 Roma

Pasquale Verdi 290 Palermo

Antonio Gialli 300 Roma

Il DataFrame puo essere visto come un insieme di serie aventi lo stessoindice accostate una allrsquoaltra

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 27 88

Accesso colonne DataFrame - 1

Per conoscere le colonne di un DataFrame possiamo invocare il comandodfcolumns dove df e la variabile in cui abbiamo instanziato ilDataFramePer accedere ad una colonna dobbiamo specificarne il nome nel seguentemodo

gtgtgt df film[rsquogenerersquo]

titolo

Il padrino Drammatico

Pulp Fiction Drammatico

Fight Club Thriller

Selezionando unrsquounica colonna in output viene restituita una Series

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 28 88

Accesso colonne DataFrame - 2

Possiamo accedere allo stesso tempo a piu colonne

gtgtgt df film[[rsquopaesersquorsquoannorsquo]]

titolo paese anno

Il padrino USA 19720

Pulp Fiction USA 19940

Fight Club USA 19990

Selezionando piu colonne in output viene restituito un DataFrame

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 29 88

Accesso righe DataFrame - 1

Per indice numerico

gtgtgt df film[1518]

titolo paese anno durata genere voto

Il padrino USA 19720 1750 Drammatico 45

Pulp Fiction USA 19940 1540 Drammatico 40

Fight Club USA 19990 1390 Thriller 40

Quasi Amici FRA 20110 1120 Commedia 35

Per valore dellrsquoindice (assumiamo che titolo sia lrsquoindice delDataFrame)

gtgtgt df film[rsquoIl padrinorsquorsquoFight Clubrsquo]

titolo paese anno durata genere voto

Il padrino USA 19720 1750 Drammatico 45

Pulp Fiction USA 19940 1540 Drammatico 40

Fight Club USA 19990 1390 Thriller 40

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 30 88

loc amp iloc

Cosı come per le Series anche con i DataFrame possiamo usare loc ediloc per lrsquoaccesso ai dati

loc[rsquonome indicersquo] permette lrsquoaccesso ad una riga o piu righetramite nome dellrsquoindice

iloc[rsquoposizionersquo] permette lrsquoaccesso ad una o piu righe tramitela loro posizione

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 31 88

Accesso tramite unrsquoespressione logica

gtgtgt df film[rsquoannorsquo gt 1998]

titolo

Il padrino False

Pulp Fiction False

Fight Club True

Quasi Amici True

gtgtgt df film[df film[rsquoannorsquo] gt 1998]

titolo paese anno durata genere voto

Fight Club USA 19990 1390 Thriller 40

Quasi Amici FRA 20110 1120 Commedia 35

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 32 88

Metodi dei DataFrame

La classe DataFrame ha diversi metodi Elenchiamo qui i piu importanti

DataFrameappend() permette di estendere il DataFrame

DataFramedrop duplicates() restituisce un DataFrame senza righeduplicate

DataFramedropna() Eliminare i valori Nan da un DataFrame

DataFramesort values() permette di ordinare il DataFrame

DataFramemax() DataFramemin() DataFramemean()DataFramemedian()

Per la completa documentazione si puo utilizzare il comandohelp(pdDataFrame) oppure andare al seguente linkhttpspandaspydataorgpandas-docsstablegenerated

pandasDataFramehtml

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 33 88

Frequenze

La frequenza assoluta indica il numero di volte che una dataosservazione occorre in un campione

La frequenza relativa e un valore tra 0 e 1 che permette di valutare inmaniera piu efficace la frequenza di un osservazione Si calcoladividendo la frequenza assoluta per il numero totale di casi

Per calcolare questa quantita in Pandas possiamo utilizzare la funzionevalue counts() che opera su una Series

In alternativa si puo utilizzare la funzione pdcrosstab che calcolaqueste frequenze in automatico restituendole in output in un DataFrame

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 34 88

Esercizi

Utilizzando il file dati-ospedalicsv dai csv del laboratorio

1 Leggere il file e visualizzarlo in un DataFrame

2 Calcolare le frequenze assolute e relative dellrsquoattributo Regioneusando crosstab

3 Ottenere la singola serie relativa allrsquoattributo Regione e calcolarne lafrequenza assoluta e relativa senza usare crosstab

4 Estrarre un sottodataframe contenente le colonne Nome (attributoDenominazione Str Pubblica New) e Numero di medici (attributoMedici SSN) degli ospedali aventi meno di 200 medici

5 Visualizzare il nome degli ospedali della regione Lombardia

6 Calcolare il numero medio di ingegneri (Ingegneri SSN) presenti negliospedali campani

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 35 88

Esercizi

7 Calcolare la varianza del numero di assistenti sociali (Assistenti socialiSSN) negli ospedali con piu di 400 medici

8 Qual e lrsquoospedale con meno medici

9 Visualizzare in ordine alfabetico il nome dei primi 10 ospedali pernumero di medici

10 Visualizzare il numero degli ospedali che hanno dichiarato il numerodi odontoiatri (per cui il valore e diverso da NaN) (OdontoiatriUniversitari)

11 Visualizzare il numero degli ospedali che hanno dichiarato il numerodi odontoiatri (Odontoiatri Universitari) e per cui questo numero emaggiore di 0

12 Calcolare le frequenze assolute per lrsquoattributo Odontoiatri SSNTrasformare questo risultato in frequenze relative

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 36 88

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) SAD 20182019 January 12 2019 37 88

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) SAD 20182019 January 12 2019 38 88

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) SAD 20182019 January 12 2019 39 88

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) SAD 20182019 January 12 2019 40 88

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) SAD 20182019 January 12 2019 41 88

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) SAD 20182019 January 12 2019 42 88

Grafici con le Series

In generale possiamo tracciare diversi tipi di grafici con le Series

rsquolinersquo line plot (default)

rsquobarrsquo vertical bar plot

rsquobarhrsquo horizontal bar plot

rsquohistrsquo histogram

rsquoboxrsquo boxplot

rsquokdersquo Kernel Density Estimation plot

rsquodensityrsquo same as rsquokdersquo

rsquoarearsquo area plot

rsquopiersquo pie plot

Per saperne di piu consultare questo link

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 43 88

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) SAD 20182019 January 12 2019 44 88

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) SAD 20182019 January 12 2019 45 88

Boxplot

Rappresenta la distribuzione di un vettore di numeri cerchiando gli outlier

gtgtgt weight = heroes[rsquoWeightrsquo]

gtgtgt weightplotbox()

gtgtgt pltshow()

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 46 88

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) SAD 20182019 January 12 2019 47 88

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) SAD 20182019 January 12 2019 48 88

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) SAD 20182019 January 12 2019 49 88

Esercizi - 1

Utilizzando il file capellicsv dai csv del laboratorio

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) SAD 20182019 January 12 2019 50 88

Esercizi - 2

Utilizzando il file dati-ospedalicsv dai csv del laboratorio

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 e canipdf

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 51 88

Sample space

Un esperimento e qualsiasi processo che produce una realizzazione (oosservazione) Lrsquoinsieme di tutte le possibili realizzazioni di un esperimentoviene detto sample space ed indicato con S

lancio di 2 monete

S = (T T ) (T C) (C T ) (C C)

gara di 3 cavalli (ab c)

S = tutti i possibili ordinamenti di(ab c)= (ab c) (a cb) (c b a)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 52 88

Eventi

lancio di 2 monete

S = (T T ) (T C) (C T ) (C C)

A = 2 monete uguali

A = (T T ) (C C)

B = 2 monete diverse

B = Ac = (T C) (C T )

gara di 3 cavalli

A = cavallo a vincente

A = (ab c) (a c b)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 53 88

Probabilita - 1

Consideriamo un esperimento con sample space S Supponiamo che adogni evento A sia associato un numero chiamato probabilita di A edindicato con P(A) che soddisfa le seguenti proprieta

1 Per ogni evento A la probabilita di A e un numero tra 0 e 1

0 le P(A) le 1

2 La probabilita del sample space S e 1

P(S) = 1

3 La probabilita dellrsquounione di eventi disgiunti e uguale alla somma delleprobabilita di tali eventi

P(A cupB) = P(A) + P(B)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 54 88

Probabilita - 2

In generale 2 eventi potrebbero non essere disgiunti

P(A cupB) = P(A) + P(B) minus P(A capB)

Esempio un certo negozio accetta pagamenti o con carte di credito VISAo Mastercard

1 22 dei clienti ha Mastercard

2 58 dei clienti ha VISA

3 14 dei clienti ha entrambe

Qual e la probabilita che un cliente ha almeno una delle 2 carte

P(A) = 022 P(B) = 058

P(A cupB) = P(A) + P(B) minus P(A capB) = 022 + 058 minus 014 = 066

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 55 88

Probabilita condizionata - 1

Se alcune informazioni riguardo lrsquoesito di un esperimento sono disponibiliparliamo di probabilita condizionata

Esempio lancio di 2 dadi

S = (11) (12) (65) (66)

Probabilita che la somma sia 10 (evento B) sapendo che il primo dadomostra 4 (evento A)

(41) (42) (43) (44) (45) (46)

P(B ∣A) = 16

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 56 88

Probabilita condizionata - 2

In generale

P(B ∣A) = P(A capB)P(A)

Supponiamo lrsquoesito sia in A

Per essere anche in B deve essere in entrambi A e B cioe in A capB

Sapendo che A e gia accaduto il nostro nuovo sample space diventa A

la probabilita di A capB viene calcolata rispetto ad A

Nel caso dei dadi

P(B ∣A) = P((46))P((41) (42) (43) (44) (45) (46)) = 136

16= 1

6

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 57 88

Indipendenza

In generale sapere che A e accaduto modifica le chance che B accadaNel caso cio non avvenga cioe se P(B ∣A) = P(B) allora i 2 eventi sidicono indipendenti In questo caso sapere che A e accaduto nonaggiunge alcuna informazione

SiccomeP(A capB) = P(B ∣A)P(A)

Abbiamo che B e indipendente da A se

P(A capB) = P(B)P(A)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 58 88

Esercizi - 1

1 Svolgere gli esercizi di combinatoria

2 Si consideri il seguente esperimento casuale rdquosi lancia tre volte unamonetardquo Qual e lo spazio degli esiti di questo esperimento casualeSi scriva esplicitamente lrsquoevento rdquosi ottengono piu teste che crocirdquo

3 Si consideri il seguente esperimento casuale rdquoSi tirano due dadirdquo Siconsiderino gli eventi E = rdquola somma dei punteggi e disparirdquo F = rdquoilprimo dado realizza un 1rdquo e G = rdquola somma dei punteggi e 5rdquo Sidescrivano gli eventi E cap F E cup F F capG E cap F c e E cap F capG

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 59 88

Esercizi - 2

4 Si consideri il seguente esperimento casuale rdquoUn sistema e compostoda 4 componenti ciascuno dei quali o funziona oppure e guasto Siosserva lo stato dei componenti ottenendo un vettore (x1 x2 x3 x4)dove xi e 1 oppure 0 a seconda che il componente i-esimo funzionioppure nordquo

1 Da quanti elementi e formato lo spazio degli esiti2 Il sistema nel suo insieme funziona fintantoche entrambi i componenti

1 e 2 oppure entrambi i componenti 3 e 4 funzionano Specifica tuttigli esiti dellrsquoevento il rdquosistema funzionardquo

3 Sia E lrsquoevento rdquoi componenti 1 e 3 sono guastirdquo Quanti esiti contiene

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 60 88

Esercizi - 3

5 Si dimostri che in uno spazio degli esiti Ω dotato di una probabilita Pper ogni evento E F sub Ω vale la disuguaglianza seguente

P(E cap F ) ge P(E) + P(F ) minus 1

6 Un gruppo di 5 bambini e 10 bambine e in fila in ordine casuale nelsenso che tutte le 15 possibili permutazioni si suppongonoequiprobabili

1 Qual e la probabilita che il quarto della fila sia un bambino2 E il dodicesimo3 Qual e la probabilita che un determinato bambino occupi la terza

posizione

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 61 88

Esercizi - 4

7 In un comune vi sono 5 alberghi Se 3 persone devono scegliere unalbergo in cui pernottare qual e la probabilita che finiscano tutte inalberghi differenti Che cosa stiamo assumendo senza dirloesplicitamente

8 La media del salario annuale di un gruppo di 100 lavoratori impiegatinellrsquoamministrazione di una grande azienda e di 130000 dollari conuna deviazione standard di 20000 dollari Se si prende una persona acaso da questo gruppo cosa possiamo dire sulla probabilita che il suosalario sia

1 tra i 90000 e i 170000 dollari2 superiore a 150000 dollari

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 62 88

Esercizi - 5

9 In una certa regione vi sono due ditte che producono forni amicroonde Quelli della fabbrica A sono difettosi con probabilita 005mentre quelli della fabbrica B con probabilita 001 Supponi di averacquistato due apparecchi prodotti dalla stessa ditta che puo essere laA o la B con probabilita del 50 Se il primo microonde e difettosoqual e la probabilita condizionata che sia difettoso anche il secondo

10 Hai chiesto ad un vicino di innaffiare una piantina delicata mentre seiin vacanza Pensi che senza acqua la piantina muoia con probabilita08 mentre se innaffiata questa probabilita si ridurrebbe a 015 Latua fiducia che il vicino si ricordi di innaffiarla e del 90

1 Qual e la probabilita che la pianta sia ancora viva al tuo ritorno2 Se fosse morta quale sarebbe la probabilita che il vicino si sia

dimenticato di innaffiarla

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 63 88

Esercizi - 6

11 Una compagnia di assicurazioni classifica i suoi clienti in tre fascebasso rischio medio rischio alto rischio Le sue statistiche indicanoche le probabilita che un cliente delle tre fasce abbia un incidenteentro un periodo di un anno sono rispettivamente 005 015 e 030Se il 20 dei clienti sono a basso rischio il 50 a medio rischio e il30 ad alto rischio che percentuale dei clienti avra mediamenteincidenti in un lasso di un anno Se un cliente non ha avuto incidentinel 1987 qual e la probabilita che appartenga a ciascuna delle trefasce

12 Se un votante scelto a caso e favorevole ad una certa riforma conprobabilita di 07 qual e la probabilita che su 10 votanti esattamente7 siano favorevoli

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 64 88

Variabili aleatorie

Una variabile aleatoria (o anche variabile aleatoria) e una variabile chepuo assumere valori diversi in dipendenza da qualche fenomeno aleatorio

fenomeno lancio di 2 dadivariabile aleatoria somma dei 2 dadi

fenomeno 3 lanci di una monetavariabile aleatoria numero di rdquotesterdquo complessivo

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 65 88

Funzione di Ripartizione

Sia X una variabile aleatoria Si chiama funzione di ripartizione di X lafunzione F che associa ad ogni numero reale a la probabilita che X siaminore o uguale ad a cioe P(X le a) = FX (a)

Nel caso della moneta (fair) lanciata 3 volte (X indica il numero di testecomplessivo)

FX (a) =

⎧⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎨⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎩

0 if a lt 0

18 per 0 le a lt 1

18 + 38 = 48 per 1 le a lt 2

48 + 38 = 78 per 2 le a lt 3

88 = 1 per a ge 3

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 66 88

Funzione di densita o di massa

Sia X una variabile aleatoria Si chiama funzione di densita di X lafunzione f che associa ad ogni numero reale a la probabilita che X siauguale ad a indicata con fX (a)

Nel caso della moneta (fair) lanciata 3 volte (X indica il numero di testecomplessivo)

fX (a) =

⎧⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎨⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎩

18 per a = 0

38 per a = 1

38 per a = 2

18 per a = 3

0 altrimenti

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 67 88

Valore Atteso

Chiamato anche media (expectation in inglese) e appunto una mediapesata dei possibili valori di una variabile aleatoria Il peso dato a ciascunvalore e la probabilita data a quello specifico valore

E[X ] =sumi

aiP(X = ai)

Esempio dado truccato

valore 6 con probabilita 712

valori da 1 a 5 con probabilita 112

La variabile aleatoria X indica la faccia risultante dal lancio di un dado

E[X ] = 1

12lowast 1 + 1

12lowast 2 + 1

12lowast 3 + 1

12lowast 4 + 1

12lowast 5 + 7

12lowast 6 = 475

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 68 88

Valore Atteso - Proprieta

Sia X una variabile aleatoria con valore atteso E[X ] Se c e una costanteallora anche cX e X + c sono variabili casuali In particolare valgono leseguenti proprieta

E[cX ] = cE[X ]E[X + c] = E[X ] + c

Sia Y una variabile aleatoria Allora

E[X +Y ] = E[X ] +E[Y ]se e solo se X e Y sono independenti

E[XY ] = E[X ]E[Y ]

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 69 88

Varianza

Ersquo il valore atteso del quadrato della differenza tra la variabile aleatoria e ilsuo valore atteso

Var(X ) = E[(X minusE[X ])2] = E[X 2] minus (E[X ])2

La radice quadrata viene detta deviazione standard di X

Esempio dado truccato

E[X 2] = 1

12lowast 12 + 1

12lowast 22 + 1

12lowast 32 + 1

12lowast 42 + 1

12lowast 52 + 7

12lowast 62 ≃ 255

Var(X ) = E[X 2] minus (E[X ])2 ≃ 255 minus 4752 ≃ 3

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 70 88

Varianza - proprieta

Sia X una variabile aleatoria e c una costante Allora valgono le seguentiproprieta

1 Var(cX ) = c2Var(X )

2 Var(X + c) = Var(X )

NOTA

Var(X +X ) ne Var(X ) +Var(X )

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 71 88

Covarianza

Siano X Y due variabili aleatorie con valore atteso rispettivamenteE[X ] = microX e E[Y ] = microY La covarianza e definita come segue

Cov(X Y ) = E[(X minus microX )(Y minus microY )] = = E[XY ] minus microXmicroY

Proprieta

1 Cov(X Y ) = Cov(Y X )2 Cov(X X ) = Var(X )3 Sia a una costante allora

Cov(aX Y ) = aCov(X Y )

4 Sia Z una variabile aleatoria allora

Cov(X + Z Y ) = Cov(X Y ) + Cov(Z Y )

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 72 88

Esercizi - 1

1 Consideriamo una variabile aleatoria X che puo assumere i valori 12o 3 Se sappiamo che

fX (1) = 1

3 fX (2) = 3

7

1 Quanto vale fX (3)2 Disegnare il grafico di questa funzione di massa3 Disegnare il grafico della relativa funzione di ripartizione

2 Dimostrare che se X1 e X2 hanno la stessa distribuzione allora

Cov(X1 +X2X1 minusX2) = 0

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 73 88

Esercizi - 2

3 La funzione di ripartizione di X e definita come segue

FX (x) =

⎧⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎨⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎩

0 per x le 0

x2 per 0 le x lt 1

23 per 1 le x lt 2

1112 per 2 le x lt 3

1 per x ge 3

Se ne tracci il graficoQuanto vale P(X gt 12)Quanto vale P(2 le X le 4)Quanto vale P(X le 3)Quanto vale P(X = 1)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 74 88

Esercizi - 3

4 Un tipo di prodotti vengono classificati a seconda dei loro difetti edella fabbrica che li ha prodotti Sia X1 il numero (1 o 2) dellafabbrica e sia X2 il numero di difetti per pezzo (che possono essere da0 a 3) di un prodotto scelto a caso tra la totalita di quelli esistentiLa tabella seguente riporta la funzione di massa di probabilitacongiunta per queste due variabili aleatorie discrete Le righe siriferiscono alla variabile X1 mentre le colonne alla variabile X2

Trova le distribuzioni marginali di X1 e X2Calcola media e varianza di X2

0 1 2 31 18 116 316 182 116 116 18 14

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 75 88

Scipy

Scipy e un modulo che permette di utilizzare varie distribuzioni diprobabilita sia di tipo discreto che continuo

La sintassi generale e la seguente Scipystatsltnome distribuzionegt

rvs(size=z) restituisce un vettore di numeri casuali estrattisecondo la distribuzione di lunghezza z

pdf(x) restituisce il vettore della densita della distribuzionevalutata nei valori del vettore di input x (pmf per le discrete)

cdf(x) restituisce il vettore della funzione di ripartizione (ocumulativa) della distribuzione valutata nei valori del vettore di inputx

ppf(q) restituisce il vettore dei quantili della distribuzione valutatanei valori del vettore di input q

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 76 88

Variabili aleatorie discrete Binomiale

gtgtgt from scipystats import binom

gtgtgt rv = binom(n p)

rvrvs(x) restituisce un vettore di x numeri estratti secondo unadistribuzione Binomiale di parametri n p

rvpmf(x) restituisce la probabilita di ottenere esattamente x

successi in un esperimento dicotomico (01) ripetuto n volte con unaprobabilita di successo p (x puo essere un vettore)

rvcdf(q) restituisce il valore della funzione di ripartizione in q (qpuo essere un vettore)

rvppf(p) restituisce il valore del quantile di ordine p

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 77 88

Variabili aleatorie discrete Ipergeometrica

Supponiamo di avere M = 20 animali di cui n = 7 cani Se vogliamosapere la probabilita di trovare un dato numero di cani se scegliamoN = 12 dei 20 animali in maniera casuale possiamo usare una distribuzioneipergeometrica in questo modo

gtgtgt from scipystats import hypergeom

gtgtgt [M n N] = [20 7 12]

gtgtgt rv = hypergeom(M n N)

rvpmf(x) restituisce la probabilita di estrarre esattamente x cani

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 78 88

Variabili aleatorie discrete Geometrica

gtgtgt from scipystats import geom

gtgtgt rv = geom(p)

rvpmf(x) restituisce la probabilita di avere un successo dopoesattamente x insuccessi in una successione di esperimenti dicotomici(esito 01) con una probabilita di successo p (x puo essere un vettore)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 79 88

Variabili aleatorie discrete Poisson

La distribuzione di Poisson viene usata spesso come modello per il numerodi volte per cui un evento avviene in un dato intervallo di tempo (ospazio) Ad esempio si puo utilizzare per misurare il numero di chiamatericevute da un call center in una mattinata

gtgtgt from scipystats import poisson

gtgtgt mu = 2

gtgtgt rv = poisson(mu)

rvpmf(x) restituisce il seguente valore

f (x) = exp(minusmicro)microx

x

In questo caso x rappresenta il numero di eventi per cui si vuole calcolarela probabilita sapendo che in media ne accadono micro

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 80 88

Variabili aleatorie continue Uniforme

In Scipy la funzione uniforme e soltanto continua Questo significa chenella generazione di numeri casuali otterro dati di tipo float Possiamotuttavia simulare una variabile discreta estraendo la parte intera delrisultato ottenuto

gtgtgt from scipystats import uniform

gtgtgt rv = uniform()

Il comando uniform() crea una distribuzione uniforme nellrsquointervallo[01] Possiamo creare una distribuzione uniforme qualsiasi usandouniform(x y - x) per lrsquointervallo [x y]

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 81 88

Variabili aleatorie continue

norm(mu sigma) variabile Gaussiana (o Normale) di media micro edeviazione standard σ

expon(scale = 1 lambda) variabile Esponenziale di parametroλ

Altre distribuzioni (con relativa documentazione) disponibili suhttpsdocsscipyorgdocscipyreferencestatshtml

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 82 88

Esercizi - 1

1 Unrsquourna contiene 10 palline di cui 4 bianche e 6 nere Si eseguono 5estrazioni con reimmissione

1 Tracciare grafico della funzione massa di probabilita della variabilecasuale X = rdquonumero di palline bianche estratterdquo

2 Calcolare la probabilita di estrarre 2 palline bianche3 Calcolare la probabilita di estrarre al piu 2 palline bianche4 Calcolare la probabilita di estrarre almeno 2 palline bianche5 Qual e il numero minimo x tale che la probabilita di estrarre al piu x

palline bianche sia almeno 08

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 83 88

Esercizi - 2

2 Si eseguono 10 estrazioni senza reimmissione da unrsquourna

1 Tracciare il grafico della funzione massa di probabilita della variabilecasuale X = rdquonumero di palline bianche estratterdquo nei seguenti casi

1 lrsquourna contiene 100 palline di cui 20 bianche e le restanti nere2 lrsquourna contiene 100 palline di cui 2 bianche e le restanti nere

2 Tracciare il grafico della funzione massa di probabilita della variabilecasuale X nel caso dellrsquourna 1 se si eseguono 25 estrazioni

3 Consideriamo lrsquourna 1 e N = 10 estrazioni Si aumenti il numero totaleM di palline nellrsquourna mantenendo uguale a 02 la frazione di pallinebianche Per ciascun valore di M confrontare graficamente ladistribuzione di probabilita del numero di palline bianche estratte nelcaso di estrazioni con e senza reimmissione Provare con 20 40 e 200palline bianche

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 84 88

Esercizi - 3

3 Calcolare la probabilita di ottenere piu teste che croci lanciando 7volte una moneta truccata con probabilita di avere croce pari a 045

4 Calcolare la probabilita di avere almeno 3 sei lanciando 5 dadi a 12facce

5 Calcolare la probabilita di estrarre 20 euro da un sacco contenente 47monete da 1 centesimo e 53 da 2 euro estraendo (uniformemente) acaso 10 monete senza reinserirle

6 Un grammo di uranio emette mediamente 2152 particelle α ognimillisecondo Qual e con buona approssimazione la probabilita che ungrammo di uranio emetta al piu 2000 particelle α in un millisecondo

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 85 88

Esercizi - 4

7 Un uomo si risveglia in mezzo al deserto senza acqua Dopo ogniminuto ha una probabilita del 3 di perdere conoscenza per via dellecondizioni estreme Calcolare la probabilita che lrsquouomo perdaconoscenza dopo almeno due ore e la probabilita che lrsquouomo perdaconoscenza dopo esattamente un quarto drsquoora

8 Sia X una variabile aleatoria normale di parametri micro = 10 e σ = 36Calcola

1 P(X gt 5)2 P(4 le X le 16)3 P(X le 8)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 86 88

Esercizi - 5

9 Il numero di errori tipografici per pagina di una certa rivista segue unadistribuzione di Poisson Sapendo che mediamente sono presenti 02errori per pagina determinare la probabilita che una pagina contenga

1 nessun refuso2 piu refusi

10 Arrivi alla fermata dellrsquoautobus alle 1000 e sei certo che ne passerauno in un momento distribuito uniformemente tra le 1000 e le 1030

1 Qual e la probabilita che tu debba aspettare piu di 10 minuti2 Se alle 1015 lrsquoautobus non e ancora arrivato qual e la probabilita che

tu debba aspettare almeno altri 10 minuti

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 87 88

Esercizi - 6

11 Il signor Jones e convinto che il tempo di vita di una automobile (inmigliaia di chilometri percorse) sia una variabile aleatoria esponenzialedi parametro 120 Il signor Smith ha una macchina usata da vendereche ha percorso circa 10 000 chilometri

1 Se il signor Jones decide di comprarla che probabilita ha di farle farealmeno altri 20 000 chilometri prima che sia da buttare

2 Il modello assunto dal signor Jones e ragionevole

12 Sia X una variabile casuale binomiale di parametri n = 100 e p = 07

1 Tracciate la funzione di ripartizione di X2 Calcolate il primo quartile il quantile di ordine 09 e la mediana di X3 Calcolare la probabilita P(X le 60)4 Calcolare la probabilita P(X le 88)5 Trovare il piu piccolo valore x tale che P(X le x) ge 09

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 88 88

  • Lezione 1
    • Script in Python
    • Numpy
    • Esercizi
    • Pandas
    • Esercizi
      • Lezione 2
        • File csv
        • DataFrame
        • Accesso ai DataFrame
        • Frequenze
        • Esercizi
          • Lezione 3
            • Matplotlib
            • Grafici a Barre
            • Istogrammi
            • Cumulativa empirica
            • Boxplot
            • QQplot
            • Diagramma di Pareto
            • Esercizi
              • Lezione 4
                • Definizioni
                • Probabilitagrave condizionata
                • Indipendenza
                • Esercizi
                  • Lezione 5
                    • Variabili Aleatorie
                    • Funzione di Ripartizione
                    • Funzione di Densitagrave
                    • Valore Atteso
                    • Varianza
                    • Covarianza
                    • Esercizi
                      • Lezione 6
                        • Scipy - Variabili Discrete
                        • Scipy - Variabili continue
                        • Esercizi

Variabili in Python - 1

Python e dinamicamente tipato e fortemente tipatoUna variabile inizia ad esistere nel momento in cui le viene assegnato unvalore che ne determina il tipo

gtgtgt a=10000

gtgtgt type(a)

lttype lsquointrsquogt

gtgtgt len(a)

Traceback (most recent call last)

File ltstdingt line 1 in ltmodulegt

TypeError object of type rsquointrsquo has no len()

gtgtgt

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 8 88

Variabili in Python - 2

Riferirsi ad una variabile inesistente (a cui non e ancora stato assegnato unvalore) genera un errore

gtgtgt b

Traceback (most recent call last)

File ltstdingt line 1 in ltmodulegt

NameError name rsquobrsquo is not defined

gtgtgt

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 9 88

Funzione Help

Per aprire la documentazione a riguardo di un particolare oggetto metodoo attributo si puo invocare la funzione help(rdquonomerdquo) con il nomedellrsquooggetto che stiamo cercando

gtgtgt help(str)

Help on class str in module builtin

class str(basestring)

| str(object=rsquorsquo) -gt string

|

| Return a nice string representation of the object

| If the argument is a string the return value is the

same object

|

Si esce dal manuale interattivo premendo q

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 10 88

Tipi Predefiniti in Python

Stringhe (str) rdquoquesta e una stringardquo rdquoquesta purerdquo

Dizionari (dict) lsquochiaversquo valoreTuple (tuple) (1 2 3 1 rsquociaorsquo)

Liste (list) [1 2 3 4 rsquopipporsquo]

Set (set) (1 2 3)

Interi (int) 1 2 3

Float (float) 15 314 2718281828459045

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 11 88

Numpy

Il modulo numpy (httpwwwnumpyorg) mette a disposizione unastruttura dati creata appositamente per il calcolo scientifico

ArrayUn array e un contenitore di dati omogenei cioe dello stesso tipo Se sitenta di costruire un array con dati di tipo diverso questi vengonoldquotrasformatirdquo nel piu piccolo tipo adatto a contenerli tutti

gtgtgt import numpy as np

gtgtgt nparray( [146810] )

array([ 1 4 68 10 ])

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 12 88

Creazione di Array - 1

numpyarange(x) restituisce un array contenente gli interi da 0 a x minus 1

gtgtgt numpyarange(5)

array([0 1 2 3 4])

numpyarange(start stop step) permette di scegliere gli estremi dellasequenza contenuta nellrsquoarray e il passo tra un numero ed il successivo

gtgtgt numpyarange(262)

array([2 4])

gtgtgt numpyarange(2-3-1)

array([ 2 1 0 -1 -2])

numpylinspace(start stop n) permette di scegliere gli estremi e quantinumeri devono comparire allrsquointerno della sequenza

gtgtgt numpylinspace(014)

array)[0 03333333 066666667 1])

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 13 88

Creazione di Array - 2

numpyones(rdquotuplardquo) restuituisce un array di 1 date le dimensionispecificate nella tupla come argomento

gtgtgt numpyones( (15) )

array([1 1 1 1 1])

numpyzeros(rdquotuplardquo) restuituisce un array di 0 date le dimensionispecificate nella tupla come argomento

gtgtgt numpyzeros( (25) )

array([[0 0 0 0 0] [0 0 0

0 0]])

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 14 88

Operazioni con Array

Applicando un operazione logica ad un array si ottiene come risposta unarray di tipo booleano contenente nella posizione i-esima il risultatodellrsquoespressione logica valutata per lrsquoelemento i-esimo dellrsquoarray

gtgtgt numpyarange(5) gt 3

array([False False False False True] dtype=bool)

Le operazioni + - tra due array vengono eseguite elemento perelemento (gli array devono avere le stesse dimensioni)

gtgtgt numpyarange(5) + numpylinspace(025)

array([ 0 15 3 45 6 ])

gtgtgt numpyarange(5) 2

array([0 2 4 6 8])

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 15 88

Selezioni di un sottoinsieme di elementi

Ad un array e possibile accedere in tutti i modi con cui e possibile accederead una lista ad esempio

Ottenere una tupla di elementi

gtgtgt a[2] a[-1] a[36]

(2 9 array([3 4 5]))

Slicing [startstopstep]

gtgtgt a[293]

array([2 5 8])

gtgtgt a[2]

array([0 2 4 6 8])

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 16 88

Accesso con maschere booleane

Specificando tra [ ] un array di tipo booleano selezioniamo dallrsquoarray glielementi la cui posizione corrisponde ad un True nellrsquoarray di tipobooleano (che prende il nome di maschera)

gtgtgt a = numpyarange(10)

gtgtgt mask = a2 == 0

gtgtgt mask

array([ True False True False True False True

False True False] dtype=bool)

gtgtgt a[mask]

array([0 2 4 6 8])

o in maniera piu compatta

gtgtgt a[a2 == 0]

array([0 2 4 6 8])

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 17 88

Esercizi

1 Lanciare uno script che stampi il vostro nome e cognome

2 Creare un array i cui elementi siano gli interi che compongono ilvostro numero di matricola

3 Sia X la lunghezza dellrsquoarray del punto precedente Creare un array diX elementi equispaziati lrsquouno dallrsquoaltro di 15

4 Creare un array di X elementi equispaziati nellrsquointervallo tra 1 e 3

5 Ottenere gli array dati dalla somma tra lrsquoarray del punto 2 e quello delpunto 3 e quello dato dalla moltiplicazione tra punto 3 e punto 4

6 Ottenere per ciascuno dei due array del punto 5 un array mascherache in corrispondenza dei numeri divisibili per 3 abbia True Falsealtrimenti

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 18 88

Pandas - Series (1)

Pandas (httpspandaspydataorg) e una libreria Python chefornisce strutture dati e strumenti relativi esclusivamente allrsquoanalisi deidatiUna Series e un array monodimensionale ed etichettato Rappresenta unaserie di osservazioni di un certo carattere fatto su un insieme di individui

a 00

b 10

c 20

d 30

e 40

f 50

g 60

h 70

Name serie di esempio dtype float64

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 19 88

Pandas - Series (2)

pandasSeries (data index dtype name )

data contiene i dati che si vuole inserire nella serie

index della stessa lunghezza di data contiene le etichette

dtype permette di specificare il tipo che i dati devono assumere

name permette di dare un nome alla Series

gtgtgt import pandas as pd

gtgtgt import numpy as np

gtgtgt oss = nparange(8)

gtgtgt etic = [rsquoarsquorsquobrsquorsquocrsquorsquodrsquorsquoersquorsquofrsquorsquogrsquorsquohrsquo]

gtgtgt pdSeries(data=oss index=etic name=rsquoserie di esempiorsquo

dtype=float)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 20 88

Accesso ai dati di una Series

Specificando un valore (o una lista di valori) per lrsquoetichetta

gtgtgt sloc[[rsquohrsquorsquoarsquo]]

h 70

a 00

Specificando un valore (o una lista di valori) per la posizione

gtgtgt s[[56]]

f 50

g 60

Usando lo slicing (come per gli array numpy) per la posizione

gtgtgt s[36]

d 30

e 40

f 50

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 21 88

Pandas Series - Utils

Seriesmin() Seriesmax() restituiscono rispettivamente il minimoed massimo tra i valori della Series

Seriessum() restituisce la somma dei valori della Series

Seriessort values() restituisce una copia della Series ordinata pervalore

Seriessort index() restituisce una copia della Series ordinata peretichette

Seriessample(n) restituisce una Series di n elementi sceltiuniformemente a caso allrsquointerno di quelli della Series

Seriesappend([s1s2]) concatena una o piu Series a quella dipartenza

Seriescount() restituisce il numero dei valori della Series che nonsiano il valore NaN

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 22 88

Il valore NaN

Nan un oggetto del modulo numpy che puo rappresentare in una Seriesun dato di cui non e stato possibile fare unrsquoosservazioneOperazioni con un valore Nan hanno come risultato il valore Nan

gtgtgt oss = range(5)

gtgtgt ossappend(None)

gtgtgt pandasSeries(oss)

0 00

1 10

2 20

3 30

4 40

5 NaN

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 23 88

Esercizi

Creare la Series gol in modo che le etichette siano numeri dallrsquo1 al 23 Idati raccolti siano numeri interi tra 0 e 30 scelti casualmente (scarica ilnotebook) La Series rappresenta i gol segnati da ciascun giocatore diuna societa calcistica nella stagione appena passata Lrsquoetichettacorrisponde al numero di maglia del giocatore Ottenere

1 I gol segnati dal capocannoniere2 Chi non ha mai fatto gol durante lrsquoanno3 La statistica del punto 2 per i soli titolari (numeri dallrsquo1 allrsquo11) e per

le sole riserve (dal 12 al 23)4 La statistica del punto 2 per i soli attaccanti (numeri dalrsquo9 allrsquo11)5 I gol segnati dai giocatori coi numeri di maglia 5 9 10 14 (somma)6 Chi ha segnato piu di 10 gol e chi ha segnato esattamente 10 gol7 Una copia della Series ordinata secondo i gol effettuati8 Una stampa dei primi 5 cannonieri e degli ultimi 59 Una copia della Series ordinata in modo discendente secondo il

numero di maglia

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 24 88

File csv

Il formato csv (comma-separated value) e un formato utilizzato perrappresentare una tabella di dati e favorirne lrsquoimportazione e lrsquoesportazioneUn file csv e scritto nella seguente forma

titolopaeseannoduratagenerevoto

Guerre StellariUSA1977121Fantascienza4

Lrsquoimpero colpisce ancoraUSA1980124Fantascienza4

Il ritorno dello JediUSA1983Fantascienza35

Profondo RossoITA1975Horror35

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 25 88

Leggere csv

La funzione read csv() di Pandas puo essere utilizzata per leggere unfile di formato csv Tra i vari parametri che passiamo in input unoparticolarmente importante e sep che indica il carattere utilizzato perseparare le colonne (default e rsquorsquo)

gtgtgt df film = pdread csv(rsquofilmcsvrsquo)

gtgtgt df film

titolo paese anno durata genere voto

Il padrino USA 19720 1750 Drammatico 45

Pulp Fiction USA 19940 1540 Drammatico 40

Fight Club USA 19990 1390 Thriller 40

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 26 88

DataFrame

In Pandas un DataFrame e una struttura dati tabulare con assi etichettatile cui colonne possono contenere dati eterogenei da colonna a colonna

gtgtgt dataframe

esempio

Nome Cognome Eta Citta

Tommaso Rossi 300 Milano

Sergio Bianchi 340 Roma

Pasquale Verdi 290 Palermo

Antonio Gialli 300 Roma

Il DataFrame puo essere visto come un insieme di serie aventi lo stessoindice accostate una allrsquoaltra

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 27 88

Accesso colonne DataFrame - 1

Per conoscere le colonne di un DataFrame possiamo invocare il comandodfcolumns dove df e la variabile in cui abbiamo instanziato ilDataFramePer accedere ad una colonna dobbiamo specificarne il nome nel seguentemodo

gtgtgt df film[rsquogenerersquo]

titolo

Il padrino Drammatico

Pulp Fiction Drammatico

Fight Club Thriller

Selezionando unrsquounica colonna in output viene restituita una Series

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 28 88

Accesso colonne DataFrame - 2

Possiamo accedere allo stesso tempo a piu colonne

gtgtgt df film[[rsquopaesersquorsquoannorsquo]]

titolo paese anno

Il padrino USA 19720

Pulp Fiction USA 19940

Fight Club USA 19990

Selezionando piu colonne in output viene restituito un DataFrame

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 29 88

Accesso righe DataFrame - 1

Per indice numerico

gtgtgt df film[1518]

titolo paese anno durata genere voto

Il padrino USA 19720 1750 Drammatico 45

Pulp Fiction USA 19940 1540 Drammatico 40

Fight Club USA 19990 1390 Thriller 40

Quasi Amici FRA 20110 1120 Commedia 35

Per valore dellrsquoindice (assumiamo che titolo sia lrsquoindice delDataFrame)

gtgtgt df film[rsquoIl padrinorsquorsquoFight Clubrsquo]

titolo paese anno durata genere voto

Il padrino USA 19720 1750 Drammatico 45

Pulp Fiction USA 19940 1540 Drammatico 40

Fight Club USA 19990 1390 Thriller 40

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 30 88

loc amp iloc

Cosı come per le Series anche con i DataFrame possiamo usare loc ediloc per lrsquoaccesso ai dati

loc[rsquonome indicersquo] permette lrsquoaccesso ad una riga o piu righetramite nome dellrsquoindice

iloc[rsquoposizionersquo] permette lrsquoaccesso ad una o piu righe tramitela loro posizione

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 31 88

Accesso tramite unrsquoespressione logica

gtgtgt df film[rsquoannorsquo gt 1998]

titolo

Il padrino False

Pulp Fiction False

Fight Club True

Quasi Amici True

gtgtgt df film[df film[rsquoannorsquo] gt 1998]

titolo paese anno durata genere voto

Fight Club USA 19990 1390 Thriller 40

Quasi Amici FRA 20110 1120 Commedia 35

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 32 88

Metodi dei DataFrame

La classe DataFrame ha diversi metodi Elenchiamo qui i piu importanti

DataFrameappend() permette di estendere il DataFrame

DataFramedrop duplicates() restituisce un DataFrame senza righeduplicate

DataFramedropna() Eliminare i valori Nan da un DataFrame

DataFramesort values() permette di ordinare il DataFrame

DataFramemax() DataFramemin() DataFramemean()DataFramemedian()

Per la completa documentazione si puo utilizzare il comandohelp(pdDataFrame) oppure andare al seguente linkhttpspandaspydataorgpandas-docsstablegenerated

pandasDataFramehtml

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 33 88

Frequenze

La frequenza assoluta indica il numero di volte che una dataosservazione occorre in un campione

La frequenza relativa e un valore tra 0 e 1 che permette di valutare inmaniera piu efficace la frequenza di un osservazione Si calcoladividendo la frequenza assoluta per il numero totale di casi

Per calcolare questa quantita in Pandas possiamo utilizzare la funzionevalue counts() che opera su una Series

In alternativa si puo utilizzare la funzione pdcrosstab che calcolaqueste frequenze in automatico restituendole in output in un DataFrame

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 34 88

Esercizi

Utilizzando il file dati-ospedalicsv dai csv del laboratorio

1 Leggere il file e visualizzarlo in un DataFrame

2 Calcolare le frequenze assolute e relative dellrsquoattributo Regioneusando crosstab

3 Ottenere la singola serie relativa allrsquoattributo Regione e calcolarne lafrequenza assoluta e relativa senza usare crosstab

4 Estrarre un sottodataframe contenente le colonne Nome (attributoDenominazione Str Pubblica New) e Numero di medici (attributoMedici SSN) degli ospedali aventi meno di 200 medici

5 Visualizzare il nome degli ospedali della regione Lombardia

6 Calcolare il numero medio di ingegneri (Ingegneri SSN) presenti negliospedali campani

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 35 88

Esercizi

7 Calcolare la varianza del numero di assistenti sociali (Assistenti socialiSSN) negli ospedali con piu di 400 medici

8 Qual e lrsquoospedale con meno medici

9 Visualizzare in ordine alfabetico il nome dei primi 10 ospedali pernumero di medici

10 Visualizzare il numero degli ospedali che hanno dichiarato il numerodi odontoiatri (per cui il valore e diverso da NaN) (OdontoiatriUniversitari)

11 Visualizzare il numero degli ospedali che hanno dichiarato il numerodi odontoiatri (Odontoiatri Universitari) e per cui questo numero emaggiore di 0

12 Calcolare le frequenze assolute per lrsquoattributo Odontoiatri SSNTrasformare questo risultato in frequenze relative

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 36 88

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) SAD 20182019 January 12 2019 37 88

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) SAD 20182019 January 12 2019 38 88

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) SAD 20182019 January 12 2019 39 88

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) SAD 20182019 January 12 2019 40 88

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) SAD 20182019 January 12 2019 41 88

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) SAD 20182019 January 12 2019 42 88

Grafici con le Series

In generale possiamo tracciare diversi tipi di grafici con le Series

rsquolinersquo line plot (default)

rsquobarrsquo vertical bar plot

rsquobarhrsquo horizontal bar plot

rsquohistrsquo histogram

rsquoboxrsquo boxplot

rsquokdersquo Kernel Density Estimation plot

rsquodensityrsquo same as rsquokdersquo

rsquoarearsquo area plot

rsquopiersquo pie plot

Per saperne di piu consultare questo link

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 43 88

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) SAD 20182019 January 12 2019 44 88

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) SAD 20182019 January 12 2019 45 88

Boxplot

Rappresenta la distribuzione di un vettore di numeri cerchiando gli outlier

gtgtgt weight = heroes[rsquoWeightrsquo]

gtgtgt weightplotbox()

gtgtgt pltshow()

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 46 88

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) SAD 20182019 January 12 2019 47 88

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) SAD 20182019 January 12 2019 48 88

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) SAD 20182019 January 12 2019 49 88

Esercizi - 1

Utilizzando il file capellicsv dai csv del laboratorio

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) SAD 20182019 January 12 2019 50 88

Esercizi - 2

Utilizzando il file dati-ospedalicsv dai csv del laboratorio

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 e canipdf

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 51 88

Sample space

Un esperimento e qualsiasi processo che produce una realizzazione (oosservazione) Lrsquoinsieme di tutte le possibili realizzazioni di un esperimentoviene detto sample space ed indicato con S

lancio di 2 monete

S = (T T ) (T C) (C T ) (C C)

gara di 3 cavalli (ab c)

S = tutti i possibili ordinamenti di(ab c)= (ab c) (a cb) (c b a)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 52 88

Eventi

lancio di 2 monete

S = (T T ) (T C) (C T ) (C C)

A = 2 monete uguali

A = (T T ) (C C)

B = 2 monete diverse

B = Ac = (T C) (C T )

gara di 3 cavalli

A = cavallo a vincente

A = (ab c) (a c b)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 53 88

Probabilita - 1

Consideriamo un esperimento con sample space S Supponiamo che adogni evento A sia associato un numero chiamato probabilita di A edindicato con P(A) che soddisfa le seguenti proprieta

1 Per ogni evento A la probabilita di A e un numero tra 0 e 1

0 le P(A) le 1

2 La probabilita del sample space S e 1

P(S) = 1

3 La probabilita dellrsquounione di eventi disgiunti e uguale alla somma delleprobabilita di tali eventi

P(A cupB) = P(A) + P(B)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 54 88

Probabilita - 2

In generale 2 eventi potrebbero non essere disgiunti

P(A cupB) = P(A) + P(B) minus P(A capB)

Esempio un certo negozio accetta pagamenti o con carte di credito VISAo Mastercard

1 22 dei clienti ha Mastercard

2 58 dei clienti ha VISA

3 14 dei clienti ha entrambe

Qual e la probabilita che un cliente ha almeno una delle 2 carte

P(A) = 022 P(B) = 058

P(A cupB) = P(A) + P(B) minus P(A capB) = 022 + 058 minus 014 = 066

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 55 88

Probabilita condizionata - 1

Se alcune informazioni riguardo lrsquoesito di un esperimento sono disponibiliparliamo di probabilita condizionata

Esempio lancio di 2 dadi

S = (11) (12) (65) (66)

Probabilita che la somma sia 10 (evento B) sapendo che il primo dadomostra 4 (evento A)

(41) (42) (43) (44) (45) (46)

P(B ∣A) = 16

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 56 88

Probabilita condizionata - 2

In generale

P(B ∣A) = P(A capB)P(A)

Supponiamo lrsquoesito sia in A

Per essere anche in B deve essere in entrambi A e B cioe in A capB

Sapendo che A e gia accaduto il nostro nuovo sample space diventa A

la probabilita di A capB viene calcolata rispetto ad A

Nel caso dei dadi

P(B ∣A) = P((46))P((41) (42) (43) (44) (45) (46)) = 136

16= 1

6

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 57 88

Indipendenza

In generale sapere che A e accaduto modifica le chance che B accadaNel caso cio non avvenga cioe se P(B ∣A) = P(B) allora i 2 eventi sidicono indipendenti In questo caso sapere che A e accaduto nonaggiunge alcuna informazione

SiccomeP(A capB) = P(B ∣A)P(A)

Abbiamo che B e indipendente da A se

P(A capB) = P(B)P(A)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 58 88

Esercizi - 1

1 Svolgere gli esercizi di combinatoria

2 Si consideri il seguente esperimento casuale rdquosi lancia tre volte unamonetardquo Qual e lo spazio degli esiti di questo esperimento casualeSi scriva esplicitamente lrsquoevento rdquosi ottengono piu teste che crocirdquo

3 Si consideri il seguente esperimento casuale rdquoSi tirano due dadirdquo Siconsiderino gli eventi E = rdquola somma dei punteggi e disparirdquo F = rdquoilprimo dado realizza un 1rdquo e G = rdquola somma dei punteggi e 5rdquo Sidescrivano gli eventi E cap F E cup F F capG E cap F c e E cap F capG

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 59 88

Esercizi - 2

4 Si consideri il seguente esperimento casuale rdquoUn sistema e compostoda 4 componenti ciascuno dei quali o funziona oppure e guasto Siosserva lo stato dei componenti ottenendo un vettore (x1 x2 x3 x4)dove xi e 1 oppure 0 a seconda che il componente i-esimo funzionioppure nordquo

1 Da quanti elementi e formato lo spazio degli esiti2 Il sistema nel suo insieme funziona fintantoche entrambi i componenti

1 e 2 oppure entrambi i componenti 3 e 4 funzionano Specifica tuttigli esiti dellrsquoevento il rdquosistema funzionardquo

3 Sia E lrsquoevento rdquoi componenti 1 e 3 sono guastirdquo Quanti esiti contiene

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 60 88

Esercizi - 3

5 Si dimostri che in uno spazio degli esiti Ω dotato di una probabilita Pper ogni evento E F sub Ω vale la disuguaglianza seguente

P(E cap F ) ge P(E) + P(F ) minus 1

6 Un gruppo di 5 bambini e 10 bambine e in fila in ordine casuale nelsenso che tutte le 15 possibili permutazioni si suppongonoequiprobabili

1 Qual e la probabilita che il quarto della fila sia un bambino2 E il dodicesimo3 Qual e la probabilita che un determinato bambino occupi la terza

posizione

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 61 88

Esercizi - 4

7 In un comune vi sono 5 alberghi Se 3 persone devono scegliere unalbergo in cui pernottare qual e la probabilita che finiscano tutte inalberghi differenti Che cosa stiamo assumendo senza dirloesplicitamente

8 La media del salario annuale di un gruppo di 100 lavoratori impiegatinellrsquoamministrazione di una grande azienda e di 130000 dollari conuna deviazione standard di 20000 dollari Se si prende una persona acaso da questo gruppo cosa possiamo dire sulla probabilita che il suosalario sia

1 tra i 90000 e i 170000 dollari2 superiore a 150000 dollari

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 62 88

Esercizi - 5

9 In una certa regione vi sono due ditte che producono forni amicroonde Quelli della fabbrica A sono difettosi con probabilita 005mentre quelli della fabbrica B con probabilita 001 Supponi di averacquistato due apparecchi prodotti dalla stessa ditta che puo essere laA o la B con probabilita del 50 Se il primo microonde e difettosoqual e la probabilita condizionata che sia difettoso anche il secondo

10 Hai chiesto ad un vicino di innaffiare una piantina delicata mentre seiin vacanza Pensi che senza acqua la piantina muoia con probabilita08 mentre se innaffiata questa probabilita si ridurrebbe a 015 Latua fiducia che il vicino si ricordi di innaffiarla e del 90

1 Qual e la probabilita che la pianta sia ancora viva al tuo ritorno2 Se fosse morta quale sarebbe la probabilita che il vicino si sia

dimenticato di innaffiarla

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 63 88

Esercizi - 6

11 Una compagnia di assicurazioni classifica i suoi clienti in tre fascebasso rischio medio rischio alto rischio Le sue statistiche indicanoche le probabilita che un cliente delle tre fasce abbia un incidenteentro un periodo di un anno sono rispettivamente 005 015 e 030Se il 20 dei clienti sono a basso rischio il 50 a medio rischio e il30 ad alto rischio che percentuale dei clienti avra mediamenteincidenti in un lasso di un anno Se un cliente non ha avuto incidentinel 1987 qual e la probabilita che appartenga a ciascuna delle trefasce

12 Se un votante scelto a caso e favorevole ad una certa riforma conprobabilita di 07 qual e la probabilita che su 10 votanti esattamente7 siano favorevoli

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 64 88

Variabili aleatorie

Una variabile aleatoria (o anche variabile aleatoria) e una variabile chepuo assumere valori diversi in dipendenza da qualche fenomeno aleatorio

fenomeno lancio di 2 dadivariabile aleatoria somma dei 2 dadi

fenomeno 3 lanci di una monetavariabile aleatoria numero di rdquotesterdquo complessivo

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 65 88

Funzione di Ripartizione

Sia X una variabile aleatoria Si chiama funzione di ripartizione di X lafunzione F che associa ad ogni numero reale a la probabilita che X siaminore o uguale ad a cioe P(X le a) = FX (a)

Nel caso della moneta (fair) lanciata 3 volte (X indica il numero di testecomplessivo)

FX (a) =

⎧⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎨⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎩

0 if a lt 0

18 per 0 le a lt 1

18 + 38 = 48 per 1 le a lt 2

48 + 38 = 78 per 2 le a lt 3

88 = 1 per a ge 3

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 66 88

Funzione di densita o di massa

Sia X una variabile aleatoria Si chiama funzione di densita di X lafunzione f che associa ad ogni numero reale a la probabilita che X siauguale ad a indicata con fX (a)

Nel caso della moneta (fair) lanciata 3 volte (X indica il numero di testecomplessivo)

fX (a) =

⎧⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎨⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎩

18 per a = 0

38 per a = 1

38 per a = 2

18 per a = 3

0 altrimenti

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 67 88

Valore Atteso

Chiamato anche media (expectation in inglese) e appunto una mediapesata dei possibili valori di una variabile aleatoria Il peso dato a ciascunvalore e la probabilita data a quello specifico valore

E[X ] =sumi

aiP(X = ai)

Esempio dado truccato

valore 6 con probabilita 712

valori da 1 a 5 con probabilita 112

La variabile aleatoria X indica la faccia risultante dal lancio di un dado

E[X ] = 1

12lowast 1 + 1

12lowast 2 + 1

12lowast 3 + 1

12lowast 4 + 1

12lowast 5 + 7

12lowast 6 = 475

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 68 88

Valore Atteso - Proprieta

Sia X una variabile aleatoria con valore atteso E[X ] Se c e una costanteallora anche cX e X + c sono variabili casuali In particolare valgono leseguenti proprieta

E[cX ] = cE[X ]E[X + c] = E[X ] + c

Sia Y una variabile aleatoria Allora

E[X +Y ] = E[X ] +E[Y ]se e solo se X e Y sono independenti

E[XY ] = E[X ]E[Y ]

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 69 88

Varianza

Ersquo il valore atteso del quadrato della differenza tra la variabile aleatoria e ilsuo valore atteso

Var(X ) = E[(X minusE[X ])2] = E[X 2] minus (E[X ])2

La radice quadrata viene detta deviazione standard di X

Esempio dado truccato

E[X 2] = 1

12lowast 12 + 1

12lowast 22 + 1

12lowast 32 + 1

12lowast 42 + 1

12lowast 52 + 7

12lowast 62 ≃ 255

Var(X ) = E[X 2] minus (E[X ])2 ≃ 255 minus 4752 ≃ 3

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 70 88

Varianza - proprieta

Sia X una variabile aleatoria e c una costante Allora valgono le seguentiproprieta

1 Var(cX ) = c2Var(X )

2 Var(X + c) = Var(X )

NOTA

Var(X +X ) ne Var(X ) +Var(X )

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 71 88

Covarianza

Siano X Y due variabili aleatorie con valore atteso rispettivamenteE[X ] = microX e E[Y ] = microY La covarianza e definita come segue

Cov(X Y ) = E[(X minus microX )(Y minus microY )] = = E[XY ] minus microXmicroY

Proprieta

1 Cov(X Y ) = Cov(Y X )2 Cov(X X ) = Var(X )3 Sia a una costante allora

Cov(aX Y ) = aCov(X Y )

4 Sia Z una variabile aleatoria allora

Cov(X + Z Y ) = Cov(X Y ) + Cov(Z Y )

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 72 88

Esercizi - 1

1 Consideriamo una variabile aleatoria X che puo assumere i valori 12o 3 Se sappiamo che

fX (1) = 1

3 fX (2) = 3

7

1 Quanto vale fX (3)2 Disegnare il grafico di questa funzione di massa3 Disegnare il grafico della relativa funzione di ripartizione

2 Dimostrare che se X1 e X2 hanno la stessa distribuzione allora

Cov(X1 +X2X1 minusX2) = 0

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 73 88

Esercizi - 2

3 La funzione di ripartizione di X e definita come segue

FX (x) =

⎧⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎨⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎩

0 per x le 0

x2 per 0 le x lt 1

23 per 1 le x lt 2

1112 per 2 le x lt 3

1 per x ge 3

Se ne tracci il graficoQuanto vale P(X gt 12)Quanto vale P(2 le X le 4)Quanto vale P(X le 3)Quanto vale P(X = 1)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 74 88

Esercizi - 3

4 Un tipo di prodotti vengono classificati a seconda dei loro difetti edella fabbrica che li ha prodotti Sia X1 il numero (1 o 2) dellafabbrica e sia X2 il numero di difetti per pezzo (che possono essere da0 a 3) di un prodotto scelto a caso tra la totalita di quelli esistentiLa tabella seguente riporta la funzione di massa di probabilitacongiunta per queste due variabili aleatorie discrete Le righe siriferiscono alla variabile X1 mentre le colonne alla variabile X2

Trova le distribuzioni marginali di X1 e X2Calcola media e varianza di X2

0 1 2 31 18 116 316 182 116 116 18 14

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 75 88

Scipy

Scipy e un modulo che permette di utilizzare varie distribuzioni diprobabilita sia di tipo discreto che continuo

La sintassi generale e la seguente Scipystatsltnome distribuzionegt

rvs(size=z) restituisce un vettore di numeri casuali estrattisecondo la distribuzione di lunghezza z

pdf(x) restituisce il vettore della densita della distribuzionevalutata nei valori del vettore di input x (pmf per le discrete)

cdf(x) restituisce il vettore della funzione di ripartizione (ocumulativa) della distribuzione valutata nei valori del vettore di inputx

ppf(q) restituisce il vettore dei quantili della distribuzione valutatanei valori del vettore di input q

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 76 88

Variabili aleatorie discrete Binomiale

gtgtgt from scipystats import binom

gtgtgt rv = binom(n p)

rvrvs(x) restituisce un vettore di x numeri estratti secondo unadistribuzione Binomiale di parametri n p

rvpmf(x) restituisce la probabilita di ottenere esattamente x

successi in un esperimento dicotomico (01) ripetuto n volte con unaprobabilita di successo p (x puo essere un vettore)

rvcdf(q) restituisce il valore della funzione di ripartizione in q (qpuo essere un vettore)

rvppf(p) restituisce il valore del quantile di ordine p

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 77 88

Variabili aleatorie discrete Ipergeometrica

Supponiamo di avere M = 20 animali di cui n = 7 cani Se vogliamosapere la probabilita di trovare un dato numero di cani se scegliamoN = 12 dei 20 animali in maniera casuale possiamo usare una distribuzioneipergeometrica in questo modo

gtgtgt from scipystats import hypergeom

gtgtgt [M n N] = [20 7 12]

gtgtgt rv = hypergeom(M n N)

rvpmf(x) restituisce la probabilita di estrarre esattamente x cani

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 78 88

Variabili aleatorie discrete Geometrica

gtgtgt from scipystats import geom

gtgtgt rv = geom(p)

rvpmf(x) restituisce la probabilita di avere un successo dopoesattamente x insuccessi in una successione di esperimenti dicotomici(esito 01) con una probabilita di successo p (x puo essere un vettore)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 79 88

Variabili aleatorie discrete Poisson

La distribuzione di Poisson viene usata spesso come modello per il numerodi volte per cui un evento avviene in un dato intervallo di tempo (ospazio) Ad esempio si puo utilizzare per misurare il numero di chiamatericevute da un call center in una mattinata

gtgtgt from scipystats import poisson

gtgtgt mu = 2

gtgtgt rv = poisson(mu)

rvpmf(x) restituisce il seguente valore

f (x) = exp(minusmicro)microx

x

In questo caso x rappresenta il numero di eventi per cui si vuole calcolarela probabilita sapendo che in media ne accadono micro

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 80 88

Variabili aleatorie continue Uniforme

In Scipy la funzione uniforme e soltanto continua Questo significa chenella generazione di numeri casuali otterro dati di tipo float Possiamotuttavia simulare una variabile discreta estraendo la parte intera delrisultato ottenuto

gtgtgt from scipystats import uniform

gtgtgt rv = uniform()

Il comando uniform() crea una distribuzione uniforme nellrsquointervallo[01] Possiamo creare una distribuzione uniforme qualsiasi usandouniform(x y - x) per lrsquointervallo [x y]

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 81 88

Variabili aleatorie continue

norm(mu sigma) variabile Gaussiana (o Normale) di media micro edeviazione standard σ

expon(scale = 1 lambda) variabile Esponenziale di parametroλ

Altre distribuzioni (con relativa documentazione) disponibili suhttpsdocsscipyorgdocscipyreferencestatshtml

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 82 88

Esercizi - 1

1 Unrsquourna contiene 10 palline di cui 4 bianche e 6 nere Si eseguono 5estrazioni con reimmissione

1 Tracciare grafico della funzione massa di probabilita della variabilecasuale X = rdquonumero di palline bianche estratterdquo

2 Calcolare la probabilita di estrarre 2 palline bianche3 Calcolare la probabilita di estrarre al piu 2 palline bianche4 Calcolare la probabilita di estrarre almeno 2 palline bianche5 Qual e il numero minimo x tale che la probabilita di estrarre al piu x

palline bianche sia almeno 08

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 83 88

Esercizi - 2

2 Si eseguono 10 estrazioni senza reimmissione da unrsquourna

1 Tracciare il grafico della funzione massa di probabilita della variabilecasuale X = rdquonumero di palline bianche estratterdquo nei seguenti casi

1 lrsquourna contiene 100 palline di cui 20 bianche e le restanti nere2 lrsquourna contiene 100 palline di cui 2 bianche e le restanti nere

2 Tracciare il grafico della funzione massa di probabilita della variabilecasuale X nel caso dellrsquourna 1 se si eseguono 25 estrazioni

3 Consideriamo lrsquourna 1 e N = 10 estrazioni Si aumenti il numero totaleM di palline nellrsquourna mantenendo uguale a 02 la frazione di pallinebianche Per ciascun valore di M confrontare graficamente ladistribuzione di probabilita del numero di palline bianche estratte nelcaso di estrazioni con e senza reimmissione Provare con 20 40 e 200palline bianche

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 84 88

Esercizi - 3

3 Calcolare la probabilita di ottenere piu teste che croci lanciando 7volte una moneta truccata con probabilita di avere croce pari a 045

4 Calcolare la probabilita di avere almeno 3 sei lanciando 5 dadi a 12facce

5 Calcolare la probabilita di estrarre 20 euro da un sacco contenente 47monete da 1 centesimo e 53 da 2 euro estraendo (uniformemente) acaso 10 monete senza reinserirle

6 Un grammo di uranio emette mediamente 2152 particelle α ognimillisecondo Qual e con buona approssimazione la probabilita che ungrammo di uranio emetta al piu 2000 particelle α in un millisecondo

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 85 88

Esercizi - 4

7 Un uomo si risveglia in mezzo al deserto senza acqua Dopo ogniminuto ha una probabilita del 3 di perdere conoscenza per via dellecondizioni estreme Calcolare la probabilita che lrsquouomo perdaconoscenza dopo almeno due ore e la probabilita che lrsquouomo perdaconoscenza dopo esattamente un quarto drsquoora

8 Sia X una variabile aleatoria normale di parametri micro = 10 e σ = 36Calcola

1 P(X gt 5)2 P(4 le X le 16)3 P(X le 8)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 86 88

Esercizi - 5

9 Il numero di errori tipografici per pagina di una certa rivista segue unadistribuzione di Poisson Sapendo che mediamente sono presenti 02errori per pagina determinare la probabilita che una pagina contenga

1 nessun refuso2 piu refusi

10 Arrivi alla fermata dellrsquoautobus alle 1000 e sei certo che ne passerauno in un momento distribuito uniformemente tra le 1000 e le 1030

1 Qual e la probabilita che tu debba aspettare piu di 10 minuti2 Se alle 1015 lrsquoautobus non e ancora arrivato qual e la probabilita che

tu debba aspettare almeno altri 10 minuti

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 87 88

Esercizi - 6

11 Il signor Jones e convinto che il tempo di vita di una automobile (inmigliaia di chilometri percorse) sia una variabile aleatoria esponenzialedi parametro 120 Il signor Smith ha una macchina usata da vendereche ha percorso circa 10 000 chilometri

1 Se il signor Jones decide di comprarla che probabilita ha di farle farealmeno altri 20 000 chilometri prima che sia da buttare

2 Il modello assunto dal signor Jones e ragionevole

12 Sia X una variabile casuale binomiale di parametri n = 100 e p = 07

1 Tracciate la funzione di ripartizione di X2 Calcolate il primo quartile il quantile di ordine 09 e la mediana di X3 Calcolare la probabilita P(X le 60)4 Calcolare la probabilita P(X le 88)5 Trovare il piu piccolo valore x tale che P(X le x) ge 09

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 88 88

  • Lezione 1
    • Script in Python
    • Numpy
    • Esercizi
    • Pandas
    • Esercizi
      • Lezione 2
        • File csv
        • DataFrame
        • Accesso ai DataFrame
        • Frequenze
        • Esercizi
          • Lezione 3
            • Matplotlib
            • Grafici a Barre
            • Istogrammi
            • Cumulativa empirica
            • Boxplot
            • QQplot
            • Diagramma di Pareto
            • Esercizi
              • Lezione 4
                • Definizioni
                • Probabilitagrave condizionata
                • Indipendenza
                • Esercizi
                  • Lezione 5
                    • Variabili Aleatorie
                    • Funzione di Ripartizione
                    • Funzione di Densitagrave
                    • Valore Atteso
                    • Varianza
                    • Covarianza
                    • Esercizi
                      • Lezione 6
                        • Scipy - Variabili Discrete
                        • Scipy - Variabili continue
                        • Esercizi

Variabili in Python - 2

Riferirsi ad una variabile inesistente (a cui non e ancora stato assegnato unvalore) genera un errore

gtgtgt b

Traceback (most recent call last)

File ltstdingt line 1 in ltmodulegt

NameError name rsquobrsquo is not defined

gtgtgt

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 9 88

Funzione Help

Per aprire la documentazione a riguardo di un particolare oggetto metodoo attributo si puo invocare la funzione help(rdquonomerdquo) con il nomedellrsquooggetto che stiamo cercando

gtgtgt help(str)

Help on class str in module builtin

class str(basestring)

| str(object=rsquorsquo) -gt string

|

| Return a nice string representation of the object

| If the argument is a string the return value is the

same object

|

Si esce dal manuale interattivo premendo q

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 10 88

Tipi Predefiniti in Python

Stringhe (str) rdquoquesta e una stringardquo rdquoquesta purerdquo

Dizionari (dict) lsquochiaversquo valoreTuple (tuple) (1 2 3 1 rsquociaorsquo)

Liste (list) [1 2 3 4 rsquopipporsquo]

Set (set) (1 2 3)

Interi (int) 1 2 3

Float (float) 15 314 2718281828459045

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 11 88

Numpy

Il modulo numpy (httpwwwnumpyorg) mette a disposizione unastruttura dati creata appositamente per il calcolo scientifico

ArrayUn array e un contenitore di dati omogenei cioe dello stesso tipo Se sitenta di costruire un array con dati di tipo diverso questi vengonoldquotrasformatirdquo nel piu piccolo tipo adatto a contenerli tutti

gtgtgt import numpy as np

gtgtgt nparray( [146810] )

array([ 1 4 68 10 ])

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 12 88

Creazione di Array - 1

numpyarange(x) restituisce un array contenente gli interi da 0 a x minus 1

gtgtgt numpyarange(5)

array([0 1 2 3 4])

numpyarange(start stop step) permette di scegliere gli estremi dellasequenza contenuta nellrsquoarray e il passo tra un numero ed il successivo

gtgtgt numpyarange(262)

array([2 4])

gtgtgt numpyarange(2-3-1)

array([ 2 1 0 -1 -2])

numpylinspace(start stop n) permette di scegliere gli estremi e quantinumeri devono comparire allrsquointerno della sequenza

gtgtgt numpylinspace(014)

array)[0 03333333 066666667 1])

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 13 88

Creazione di Array - 2

numpyones(rdquotuplardquo) restuituisce un array di 1 date le dimensionispecificate nella tupla come argomento

gtgtgt numpyones( (15) )

array([1 1 1 1 1])

numpyzeros(rdquotuplardquo) restuituisce un array di 0 date le dimensionispecificate nella tupla come argomento

gtgtgt numpyzeros( (25) )

array([[0 0 0 0 0] [0 0 0

0 0]])

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 14 88

Operazioni con Array

Applicando un operazione logica ad un array si ottiene come risposta unarray di tipo booleano contenente nella posizione i-esima il risultatodellrsquoespressione logica valutata per lrsquoelemento i-esimo dellrsquoarray

gtgtgt numpyarange(5) gt 3

array([False False False False True] dtype=bool)

Le operazioni + - tra due array vengono eseguite elemento perelemento (gli array devono avere le stesse dimensioni)

gtgtgt numpyarange(5) + numpylinspace(025)

array([ 0 15 3 45 6 ])

gtgtgt numpyarange(5) 2

array([0 2 4 6 8])

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 15 88

Selezioni di un sottoinsieme di elementi

Ad un array e possibile accedere in tutti i modi con cui e possibile accederead una lista ad esempio

Ottenere una tupla di elementi

gtgtgt a[2] a[-1] a[36]

(2 9 array([3 4 5]))

Slicing [startstopstep]

gtgtgt a[293]

array([2 5 8])

gtgtgt a[2]

array([0 2 4 6 8])

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 16 88

Accesso con maschere booleane

Specificando tra [ ] un array di tipo booleano selezioniamo dallrsquoarray glielementi la cui posizione corrisponde ad un True nellrsquoarray di tipobooleano (che prende il nome di maschera)

gtgtgt a = numpyarange(10)

gtgtgt mask = a2 == 0

gtgtgt mask

array([ True False True False True False True

False True False] dtype=bool)

gtgtgt a[mask]

array([0 2 4 6 8])

o in maniera piu compatta

gtgtgt a[a2 == 0]

array([0 2 4 6 8])

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 17 88

Esercizi

1 Lanciare uno script che stampi il vostro nome e cognome

2 Creare un array i cui elementi siano gli interi che compongono ilvostro numero di matricola

3 Sia X la lunghezza dellrsquoarray del punto precedente Creare un array diX elementi equispaziati lrsquouno dallrsquoaltro di 15

4 Creare un array di X elementi equispaziati nellrsquointervallo tra 1 e 3

5 Ottenere gli array dati dalla somma tra lrsquoarray del punto 2 e quello delpunto 3 e quello dato dalla moltiplicazione tra punto 3 e punto 4

6 Ottenere per ciascuno dei due array del punto 5 un array mascherache in corrispondenza dei numeri divisibili per 3 abbia True Falsealtrimenti

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 18 88

Pandas - Series (1)

Pandas (httpspandaspydataorg) e una libreria Python chefornisce strutture dati e strumenti relativi esclusivamente allrsquoanalisi deidatiUna Series e un array monodimensionale ed etichettato Rappresenta unaserie di osservazioni di un certo carattere fatto su un insieme di individui

a 00

b 10

c 20

d 30

e 40

f 50

g 60

h 70

Name serie di esempio dtype float64

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 19 88

Pandas - Series (2)

pandasSeries (data index dtype name )

data contiene i dati che si vuole inserire nella serie

index della stessa lunghezza di data contiene le etichette

dtype permette di specificare il tipo che i dati devono assumere

name permette di dare un nome alla Series

gtgtgt import pandas as pd

gtgtgt import numpy as np

gtgtgt oss = nparange(8)

gtgtgt etic = [rsquoarsquorsquobrsquorsquocrsquorsquodrsquorsquoersquorsquofrsquorsquogrsquorsquohrsquo]

gtgtgt pdSeries(data=oss index=etic name=rsquoserie di esempiorsquo

dtype=float)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 20 88

Accesso ai dati di una Series

Specificando un valore (o una lista di valori) per lrsquoetichetta

gtgtgt sloc[[rsquohrsquorsquoarsquo]]

h 70

a 00

Specificando un valore (o una lista di valori) per la posizione

gtgtgt s[[56]]

f 50

g 60

Usando lo slicing (come per gli array numpy) per la posizione

gtgtgt s[36]

d 30

e 40

f 50

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 21 88

Pandas Series - Utils

Seriesmin() Seriesmax() restituiscono rispettivamente il minimoed massimo tra i valori della Series

Seriessum() restituisce la somma dei valori della Series

Seriessort values() restituisce una copia della Series ordinata pervalore

Seriessort index() restituisce una copia della Series ordinata peretichette

Seriessample(n) restituisce una Series di n elementi sceltiuniformemente a caso allrsquointerno di quelli della Series

Seriesappend([s1s2]) concatena una o piu Series a quella dipartenza

Seriescount() restituisce il numero dei valori della Series che nonsiano il valore NaN

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 22 88

Il valore NaN

Nan un oggetto del modulo numpy che puo rappresentare in una Seriesun dato di cui non e stato possibile fare unrsquoosservazioneOperazioni con un valore Nan hanno come risultato il valore Nan

gtgtgt oss = range(5)

gtgtgt ossappend(None)

gtgtgt pandasSeries(oss)

0 00

1 10

2 20

3 30

4 40

5 NaN

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 23 88

Esercizi

Creare la Series gol in modo che le etichette siano numeri dallrsquo1 al 23 Idati raccolti siano numeri interi tra 0 e 30 scelti casualmente (scarica ilnotebook) La Series rappresenta i gol segnati da ciascun giocatore diuna societa calcistica nella stagione appena passata Lrsquoetichettacorrisponde al numero di maglia del giocatore Ottenere

1 I gol segnati dal capocannoniere2 Chi non ha mai fatto gol durante lrsquoanno3 La statistica del punto 2 per i soli titolari (numeri dallrsquo1 allrsquo11) e per

le sole riserve (dal 12 al 23)4 La statistica del punto 2 per i soli attaccanti (numeri dalrsquo9 allrsquo11)5 I gol segnati dai giocatori coi numeri di maglia 5 9 10 14 (somma)6 Chi ha segnato piu di 10 gol e chi ha segnato esattamente 10 gol7 Una copia della Series ordinata secondo i gol effettuati8 Una stampa dei primi 5 cannonieri e degli ultimi 59 Una copia della Series ordinata in modo discendente secondo il

numero di maglia

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 24 88

File csv

Il formato csv (comma-separated value) e un formato utilizzato perrappresentare una tabella di dati e favorirne lrsquoimportazione e lrsquoesportazioneUn file csv e scritto nella seguente forma

titolopaeseannoduratagenerevoto

Guerre StellariUSA1977121Fantascienza4

Lrsquoimpero colpisce ancoraUSA1980124Fantascienza4

Il ritorno dello JediUSA1983Fantascienza35

Profondo RossoITA1975Horror35

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 25 88

Leggere csv

La funzione read csv() di Pandas puo essere utilizzata per leggere unfile di formato csv Tra i vari parametri che passiamo in input unoparticolarmente importante e sep che indica il carattere utilizzato perseparare le colonne (default e rsquorsquo)

gtgtgt df film = pdread csv(rsquofilmcsvrsquo)

gtgtgt df film

titolo paese anno durata genere voto

Il padrino USA 19720 1750 Drammatico 45

Pulp Fiction USA 19940 1540 Drammatico 40

Fight Club USA 19990 1390 Thriller 40

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 26 88

DataFrame

In Pandas un DataFrame e una struttura dati tabulare con assi etichettatile cui colonne possono contenere dati eterogenei da colonna a colonna

gtgtgt dataframe

esempio

Nome Cognome Eta Citta

Tommaso Rossi 300 Milano

Sergio Bianchi 340 Roma

Pasquale Verdi 290 Palermo

Antonio Gialli 300 Roma

Il DataFrame puo essere visto come un insieme di serie aventi lo stessoindice accostate una allrsquoaltra

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 27 88

Accesso colonne DataFrame - 1

Per conoscere le colonne di un DataFrame possiamo invocare il comandodfcolumns dove df e la variabile in cui abbiamo instanziato ilDataFramePer accedere ad una colonna dobbiamo specificarne il nome nel seguentemodo

gtgtgt df film[rsquogenerersquo]

titolo

Il padrino Drammatico

Pulp Fiction Drammatico

Fight Club Thriller

Selezionando unrsquounica colonna in output viene restituita una Series

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 28 88

Accesso colonne DataFrame - 2

Possiamo accedere allo stesso tempo a piu colonne

gtgtgt df film[[rsquopaesersquorsquoannorsquo]]

titolo paese anno

Il padrino USA 19720

Pulp Fiction USA 19940

Fight Club USA 19990

Selezionando piu colonne in output viene restituito un DataFrame

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 29 88

Accesso righe DataFrame - 1

Per indice numerico

gtgtgt df film[1518]

titolo paese anno durata genere voto

Il padrino USA 19720 1750 Drammatico 45

Pulp Fiction USA 19940 1540 Drammatico 40

Fight Club USA 19990 1390 Thriller 40

Quasi Amici FRA 20110 1120 Commedia 35

Per valore dellrsquoindice (assumiamo che titolo sia lrsquoindice delDataFrame)

gtgtgt df film[rsquoIl padrinorsquorsquoFight Clubrsquo]

titolo paese anno durata genere voto

Il padrino USA 19720 1750 Drammatico 45

Pulp Fiction USA 19940 1540 Drammatico 40

Fight Club USA 19990 1390 Thriller 40

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 30 88

loc amp iloc

Cosı come per le Series anche con i DataFrame possiamo usare loc ediloc per lrsquoaccesso ai dati

loc[rsquonome indicersquo] permette lrsquoaccesso ad una riga o piu righetramite nome dellrsquoindice

iloc[rsquoposizionersquo] permette lrsquoaccesso ad una o piu righe tramitela loro posizione

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 31 88

Accesso tramite unrsquoespressione logica

gtgtgt df film[rsquoannorsquo gt 1998]

titolo

Il padrino False

Pulp Fiction False

Fight Club True

Quasi Amici True

gtgtgt df film[df film[rsquoannorsquo] gt 1998]

titolo paese anno durata genere voto

Fight Club USA 19990 1390 Thriller 40

Quasi Amici FRA 20110 1120 Commedia 35

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 32 88

Metodi dei DataFrame

La classe DataFrame ha diversi metodi Elenchiamo qui i piu importanti

DataFrameappend() permette di estendere il DataFrame

DataFramedrop duplicates() restituisce un DataFrame senza righeduplicate

DataFramedropna() Eliminare i valori Nan da un DataFrame

DataFramesort values() permette di ordinare il DataFrame

DataFramemax() DataFramemin() DataFramemean()DataFramemedian()

Per la completa documentazione si puo utilizzare il comandohelp(pdDataFrame) oppure andare al seguente linkhttpspandaspydataorgpandas-docsstablegenerated

pandasDataFramehtml

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 33 88

Frequenze

La frequenza assoluta indica il numero di volte che una dataosservazione occorre in un campione

La frequenza relativa e un valore tra 0 e 1 che permette di valutare inmaniera piu efficace la frequenza di un osservazione Si calcoladividendo la frequenza assoluta per il numero totale di casi

Per calcolare questa quantita in Pandas possiamo utilizzare la funzionevalue counts() che opera su una Series

In alternativa si puo utilizzare la funzione pdcrosstab che calcolaqueste frequenze in automatico restituendole in output in un DataFrame

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 34 88

Esercizi

Utilizzando il file dati-ospedalicsv dai csv del laboratorio

1 Leggere il file e visualizzarlo in un DataFrame

2 Calcolare le frequenze assolute e relative dellrsquoattributo Regioneusando crosstab

3 Ottenere la singola serie relativa allrsquoattributo Regione e calcolarne lafrequenza assoluta e relativa senza usare crosstab

4 Estrarre un sottodataframe contenente le colonne Nome (attributoDenominazione Str Pubblica New) e Numero di medici (attributoMedici SSN) degli ospedali aventi meno di 200 medici

5 Visualizzare il nome degli ospedali della regione Lombardia

6 Calcolare il numero medio di ingegneri (Ingegneri SSN) presenti negliospedali campani

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 35 88

Esercizi

7 Calcolare la varianza del numero di assistenti sociali (Assistenti socialiSSN) negli ospedali con piu di 400 medici

8 Qual e lrsquoospedale con meno medici

9 Visualizzare in ordine alfabetico il nome dei primi 10 ospedali pernumero di medici

10 Visualizzare il numero degli ospedali che hanno dichiarato il numerodi odontoiatri (per cui il valore e diverso da NaN) (OdontoiatriUniversitari)

11 Visualizzare il numero degli ospedali che hanno dichiarato il numerodi odontoiatri (Odontoiatri Universitari) e per cui questo numero emaggiore di 0

12 Calcolare le frequenze assolute per lrsquoattributo Odontoiatri SSNTrasformare questo risultato in frequenze relative

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 36 88

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) SAD 20182019 January 12 2019 37 88

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) SAD 20182019 January 12 2019 38 88

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) SAD 20182019 January 12 2019 39 88

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) SAD 20182019 January 12 2019 40 88

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) SAD 20182019 January 12 2019 41 88

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) SAD 20182019 January 12 2019 42 88

Grafici con le Series

In generale possiamo tracciare diversi tipi di grafici con le Series

rsquolinersquo line plot (default)

rsquobarrsquo vertical bar plot

rsquobarhrsquo horizontal bar plot

rsquohistrsquo histogram

rsquoboxrsquo boxplot

rsquokdersquo Kernel Density Estimation plot

rsquodensityrsquo same as rsquokdersquo

rsquoarearsquo area plot

rsquopiersquo pie plot

Per saperne di piu consultare questo link

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 43 88

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) SAD 20182019 January 12 2019 44 88

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) SAD 20182019 January 12 2019 45 88

Boxplot

Rappresenta la distribuzione di un vettore di numeri cerchiando gli outlier

gtgtgt weight = heroes[rsquoWeightrsquo]

gtgtgt weightplotbox()

gtgtgt pltshow()

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 46 88

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) SAD 20182019 January 12 2019 47 88

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) SAD 20182019 January 12 2019 48 88

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) SAD 20182019 January 12 2019 49 88

Esercizi - 1

Utilizzando il file capellicsv dai csv del laboratorio

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) SAD 20182019 January 12 2019 50 88

Esercizi - 2

Utilizzando il file dati-ospedalicsv dai csv del laboratorio

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 e canipdf

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 51 88

Sample space

Un esperimento e qualsiasi processo che produce una realizzazione (oosservazione) Lrsquoinsieme di tutte le possibili realizzazioni di un esperimentoviene detto sample space ed indicato con S

lancio di 2 monete

S = (T T ) (T C) (C T ) (C C)

gara di 3 cavalli (ab c)

S = tutti i possibili ordinamenti di(ab c)= (ab c) (a cb) (c b a)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 52 88

Eventi

lancio di 2 monete

S = (T T ) (T C) (C T ) (C C)

A = 2 monete uguali

A = (T T ) (C C)

B = 2 monete diverse

B = Ac = (T C) (C T )

gara di 3 cavalli

A = cavallo a vincente

A = (ab c) (a c b)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 53 88

Probabilita - 1

Consideriamo un esperimento con sample space S Supponiamo che adogni evento A sia associato un numero chiamato probabilita di A edindicato con P(A) che soddisfa le seguenti proprieta

1 Per ogni evento A la probabilita di A e un numero tra 0 e 1

0 le P(A) le 1

2 La probabilita del sample space S e 1

P(S) = 1

3 La probabilita dellrsquounione di eventi disgiunti e uguale alla somma delleprobabilita di tali eventi

P(A cupB) = P(A) + P(B)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 54 88

Probabilita - 2

In generale 2 eventi potrebbero non essere disgiunti

P(A cupB) = P(A) + P(B) minus P(A capB)

Esempio un certo negozio accetta pagamenti o con carte di credito VISAo Mastercard

1 22 dei clienti ha Mastercard

2 58 dei clienti ha VISA

3 14 dei clienti ha entrambe

Qual e la probabilita che un cliente ha almeno una delle 2 carte

P(A) = 022 P(B) = 058

P(A cupB) = P(A) + P(B) minus P(A capB) = 022 + 058 minus 014 = 066

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 55 88

Probabilita condizionata - 1

Se alcune informazioni riguardo lrsquoesito di un esperimento sono disponibiliparliamo di probabilita condizionata

Esempio lancio di 2 dadi

S = (11) (12) (65) (66)

Probabilita che la somma sia 10 (evento B) sapendo che il primo dadomostra 4 (evento A)

(41) (42) (43) (44) (45) (46)

P(B ∣A) = 16

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 56 88

Probabilita condizionata - 2

In generale

P(B ∣A) = P(A capB)P(A)

Supponiamo lrsquoesito sia in A

Per essere anche in B deve essere in entrambi A e B cioe in A capB

Sapendo che A e gia accaduto il nostro nuovo sample space diventa A

la probabilita di A capB viene calcolata rispetto ad A

Nel caso dei dadi

P(B ∣A) = P((46))P((41) (42) (43) (44) (45) (46)) = 136

16= 1

6

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 57 88

Indipendenza

In generale sapere che A e accaduto modifica le chance che B accadaNel caso cio non avvenga cioe se P(B ∣A) = P(B) allora i 2 eventi sidicono indipendenti In questo caso sapere che A e accaduto nonaggiunge alcuna informazione

SiccomeP(A capB) = P(B ∣A)P(A)

Abbiamo che B e indipendente da A se

P(A capB) = P(B)P(A)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 58 88

Esercizi - 1

1 Svolgere gli esercizi di combinatoria

2 Si consideri il seguente esperimento casuale rdquosi lancia tre volte unamonetardquo Qual e lo spazio degli esiti di questo esperimento casualeSi scriva esplicitamente lrsquoevento rdquosi ottengono piu teste che crocirdquo

3 Si consideri il seguente esperimento casuale rdquoSi tirano due dadirdquo Siconsiderino gli eventi E = rdquola somma dei punteggi e disparirdquo F = rdquoilprimo dado realizza un 1rdquo e G = rdquola somma dei punteggi e 5rdquo Sidescrivano gli eventi E cap F E cup F F capG E cap F c e E cap F capG

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 59 88

Esercizi - 2

4 Si consideri il seguente esperimento casuale rdquoUn sistema e compostoda 4 componenti ciascuno dei quali o funziona oppure e guasto Siosserva lo stato dei componenti ottenendo un vettore (x1 x2 x3 x4)dove xi e 1 oppure 0 a seconda che il componente i-esimo funzionioppure nordquo

1 Da quanti elementi e formato lo spazio degli esiti2 Il sistema nel suo insieme funziona fintantoche entrambi i componenti

1 e 2 oppure entrambi i componenti 3 e 4 funzionano Specifica tuttigli esiti dellrsquoevento il rdquosistema funzionardquo

3 Sia E lrsquoevento rdquoi componenti 1 e 3 sono guastirdquo Quanti esiti contiene

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 60 88

Esercizi - 3

5 Si dimostri che in uno spazio degli esiti Ω dotato di una probabilita Pper ogni evento E F sub Ω vale la disuguaglianza seguente

P(E cap F ) ge P(E) + P(F ) minus 1

6 Un gruppo di 5 bambini e 10 bambine e in fila in ordine casuale nelsenso che tutte le 15 possibili permutazioni si suppongonoequiprobabili

1 Qual e la probabilita che il quarto della fila sia un bambino2 E il dodicesimo3 Qual e la probabilita che un determinato bambino occupi la terza

posizione

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 61 88

Esercizi - 4

7 In un comune vi sono 5 alberghi Se 3 persone devono scegliere unalbergo in cui pernottare qual e la probabilita che finiscano tutte inalberghi differenti Che cosa stiamo assumendo senza dirloesplicitamente

8 La media del salario annuale di un gruppo di 100 lavoratori impiegatinellrsquoamministrazione di una grande azienda e di 130000 dollari conuna deviazione standard di 20000 dollari Se si prende una persona acaso da questo gruppo cosa possiamo dire sulla probabilita che il suosalario sia

1 tra i 90000 e i 170000 dollari2 superiore a 150000 dollari

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 62 88

Esercizi - 5

9 In una certa regione vi sono due ditte che producono forni amicroonde Quelli della fabbrica A sono difettosi con probabilita 005mentre quelli della fabbrica B con probabilita 001 Supponi di averacquistato due apparecchi prodotti dalla stessa ditta che puo essere laA o la B con probabilita del 50 Se il primo microonde e difettosoqual e la probabilita condizionata che sia difettoso anche il secondo

10 Hai chiesto ad un vicino di innaffiare una piantina delicata mentre seiin vacanza Pensi che senza acqua la piantina muoia con probabilita08 mentre se innaffiata questa probabilita si ridurrebbe a 015 Latua fiducia che il vicino si ricordi di innaffiarla e del 90

1 Qual e la probabilita che la pianta sia ancora viva al tuo ritorno2 Se fosse morta quale sarebbe la probabilita che il vicino si sia

dimenticato di innaffiarla

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 63 88

Esercizi - 6

11 Una compagnia di assicurazioni classifica i suoi clienti in tre fascebasso rischio medio rischio alto rischio Le sue statistiche indicanoche le probabilita che un cliente delle tre fasce abbia un incidenteentro un periodo di un anno sono rispettivamente 005 015 e 030Se il 20 dei clienti sono a basso rischio il 50 a medio rischio e il30 ad alto rischio che percentuale dei clienti avra mediamenteincidenti in un lasso di un anno Se un cliente non ha avuto incidentinel 1987 qual e la probabilita che appartenga a ciascuna delle trefasce

12 Se un votante scelto a caso e favorevole ad una certa riforma conprobabilita di 07 qual e la probabilita che su 10 votanti esattamente7 siano favorevoli

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 64 88

Variabili aleatorie

Una variabile aleatoria (o anche variabile aleatoria) e una variabile chepuo assumere valori diversi in dipendenza da qualche fenomeno aleatorio

fenomeno lancio di 2 dadivariabile aleatoria somma dei 2 dadi

fenomeno 3 lanci di una monetavariabile aleatoria numero di rdquotesterdquo complessivo

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 65 88

Funzione di Ripartizione

Sia X una variabile aleatoria Si chiama funzione di ripartizione di X lafunzione F che associa ad ogni numero reale a la probabilita che X siaminore o uguale ad a cioe P(X le a) = FX (a)

Nel caso della moneta (fair) lanciata 3 volte (X indica il numero di testecomplessivo)

FX (a) =

⎧⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎨⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎩

0 if a lt 0

18 per 0 le a lt 1

18 + 38 = 48 per 1 le a lt 2

48 + 38 = 78 per 2 le a lt 3

88 = 1 per a ge 3

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 66 88

Funzione di densita o di massa

Sia X una variabile aleatoria Si chiama funzione di densita di X lafunzione f che associa ad ogni numero reale a la probabilita che X siauguale ad a indicata con fX (a)

Nel caso della moneta (fair) lanciata 3 volte (X indica il numero di testecomplessivo)

fX (a) =

⎧⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎨⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎩

18 per a = 0

38 per a = 1

38 per a = 2

18 per a = 3

0 altrimenti

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 67 88

Valore Atteso

Chiamato anche media (expectation in inglese) e appunto una mediapesata dei possibili valori di una variabile aleatoria Il peso dato a ciascunvalore e la probabilita data a quello specifico valore

E[X ] =sumi

aiP(X = ai)

Esempio dado truccato

valore 6 con probabilita 712

valori da 1 a 5 con probabilita 112

La variabile aleatoria X indica la faccia risultante dal lancio di un dado

E[X ] = 1

12lowast 1 + 1

12lowast 2 + 1

12lowast 3 + 1

12lowast 4 + 1

12lowast 5 + 7

12lowast 6 = 475

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 68 88

Valore Atteso - Proprieta

Sia X una variabile aleatoria con valore atteso E[X ] Se c e una costanteallora anche cX e X + c sono variabili casuali In particolare valgono leseguenti proprieta

E[cX ] = cE[X ]E[X + c] = E[X ] + c

Sia Y una variabile aleatoria Allora

E[X +Y ] = E[X ] +E[Y ]se e solo se X e Y sono independenti

E[XY ] = E[X ]E[Y ]

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 69 88

Varianza

Ersquo il valore atteso del quadrato della differenza tra la variabile aleatoria e ilsuo valore atteso

Var(X ) = E[(X minusE[X ])2] = E[X 2] minus (E[X ])2

La radice quadrata viene detta deviazione standard di X

Esempio dado truccato

E[X 2] = 1

12lowast 12 + 1

12lowast 22 + 1

12lowast 32 + 1

12lowast 42 + 1

12lowast 52 + 7

12lowast 62 ≃ 255

Var(X ) = E[X 2] minus (E[X ])2 ≃ 255 minus 4752 ≃ 3

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 70 88

Varianza - proprieta

Sia X una variabile aleatoria e c una costante Allora valgono le seguentiproprieta

1 Var(cX ) = c2Var(X )

2 Var(X + c) = Var(X )

NOTA

Var(X +X ) ne Var(X ) +Var(X )

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 71 88

Covarianza

Siano X Y due variabili aleatorie con valore atteso rispettivamenteE[X ] = microX e E[Y ] = microY La covarianza e definita come segue

Cov(X Y ) = E[(X minus microX )(Y minus microY )] = = E[XY ] minus microXmicroY

Proprieta

1 Cov(X Y ) = Cov(Y X )2 Cov(X X ) = Var(X )3 Sia a una costante allora

Cov(aX Y ) = aCov(X Y )

4 Sia Z una variabile aleatoria allora

Cov(X + Z Y ) = Cov(X Y ) + Cov(Z Y )

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 72 88

Esercizi - 1

1 Consideriamo una variabile aleatoria X che puo assumere i valori 12o 3 Se sappiamo che

fX (1) = 1

3 fX (2) = 3

7

1 Quanto vale fX (3)2 Disegnare il grafico di questa funzione di massa3 Disegnare il grafico della relativa funzione di ripartizione

2 Dimostrare che se X1 e X2 hanno la stessa distribuzione allora

Cov(X1 +X2X1 minusX2) = 0

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 73 88

Esercizi - 2

3 La funzione di ripartizione di X e definita come segue

FX (x) =

⎧⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎨⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎩

0 per x le 0

x2 per 0 le x lt 1

23 per 1 le x lt 2

1112 per 2 le x lt 3

1 per x ge 3

Se ne tracci il graficoQuanto vale P(X gt 12)Quanto vale P(2 le X le 4)Quanto vale P(X le 3)Quanto vale P(X = 1)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 74 88

Esercizi - 3

4 Un tipo di prodotti vengono classificati a seconda dei loro difetti edella fabbrica che li ha prodotti Sia X1 il numero (1 o 2) dellafabbrica e sia X2 il numero di difetti per pezzo (che possono essere da0 a 3) di un prodotto scelto a caso tra la totalita di quelli esistentiLa tabella seguente riporta la funzione di massa di probabilitacongiunta per queste due variabili aleatorie discrete Le righe siriferiscono alla variabile X1 mentre le colonne alla variabile X2

Trova le distribuzioni marginali di X1 e X2Calcola media e varianza di X2

0 1 2 31 18 116 316 182 116 116 18 14

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 75 88

Scipy

Scipy e un modulo che permette di utilizzare varie distribuzioni diprobabilita sia di tipo discreto che continuo

La sintassi generale e la seguente Scipystatsltnome distribuzionegt

rvs(size=z) restituisce un vettore di numeri casuali estrattisecondo la distribuzione di lunghezza z

pdf(x) restituisce il vettore della densita della distribuzionevalutata nei valori del vettore di input x (pmf per le discrete)

cdf(x) restituisce il vettore della funzione di ripartizione (ocumulativa) della distribuzione valutata nei valori del vettore di inputx

ppf(q) restituisce il vettore dei quantili della distribuzione valutatanei valori del vettore di input q

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 76 88

Variabili aleatorie discrete Binomiale

gtgtgt from scipystats import binom

gtgtgt rv = binom(n p)

rvrvs(x) restituisce un vettore di x numeri estratti secondo unadistribuzione Binomiale di parametri n p

rvpmf(x) restituisce la probabilita di ottenere esattamente x

successi in un esperimento dicotomico (01) ripetuto n volte con unaprobabilita di successo p (x puo essere un vettore)

rvcdf(q) restituisce il valore della funzione di ripartizione in q (qpuo essere un vettore)

rvppf(p) restituisce il valore del quantile di ordine p

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 77 88

Variabili aleatorie discrete Ipergeometrica

Supponiamo di avere M = 20 animali di cui n = 7 cani Se vogliamosapere la probabilita di trovare un dato numero di cani se scegliamoN = 12 dei 20 animali in maniera casuale possiamo usare una distribuzioneipergeometrica in questo modo

gtgtgt from scipystats import hypergeom

gtgtgt [M n N] = [20 7 12]

gtgtgt rv = hypergeom(M n N)

rvpmf(x) restituisce la probabilita di estrarre esattamente x cani

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 78 88

Variabili aleatorie discrete Geometrica

gtgtgt from scipystats import geom

gtgtgt rv = geom(p)

rvpmf(x) restituisce la probabilita di avere un successo dopoesattamente x insuccessi in una successione di esperimenti dicotomici(esito 01) con una probabilita di successo p (x puo essere un vettore)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 79 88

Variabili aleatorie discrete Poisson

La distribuzione di Poisson viene usata spesso come modello per il numerodi volte per cui un evento avviene in un dato intervallo di tempo (ospazio) Ad esempio si puo utilizzare per misurare il numero di chiamatericevute da un call center in una mattinata

gtgtgt from scipystats import poisson

gtgtgt mu = 2

gtgtgt rv = poisson(mu)

rvpmf(x) restituisce il seguente valore

f (x) = exp(minusmicro)microx

x

In questo caso x rappresenta il numero di eventi per cui si vuole calcolarela probabilita sapendo che in media ne accadono micro

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 80 88

Variabili aleatorie continue Uniforme

In Scipy la funzione uniforme e soltanto continua Questo significa chenella generazione di numeri casuali otterro dati di tipo float Possiamotuttavia simulare una variabile discreta estraendo la parte intera delrisultato ottenuto

gtgtgt from scipystats import uniform

gtgtgt rv = uniform()

Il comando uniform() crea una distribuzione uniforme nellrsquointervallo[01] Possiamo creare una distribuzione uniforme qualsiasi usandouniform(x y - x) per lrsquointervallo [x y]

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 81 88

Variabili aleatorie continue

norm(mu sigma) variabile Gaussiana (o Normale) di media micro edeviazione standard σ

expon(scale = 1 lambda) variabile Esponenziale di parametroλ

Altre distribuzioni (con relativa documentazione) disponibili suhttpsdocsscipyorgdocscipyreferencestatshtml

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 82 88

Esercizi - 1

1 Unrsquourna contiene 10 palline di cui 4 bianche e 6 nere Si eseguono 5estrazioni con reimmissione

1 Tracciare grafico della funzione massa di probabilita della variabilecasuale X = rdquonumero di palline bianche estratterdquo

2 Calcolare la probabilita di estrarre 2 palline bianche3 Calcolare la probabilita di estrarre al piu 2 palline bianche4 Calcolare la probabilita di estrarre almeno 2 palline bianche5 Qual e il numero minimo x tale che la probabilita di estrarre al piu x

palline bianche sia almeno 08

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 83 88

Esercizi - 2

2 Si eseguono 10 estrazioni senza reimmissione da unrsquourna

1 Tracciare il grafico della funzione massa di probabilita della variabilecasuale X = rdquonumero di palline bianche estratterdquo nei seguenti casi

1 lrsquourna contiene 100 palline di cui 20 bianche e le restanti nere2 lrsquourna contiene 100 palline di cui 2 bianche e le restanti nere

2 Tracciare il grafico della funzione massa di probabilita della variabilecasuale X nel caso dellrsquourna 1 se si eseguono 25 estrazioni

3 Consideriamo lrsquourna 1 e N = 10 estrazioni Si aumenti il numero totaleM di palline nellrsquourna mantenendo uguale a 02 la frazione di pallinebianche Per ciascun valore di M confrontare graficamente ladistribuzione di probabilita del numero di palline bianche estratte nelcaso di estrazioni con e senza reimmissione Provare con 20 40 e 200palline bianche

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 84 88

Esercizi - 3

3 Calcolare la probabilita di ottenere piu teste che croci lanciando 7volte una moneta truccata con probabilita di avere croce pari a 045

4 Calcolare la probabilita di avere almeno 3 sei lanciando 5 dadi a 12facce

5 Calcolare la probabilita di estrarre 20 euro da un sacco contenente 47monete da 1 centesimo e 53 da 2 euro estraendo (uniformemente) acaso 10 monete senza reinserirle

6 Un grammo di uranio emette mediamente 2152 particelle α ognimillisecondo Qual e con buona approssimazione la probabilita che ungrammo di uranio emetta al piu 2000 particelle α in un millisecondo

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 85 88

Esercizi - 4

7 Un uomo si risveglia in mezzo al deserto senza acqua Dopo ogniminuto ha una probabilita del 3 di perdere conoscenza per via dellecondizioni estreme Calcolare la probabilita che lrsquouomo perdaconoscenza dopo almeno due ore e la probabilita che lrsquouomo perdaconoscenza dopo esattamente un quarto drsquoora

8 Sia X una variabile aleatoria normale di parametri micro = 10 e σ = 36Calcola

1 P(X gt 5)2 P(4 le X le 16)3 P(X le 8)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 86 88

Esercizi - 5

9 Il numero di errori tipografici per pagina di una certa rivista segue unadistribuzione di Poisson Sapendo che mediamente sono presenti 02errori per pagina determinare la probabilita che una pagina contenga

1 nessun refuso2 piu refusi

10 Arrivi alla fermata dellrsquoautobus alle 1000 e sei certo che ne passerauno in un momento distribuito uniformemente tra le 1000 e le 1030

1 Qual e la probabilita che tu debba aspettare piu di 10 minuti2 Se alle 1015 lrsquoautobus non e ancora arrivato qual e la probabilita che

tu debba aspettare almeno altri 10 minuti

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 87 88

Esercizi - 6

11 Il signor Jones e convinto che il tempo di vita di una automobile (inmigliaia di chilometri percorse) sia una variabile aleatoria esponenzialedi parametro 120 Il signor Smith ha una macchina usata da vendereche ha percorso circa 10 000 chilometri

1 Se il signor Jones decide di comprarla che probabilita ha di farle farealmeno altri 20 000 chilometri prima che sia da buttare

2 Il modello assunto dal signor Jones e ragionevole

12 Sia X una variabile casuale binomiale di parametri n = 100 e p = 07

1 Tracciate la funzione di ripartizione di X2 Calcolate il primo quartile il quantile di ordine 09 e la mediana di X3 Calcolare la probabilita P(X le 60)4 Calcolare la probabilita P(X le 88)5 Trovare il piu piccolo valore x tale che P(X le x) ge 09

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 88 88

  • Lezione 1
    • Script in Python
    • Numpy
    • Esercizi
    • Pandas
    • Esercizi
      • Lezione 2
        • File csv
        • DataFrame
        • Accesso ai DataFrame
        • Frequenze
        • Esercizi
          • Lezione 3
            • Matplotlib
            • Grafici a Barre
            • Istogrammi
            • Cumulativa empirica
            • Boxplot
            • QQplot
            • Diagramma di Pareto
            • Esercizi
              • Lezione 4
                • Definizioni
                • Probabilitagrave condizionata
                • Indipendenza
                • Esercizi
                  • Lezione 5
                    • Variabili Aleatorie
                    • Funzione di Ripartizione
                    • Funzione di Densitagrave
                    • Valore Atteso
                    • Varianza
                    • Covarianza
                    • Esercizi
                      • Lezione 6
                        • Scipy - Variabili Discrete
                        • Scipy - Variabili continue
                        • Esercizi

Funzione Help

Per aprire la documentazione a riguardo di un particolare oggetto metodoo attributo si puo invocare la funzione help(rdquonomerdquo) con il nomedellrsquooggetto che stiamo cercando

gtgtgt help(str)

Help on class str in module builtin

class str(basestring)

| str(object=rsquorsquo) -gt string

|

| Return a nice string representation of the object

| If the argument is a string the return value is the

same object

|

Si esce dal manuale interattivo premendo q

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 10 88

Tipi Predefiniti in Python

Stringhe (str) rdquoquesta e una stringardquo rdquoquesta purerdquo

Dizionari (dict) lsquochiaversquo valoreTuple (tuple) (1 2 3 1 rsquociaorsquo)

Liste (list) [1 2 3 4 rsquopipporsquo]

Set (set) (1 2 3)

Interi (int) 1 2 3

Float (float) 15 314 2718281828459045

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 11 88

Numpy

Il modulo numpy (httpwwwnumpyorg) mette a disposizione unastruttura dati creata appositamente per il calcolo scientifico

ArrayUn array e un contenitore di dati omogenei cioe dello stesso tipo Se sitenta di costruire un array con dati di tipo diverso questi vengonoldquotrasformatirdquo nel piu piccolo tipo adatto a contenerli tutti

gtgtgt import numpy as np

gtgtgt nparray( [146810] )

array([ 1 4 68 10 ])

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 12 88

Creazione di Array - 1

numpyarange(x) restituisce un array contenente gli interi da 0 a x minus 1

gtgtgt numpyarange(5)

array([0 1 2 3 4])

numpyarange(start stop step) permette di scegliere gli estremi dellasequenza contenuta nellrsquoarray e il passo tra un numero ed il successivo

gtgtgt numpyarange(262)

array([2 4])

gtgtgt numpyarange(2-3-1)

array([ 2 1 0 -1 -2])

numpylinspace(start stop n) permette di scegliere gli estremi e quantinumeri devono comparire allrsquointerno della sequenza

gtgtgt numpylinspace(014)

array)[0 03333333 066666667 1])

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 13 88

Creazione di Array - 2

numpyones(rdquotuplardquo) restuituisce un array di 1 date le dimensionispecificate nella tupla come argomento

gtgtgt numpyones( (15) )

array([1 1 1 1 1])

numpyzeros(rdquotuplardquo) restuituisce un array di 0 date le dimensionispecificate nella tupla come argomento

gtgtgt numpyzeros( (25) )

array([[0 0 0 0 0] [0 0 0

0 0]])

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 14 88

Operazioni con Array

Applicando un operazione logica ad un array si ottiene come risposta unarray di tipo booleano contenente nella posizione i-esima il risultatodellrsquoespressione logica valutata per lrsquoelemento i-esimo dellrsquoarray

gtgtgt numpyarange(5) gt 3

array([False False False False True] dtype=bool)

Le operazioni + - tra due array vengono eseguite elemento perelemento (gli array devono avere le stesse dimensioni)

gtgtgt numpyarange(5) + numpylinspace(025)

array([ 0 15 3 45 6 ])

gtgtgt numpyarange(5) 2

array([0 2 4 6 8])

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 15 88

Selezioni di un sottoinsieme di elementi

Ad un array e possibile accedere in tutti i modi con cui e possibile accederead una lista ad esempio

Ottenere una tupla di elementi

gtgtgt a[2] a[-1] a[36]

(2 9 array([3 4 5]))

Slicing [startstopstep]

gtgtgt a[293]

array([2 5 8])

gtgtgt a[2]

array([0 2 4 6 8])

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 16 88

Accesso con maschere booleane

Specificando tra [ ] un array di tipo booleano selezioniamo dallrsquoarray glielementi la cui posizione corrisponde ad un True nellrsquoarray di tipobooleano (che prende il nome di maschera)

gtgtgt a = numpyarange(10)

gtgtgt mask = a2 == 0

gtgtgt mask

array([ True False True False True False True

False True False] dtype=bool)

gtgtgt a[mask]

array([0 2 4 6 8])

o in maniera piu compatta

gtgtgt a[a2 == 0]

array([0 2 4 6 8])

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 17 88

Esercizi

1 Lanciare uno script che stampi il vostro nome e cognome

2 Creare un array i cui elementi siano gli interi che compongono ilvostro numero di matricola

3 Sia X la lunghezza dellrsquoarray del punto precedente Creare un array diX elementi equispaziati lrsquouno dallrsquoaltro di 15

4 Creare un array di X elementi equispaziati nellrsquointervallo tra 1 e 3

5 Ottenere gli array dati dalla somma tra lrsquoarray del punto 2 e quello delpunto 3 e quello dato dalla moltiplicazione tra punto 3 e punto 4

6 Ottenere per ciascuno dei due array del punto 5 un array mascherache in corrispondenza dei numeri divisibili per 3 abbia True Falsealtrimenti

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 18 88

Pandas - Series (1)

Pandas (httpspandaspydataorg) e una libreria Python chefornisce strutture dati e strumenti relativi esclusivamente allrsquoanalisi deidatiUna Series e un array monodimensionale ed etichettato Rappresenta unaserie di osservazioni di un certo carattere fatto su un insieme di individui

a 00

b 10

c 20

d 30

e 40

f 50

g 60

h 70

Name serie di esempio dtype float64

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 19 88

Pandas - Series (2)

pandasSeries (data index dtype name )

data contiene i dati che si vuole inserire nella serie

index della stessa lunghezza di data contiene le etichette

dtype permette di specificare il tipo che i dati devono assumere

name permette di dare un nome alla Series

gtgtgt import pandas as pd

gtgtgt import numpy as np

gtgtgt oss = nparange(8)

gtgtgt etic = [rsquoarsquorsquobrsquorsquocrsquorsquodrsquorsquoersquorsquofrsquorsquogrsquorsquohrsquo]

gtgtgt pdSeries(data=oss index=etic name=rsquoserie di esempiorsquo

dtype=float)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 20 88

Accesso ai dati di una Series

Specificando un valore (o una lista di valori) per lrsquoetichetta

gtgtgt sloc[[rsquohrsquorsquoarsquo]]

h 70

a 00

Specificando un valore (o una lista di valori) per la posizione

gtgtgt s[[56]]

f 50

g 60

Usando lo slicing (come per gli array numpy) per la posizione

gtgtgt s[36]

d 30

e 40

f 50

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 21 88

Pandas Series - Utils

Seriesmin() Seriesmax() restituiscono rispettivamente il minimoed massimo tra i valori della Series

Seriessum() restituisce la somma dei valori della Series

Seriessort values() restituisce una copia della Series ordinata pervalore

Seriessort index() restituisce una copia della Series ordinata peretichette

Seriessample(n) restituisce una Series di n elementi sceltiuniformemente a caso allrsquointerno di quelli della Series

Seriesappend([s1s2]) concatena una o piu Series a quella dipartenza

Seriescount() restituisce il numero dei valori della Series che nonsiano il valore NaN

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 22 88

Il valore NaN

Nan un oggetto del modulo numpy che puo rappresentare in una Seriesun dato di cui non e stato possibile fare unrsquoosservazioneOperazioni con un valore Nan hanno come risultato il valore Nan

gtgtgt oss = range(5)

gtgtgt ossappend(None)

gtgtgt pandasSeries(oss)

0 00

1 10

2 20

3 30

4 40

5 NaN

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 23 88

Esercizi

Creare la Series gol in modo che le etichette siano numeri dallrsquo1 al 23 Idati raccolti siano numeri interi tra 0 e 30 scelti casualmente (scarica ilnotebook) La Series rappresenta i gol segnati da ciascun giocatore diuna societa calcistica nella stagione appena passata Lrsquoetichettacorrisponde al numero di maglia del giocatore Ottenere

1 I gol segnati dal capocannoniere2 Chi non ha mai fatto gol durante lrsquoanno3 La statistica del punto 2 per i soli titolari (numeri dallrsquo1 allrsquo11) e per

le sole riserve (dal 12 al 23)4 La statistica del punto 2 per i soli attaccanti (numeri dalrsquo9 allrsquo11)5 I gol segnati dai giocatori coi numeri di maglia 5 9 10 14 (somma)6 Chi ha segnato piu di 10 gol e chi ha segnato esattamente 10 gol7 Una copia della Series ordinata secondo i gol effettuati8 Una stampa dei primi 5 cannonieri e degli ultimi 59 Una copia della Series ordinata in modo discendente secondo il

numero di maglia

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 24 88

File csv

Il formato csv (comma-separated value) e un formato utilizzato perrappresentare una tabella di dati e favorirne lrsquoimportazione e lrsquoesportazioneUn file csv e scritto nella seguente forma

titolopaeseannoduratagenerevoto

Guerre StellariUSA1977121Fantascienza4

Lrsquoimpero colpisce ancoraUSA1980124Fantascienza4

Il ritorno dello JediUSA1983Fantascienza35

Profondo RossoITA1975Horror35

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 25 88

Leggere csv

La funzione read csv() di Pandas puo essere utilizzata per leggere unfile di formato csv Tra i vari parametri che passiamo in input unoparticolarmente importante e sep che indica il carattere utilizzato perseparare le colonne (default e rsquorsquo)

gtgtgt df film = pdread csv(rsquofilmcsvrsquo)

gtgtgt df film

titolo paese anno durata genere voto

Il padrino USA 19720 1750 Drammatico 45

Pulp Fiction USA 19940 1540 Drammatico 40

Fight Club USA 19990 1390 Thriller 40

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 26 88

DataFrame

In Pandas un DataFrame e una struttura dati tabulare con assi etichettatile cui colonne possono contenere dati eterogenei da colonna a colonna

gtgtgt dataframe

esempio

Nome Cognome Eta Citta

Tommaso Rossi 300 Milano

Sergio Bianchi 340 Roma

Pasquale Verdi 290 Palermo

Antonio Gialli 300 Roma

Il DataFrame puo essere visto come un insieme di serie aventi lo stessoindice accostate una allrsquoaltra

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 27 88

Accesso colonne DataFrame - 1

Per conoscere le colonne di un DataFrame possiamo invocare il comandodfcolumns dove df e la variabile in cui abbiamo instanziato ilDataFramePer accedere ad una colonna dobbiamo specificarne il nome nel seguentemodo

gtgtgt df film[rsquogenerersquo]

titolo

Il padrino Drammatico

Pulp Fiction Drammatico

Fight Club Thriller

Selezionando unrsquounica colonna in output viene restituita una Series

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 28 88

Accesso colonne DataFrame - 2

Possiamo accedere allo stesso tempo a piu colonne

gtgtgt df film[[rsquopaesersquorsquoannorsquo]]

titolo paese anno

Il padrino USA 19720

Pulp Fiction USA 19940

Fight Club USA 19990

Selezionando piu colonne in output viene restituito un DataFrame

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 29 88

Accesso righe DataFrame - 1

Per indice numerico

gtgtgt df film[1518]

titolo paese anno durata genere voto

Il padrino USA 19720 1750 Drammatico 45

Pulp Fiction USA 19940 1540 Drammatico 40

Fight Club USA 19990 1390 Thriller 40

Quasi Amici FRA 20110 1120 Commedia 35

Per valore dellrsquoindice (assumiamo che titolo sia lrsquoindice delDataFrame)

gtgtgt df film[rsquoIl padrinorsquorsquoFight Clubrsquo]

titolo paese anno durata genere voto

Il padrino USA 19720 1750 Drammatico 45

Pulp Fiction USA 19940 1540 Drammatico 40

Fight Club USA 19990 1390 Thriller 40

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 30 88

loc amp iloc

Cosı come per le Series anche con i DataFrame possiamo usare loc ediloc per lrsquoaccesso ai dati

loc[rsquonome indicersquo] permette lrsquoaccesso ad una riga o piu righetramite nome dellrsquoindice

iloc[rsquoposizionersquo] permette lrsquoaccesso ad una o piu righe tramitela loro posizione

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 31 88

Accesso tramite unrsquoespressione logica

gtgtgt df film[rsquoannorsquo gt 1998]

titolo

Il padrino False

Pulp Fiction False

Fight Club True

Quasi Amici True

gtgtgt df film[df film[rsquoannorsquo] gt 1998]

titolo paese anno durata genere voto

Fight Club USA 19990 1390 Thriller 40

Quasi Amici FRA 20110 1120 Commedia 35

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 32 88

Metodi dei DataFrame

La classe DataFrame ha diversi metodi Elenchiamo qui i piu importanti

DataFrameappend() permette di estendere il DataFrame

DataFramedrop duplicates() restituisce un DataFrame senza righeduplicate

DataFramedropna() Eliminare i valori Nan da un DataFrame

DataFramesort values() permette di ordinare il DataFrame

DataFramemax() DataFramemin() DataFramemean()DataFramemedian()

Per la completa documentazione si puo utilizzare il comandohelp(pdDataFrame) oppure andare al seguente linkhttpspandaspydataorgpandas-docsstablegenerated

pandasDataFramehtml

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 33 88

Frequenze

La frequenza assoluta indica il numero di volte che una dataosservazione occorre in un campione

La frequenza relativa e un valore tra 0 e 1 che permette di valutare inmaniera piu efficace la frequenza di un osservazione Si calcoladividendo la frequenza assoluta per il numero totale di casi

Per calcolare questa quantita in Pandas possiamo utilizzare la funzionevalue counts() che opera su una Series

In alternativa si puo utilizzare la funzione pdcrosstab che calcolaqueste frequenze in automatico restituendole in output in un DataFrame

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 34 88

Esercizi

Utilizzando il file dati-ospedalicsv dai csv del laboratorio

1 Leggere il file e visualizzarlo in un DataFrame

2 Calcolare le frequenze assolute e relative dellrsquoattributo Regioneusando crosstab

3 Ottenere la singola serie relativa allrsquoattributo Regione e calcolarne lafrequenza assoluta e relativa senza usare crosstab

4 Estrarre un sottodataframe contenente le colonne Nome (attributoDenominazione Str Pubblica New) e Numero di medici (attributoMedici SSN) degli ospedali aventi meno di 200 medici

5 Visualizzare il nome degli ospedali della regione Lombardia

6 Calcolare il numero medio di ingegneri (Ingegneri SSN) presenti negliospedali campani

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 35 88

Esercizi

7 Calcolare la varianza del numero di assistenti sociali (Assistenti socialiSSN) negli ospedali con piu di 400 medici

8 Qual e lrsquoospedale con meno medici

9 Visualizzare in ordine alfabetico il nome dei primi 10 ospedali pernumero di medici

10 Visualizzare il numero degli ospedali che hanno dichiarato il numerodi odontoiatri (per cui il valore e diverso da NaN) (OdontoiatriUniversitari)

11 Visualizzare il numero degli ospedali che hanno dichiarato il numerodi odontoiatri (Odontoiatri Universitari) e per cui questo numero emaggiore di 0

12 Calcolare le frequenze assolute per lrsquoattributo Odontoiatri SSNTrasformare questo risultato in frequenze relative

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 36 88

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) SAD 20182019 January 12 2019 37 88

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) SAD 20182019 January 12 2019 38 88

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) SAD 20182019 January 12 2019 39 88

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) SAD 20182019 January 12 2019 40 88

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) SAD 20182019 January 12 2019 41 88

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) SAD 20182019 January 12 2019 42 88

Grafici con le Series

In generale possiamo tracciare diversi tipi di grafici con le Series

rsquolinersquo line plot (default)

rsquobarrsquo vertical bar plot

rsquobarhrsquo horizontal bar plot

rsquohistrsquo histogram

rsquoboxrsquo boxplot

rsquokdersquo Kernel Density Estimation plot

rsquodensityrsquo same as rsquokdersquo

rsquoarearsquo area plot

rsquopiersquo pie plot

Per saperne di piu consultare questo link

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 43 88

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) SAD 20182019 January 12 2019 44 88

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) SAD 20182019 January 12 2019 45 88

Boxplot

Rappresenta la distribuzione di un vettore di numeri cerchiando gli outlier

gtgtgt weight = heroes[rsquoWeightrsquo]

gtgtgt weightplotbox()

gtgtgt pltshow()

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 46 88

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) SAD 20182019 January 12 2019 47 88

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) SAD 20182019 January 12 2019 48 88

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) SAD 20182019 January 12 2019 49 88

Esercizi - 1

Utilizzando il file capellicsv dai csv del laboratorio

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) SAD 20182019 January 12 2019 50 88

Esercizi - 2

Utilizzando il file dati-ospedalicsv dai csv del laboratorio

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 e canipdf

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 51 88

Sample space

Un esperimento e qualsiasi processo che produce una realizzazione (oosservazione) Lrsquoinsieme di tutte le possibili realizzazioni di un esperimentoviene detto sample space ed indicato con S

lancio di 2 monete

S = (T T ) (T C) (C T ) (C C)

gara di 3 cavalli (ab c)

S = tutti i possibili ordinamenti di(ab c)= (ab c) (a cb) (c b a)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 52 88

Eventi

lancio di 2 monete

S = (T T ) (T C) (C T ) (C C)

A = 2 monete uguali

A = (T T ) (C C)

B = 2 monete diverse

B = Ac = (T C) (C T )

gara di 3 cavalli

A = cavallo a vincente

A = (ab c) (a c b)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 53 88

Probabilita - 1

Consideriamo un esperimento con sample space S Supponiamo che adogni evento A sia associato un numero chiamato probabilita di A edindicato con P(A) che soddisfa le seguenti proprieta

1 Per ogni evento A la probabilita di A e un numero tra 0 e 1

0 le P(A) le 1

2 La probabilita del sample space S e 1

P(S) = 1

3 La probabilita dellrsquounione di eventi disgiunti e uguale alla somma delleprobabilita di tali eventi

P(A cupB) = P(A) + P(B)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 54 88

Probabilita - 2

In generale 2 eventi potrebbero non essere disgiunti

P(A cupB) = P(A) + P(B) minus P(A capB)

Esempio un certo negozio accetta pagamenti o con carte di credito VISAo Mastercard

1 22 dei clienti ha Mastercard

2 58 dei clienti ha VISA

3 14 dei clienti ha entrambe

Qual e la probabilita che un cliente ha almeno una delle 2 carte

P(A) = 022 P(B) = 058

P(A cupB) = P(A) + P(B) minus P(A capB) = 022 + 058 minus 014 = 066

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 55 88

Probabilita condizionata - 1

Se alcune informazioni riguardo lrsquoesito di un esperimento sono disponibiliparliamo di probabilita condizionata

Esempio lancio di 2 dadi

S = (11) (12) (65) (66)

Probabilita che la somma sia 10 (evento B) sapendo che il primo dadomostra 4 (evento A)

(41) (42) (43) (44) (45) (46)

P(B ∣A) = 16

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 56 88

Probabilita condizionata - 2

In generale

P(B ∣A) = P(A capB)P(A)

Supponiamo lrsquoesito sia in A

Per essere anche in B deve essere in entrambi A e B cioe in A capB

Sapendo che A e gia accaduto il nostro nuovo sample space diventa A

la probabilita di A capB viene calcolata rispetto ad A

Nel caso dei dadi

P(B ∣A) = P((46))P((41) (42) (43) (44) (45) (46)) = 136

16= 1

6

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 57 88

Indipendenza

In generale sapere che A e accaduto modifica le chance che B accadaNel caso cio non avvenga cioe se P(B ∣A) = P(B) allora i 2 eventi sidicono indipendenti In questo caso sapere che A e accaduto nonaggiunge alcuna informazione

SiccomeP(A capB) = P(B ∣A)P(A)

Abbiamo che B e indipendente da A se

P(A capB) = P(B)P(A)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 58 88

Esercizi - 1

1 Svolgere gli esercizi di combinatoria

2 Si consideri il seguente esperimento casuale rdquosi lancia tre volte unamonetardquo Qual e lo spazio degli esiti di questo esperimento casualeSi scriva esplicitamente lrsquoevento rdquosi ottengono piu teste che crocirdquo

3 Si consideri il seguente esperimento casuale rdquoSi tirano due dadirdquo Siconsiderino gli eventi E = rdquola somma dei punteggi e disparirdquo F = rdquoilprimo dado realizza un 1rdquo e G = rdquola somma dei punteggi e 5rdquo Sidescrivano gli eventi E cap F E cup F F capG E cap F c e E cap F capG

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 59 88

Esercizi - 2

4 Si consideri il seguente esperimento casuale rdquoUn sistema e compostoda 4 componenti ciascuno dei quali o funziona oppure e guasto Siosserva lo stato dei componenti ottenendo un vettore (x1 x2 x3 x4)dove xi e 1 oppure 0 a seconda che il componente i-esimo funzionioppure nordquo

1 Da quanti elementi e formato lo spazio degli esiti2 Il sistema nel suo insieme funziona fintantoche entrambi i componenti

1 e 2 oppure entrambi i componenti 3 e 4 funzionano Specifica tuttigli esiti dellrsquoevento il rdquosistema funzionardquo

3 Sia E lrsquoevento rdquoi componenti 1 e 3 sono guastirdquo Quanti esiti contiene

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 60 88

Esercizi - 3

5 Si dimostri che in uno spazio degli esiti Ω dotato di una probabilita Pper ogni evento E F sub Ω vale la disuguaglianza seguente

P(E cap F ) ge P(E) + P(F ) minus 1

6 Un gruppo di 5 bambini e 10 bambine e in fila in ordine casuale nelsenso che tutte le 15 possibili permutazioni si suppongonoequiprobabili

1 Qual e la probabilita che il quarto della fila sia un bambino2 E il dodicesimo3 Qual e la probabilita che un determinato bambino occupi la terza

posizione

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 61 88

Esercizi - 4

7 In un comune vi sono 5 alberghi Se 3 persone devono scegliere unalbergo in cui pernottare qual e la probabilita che finiscano tutte inalberghi differenti Che cosa stiamo assumendo senza dirloesplicitamente

8 La media del salario annuale di un gruppo di 100 lavoratori impiegatinellrsquoamministrazione di una grande azienda e di 130000 dollari conuna deviazione standard di 20000 dollari Se si prende una persona acaso da questo gruppo cosa possiamo dire sulla probabilita che il suosalario sia

1 tra i 90000 e i 170000 dollari2 superiore a 150000 dollari

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 62 88

Esercizi - 5

9 In una certa regione vi sono due ditte che producono forni amicroonde Quelli della fabbrica A sono difettosi con probabilita 005mentre quelli della fabbrica B con probabilita 001 Supponi di averacquistato due apparecchi prodotti dalla stessa ditta che puo essere laA o la B con probabilita del 50 Se il primo microonde e difettosoqual e la probabilita condizionata che sia difettoso anche il secondo

10 Hai chiesto ad un vicino di innaffiare una piantina delicata mentre seiin vacanza Pensi che senza acqua la piantina muoia con probabilita08 mentre se innaffiata questa probabilita si ridurrebbe a 015 Latua fiducia che il vicino si ricordi di innaffiarla e del 90

1 Qual e la probabilita che la pianta sia ancora viva al tuo ritorno2 Se fosse morta quale sarebbe la probabilita che il vicino si sia

dimenticato di innaffiarla

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 63 88

Esercizi - 6

11 Una compagnia di assicurazioni classifica i suoi clienti in tre fascebasso rischio medio rischio alto rischio Le sue statistiche indicanoche le probabilita che un cliente delle tre fasce abbia un incidenteentro un periodo di un anno sono rispettivamente 005 015 e 030Se il 20 dei clienti sono a basso rischio il 50 a medio rischio e il30 ad alto rischio che percentuale dei clienti avra mediamenteincidenti in un lasso di un anno Se un cliente non ha avuto incidentinel 1987 qual e la probabilita che appartenga a ciascuna delle trefasce

12 Se un votante scelto a caso e favorevole ad una certa riforma conprobabilita di 07 qual e la probabilita che su 10 votanti esattamente7 siano favorevoli

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 64 88

Variabili aleatorie

Una variabile aleatoria (o anche variabile aleatoria) e una variabile chepuo assumere valori diversi in dipendenza da qualche fenomeno aleatorio

fenomeno lancio di 2 dadivariabile aleatoria somma dei 2 dadi

fenomeno 3 lanci di una monetavariabile aleatoria numero di rdquotesterdquo complessivo

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 65 88

Funzione di Ripartizione

Sia X una variabile aleatoria Si chiama funzione di ripartizione di X lafunzione F che associa ad ogni numero reale a la probabilita che X siaminore o uguale ad a cioe P(X le a) = FX (a)

Nel caso della moneta (fair) lanciata 3 volte (X indica il numero di testecomplessivo)

FX (a) =

⎧⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎨⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎩

0 if a lt 0

18 per 0 le a lt 1

18 + 38 = 48 per 1 le a lt 2

48 + 38 = 78 per 2 le a lt 3

88 = 1 per a ge 3

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 66 88

Funzione di densita o di massa

Sia X una variabile aleatoria Si chiama funzione di densita di X lafunzione f che associa ad ogni numero reale a la probabilita che X siauguale ad a indicata con fX (a)

Nel caso della moneta (fair) lanciata 3 volte (X indica il numero di testecomplessivo)

fX (a) =

⎧⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎨⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎩

18 per a = 0

38 per a = 1

38 per a = 2

18 per a = 3

0 altrimenti

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 67 88

Valore Atteso

Chiamato anche media (expectation in inglese) e appunto una mediapesata dei possibili valori di una variabile aleatoria Il peso dato a ciascunvalore e la probabilita data a quello specifico valore

E[X ] =sumi

aiP(X = ai)

Esempio dado truccato

valore 6 con probabilita 712

valori da 1 a 5 con probabilita 112

La variabile aleatoria X indica la faccia risultante dal lancio di un dado

E[X ] = 1

12lowast 1 + 1

12lowast 2 + 1

12lowast 3 + 1

12lowast 4 + 1

12lowast 5 + 7

12lowast 6 = 475

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 68 88

Valore Atteso - Proprieta

Sia X una variabile aleatoria con valore atteso E[X ] Se c e una costanteallora anche cX e X + c sono variabili casuali In particolare valgono leseguenti proprieta

E[cX ] = cE[X ]E[X + c] = E[X ] + c

Sia Y una variabile aleatoria Allora

E[X +Y ] = E[X ] +E[Y ]se e solo se X e Y sono independenti

E[XY ] = E[X ]E[Y ]

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 69 88

Varianza

Ersquo il valore atteso del quadrato della differenza tra la variabile aleatoria e ilsuo valore atteso

Var(X ) = E[(X minusE[X ])2] = E[X 2] minus (E[X ])2

La radice quadrata viene detta deviazione standard di X

Esempio dado truccato

E[X 2] = 1

12lowast 12 + 1

12lowast 22 + 1

12lowast 32 + 1

12lowast 42 + 1

12lowast 52 + 7

12lowast 62 ≃ 255

Var(X ) = E[X 2] minus (E[X ])2 ≃ 255 minus 4752 ≃ 3

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 70 88

Varianza - proprieta

Sia X una variabile aleatoria e c una costante Allora valgono le seguentiproprieta

1 Var(cX ) = c2Var(X )

2 Var(X + c) = Var(X )

NOTA

Var(X +X ) ne Var(X ) +Var(X )

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 71 88

Covarianza

Siano X Y due variabili aleatorie con valore atteso rispettivamenteE[X ] = microX e E[Y ] = microY La covarianza e definita come segue

Cov(X Y ) = E[(X minus microX )(Y minus microY )] = = E[XY ] minus microXmicroY

Proprieta

1 Cov(X Y ) = Cov(Y X )2 Cov(X X ) = Var(X )3 Sia a una costante allora

Cov(aX Y ) = aCov(X Y )

4 Sia Z una variabile aleatoria allora

Cov(X + Z Y ) = Cov(X Y ) + Cov(Z Y )

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 72 88

Esercizi - 1

1 Consideriamo una variabile aleatoria X che puo assumere i valori 12o 3 Se sappiamo che

fX (1) = 1

3 fX (2) = 3

7

1 Quanto vale fX (3)2 Disegnare il grafico di questa funzione di massa3 Disegnare il grafico della relativa funzione di ripartizione

2 Dimostrare che se X1 e X2 hanno la stessa distribuzione allora

Cov(X1 +X2X1 minusX2) = 0

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 73 88

Esercizi - 2

3 La funzione di ripartizione di X e definita come segue

FX (x) =

⎧⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎨⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎩

0 per x le 0

x2 per 0 le x lt 1

23 per 1 le x lt 2

1112 per 2 le x lt 3

1 per x ge 3

Se ne tracci il graficoQuanto vale P(X gt 12)Quanto vale P(2 le X le 4)Quanto vale P(X le 3)Quanto vale P(X = 1)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 74 88

Esercizi - 3

4 Un tipo di prodotti vengono classificati a seconda dei loro difetti edella fabbrica che li ha prodotti Sia X1 il numero (1 o 2) dellafabbrica e sia X2 il numero di difetti per pezzo (che possono essere da0 a 3) di un prodotto scelto a caso tra la totalita di quelli esistentiLa tabella seguente riporta la funzione di massa di probabilitacongiunta per queste due variabili aleatorie discrete Le righe siriferiscono alla variabile X1 mentre le colonne alla variabile X2

Trova le distribuzioni marginali di X1 e X2Calcola media e varianza di X2

0 1 2 31 18 116 316 182 116 116 18 14

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 75 88

Scipy

Scipy e un modulo che permette di utilizzare varie distribuzioni diprobabilita sia di tipo discreto che continuo

La sintassi generale e la seguente Scipystatsltnome distribuzionegt

rvs(size=z) restituisce un vettore di numeri casuali estrattisecondo la distribuzione di lunghezza z

pdf(x) restituisce il vettore della densita della distribuzionevalutata nei valori del vettore di input x (pmf per le discrete)

cdf(x) restituisce il vettore della funzione di ripartizione (ocumulativa) della distribuzione valutata nei valori del vettore di inputx

ppf(q) restituisce il vettore dei quantili della distribuzione valutatanei valori del vettore di input q

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 76 88

Variabili aleatorie discrete Binomiale

gtgtgt from scipystats import binom

gtgtgt rv = binom(n p)

rvrvs(x) restituisce un vettore di x numeri estratti secondo unadistribuzione Binomiale di parametri n p

rvpmf(x) restituisce la probabilita di ottenere esattamente x

successi in un esperimento dicotomico (01) ripetuto n volte con unaprobabilita di successo p (x puo essere un vettore)

rvcdf(q) restituisce il valore della funzione di ripartizione in q (qpuo essere un vettore)

rvppf(p) restituisce il valore del quantile di ordine p

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 77 88

Variabili aleatorie discrete Ipergeometrica

Supponiamo di avere M = 20 animali di cui n = 7 cani Se vogliamosapere la probabilita di trovare un dato numero di cani se scegliamoN = 12 dei 20 animali in maniera casuale possiamo usare una distribuzioneipergeometrica in questo modo

gtgtgt from scipystats import hypergeom

gtgtgt [M n N] = [20 7 12]

gtgtgt rv = hypergeom(M n N)

rvpmf(x) restituisce la probabilita di estrarre esattamente x cani

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 78 88

Variabili aleatorie discrete Geometrica

gtgtgt from scipystats import geom

gtgtgt rv = geom(p)

rvpmf(x) restituisce la probabilita di avere un successo dopoesattamente x insuccessi in una successione di esperimenti dicotomici(esito 01) con una probabilita di successo p (x puo essere un vettore)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 79 88

Variabili aleatorie discrete Poisson

La distribuzione di Poisson viene usata spesso come modello per il numerodi volte per cui un evento avviene in un dato intervallo di tempo (ospazio) Ad esempio si puo utilizzare per misurare il numero di chiamatericevute da un call center in una mattinata

gtgtgt from scipystats import poisson

gtgtgt mu = 2

gtgtgt rv = poisson(mu)

rvpmf(x) restituisce il seguente valore

f (x) = exp(minusmicro)microx

x

In questo caso x rappresenta il numero di eventi per cui si vuole calcolarela probabilita sapendo che in media ne accadono micro

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 80 88

Variabili aleatorie continue Uniforme

In Scipy la funzione uniforme e soltanto continua Questo significa chenella generazione di numeri casuali otterro dati di tipo float Possiamotuttavia simulare una variabile discreta estraendo la parte intera delrisultato ottenuto

gtgtgt from scipystats import uniform

gtgtgt rv = uniform()

Il comando uniform() crea una distribuzione uniforme nellrsquointervallo[01] Possiamo creare una distribuzione uniforme qualsiasi usandouniform(x y - x) per lrsquointervallo [x y]

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 81 88

Variabili aleatorie continue

norm(mu sigma) variabile Gaussiana (o Normale) di media micro edeviazione standard σ

expon(scale = 1 lambda) variabile Esponenziale di parametroλ

Altre distribuzioni (con relativa documentazione) disponibili suhttpsdocsscipyorgdocscipyreferencestatshtml

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 82 88

Esercizi - 1

1 Unrsquourna contiene 10 palline di cui 4 bianche e 6 nere Si eseguono 5estrazioni con reimmissione

1 Tracciare grafico della funzione massa di probabilita della variabilecasuale X = rdquonumero di palline bianche estratterdquo

2 Calcolare la probabilita di estrarre 2 palline bianche3 Calcolare la probabilita di estrarre al piu 2 palline bianche4 Calcolare la probabilita di estrarre almeno 2 palline bianche5 Qual e il numero minimo x tale che la probabilita di estrarre al piu x

palline bianche sia almeno 08

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 83 88

Esercizi - 2

2 Si eseguono 10 estrazioni senza reimmissione da unrsquourna

1 Tracciare il grafico della funzione massa di probabilita della variabilecasuale X = rdquonumero di palline bianche estratterdquo nei seguenti casi

1 lrsquourna contiene 100 palline di cui 20 bianche e le restanti nere2 lrsquourna contiene 100 palline di cui 2 bianche e le restanti nere

2 Tracciare il grafico della funzione massa di probabilita della variabilecasuale X nel caso dellrsquourna 1 se si eseguono 25 estrazioni

3 Consideriamo lrsquourna 1 e N = 10 estrazioni Si aumenti il numero totaleM di palline nellrsquourna mantenendo uguale a 02 la frazione di pallinebianche Per ciascun valore di M confrontare graficamente ladistribuzione di probabilita del numero di palline bianche estratte nelcaso di estrazioni con e senza reimmissione Provare con 20 40 e 200palline bianche

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 84 88

Esercizi - 3

3 Calcolare la probabilita di ottenere piu teste che croci lanciando 7volte una moneta truccata con probabilita di avere croce pari a 045

4 Calcolare la probabilita di avere almeno 3 sei lanciando 5 dadi a 12facce

5 Calcolare la probabilita di estrarre 20 euro da un sacco contenente 47monete da 1 centesimo e 53 da 2 euro estraendo (uniformemente) acaso 10 monete senza reinserirle

6 Un grammo di uranio emette mediamente 2152 particelle α ognimillisecondo Qual e con buona approssimazione la probabilita che ungrammo di uranio emetta al piu 2000 particelle α in un millisecondo

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 85 88

Esercizi - 4

7 Un uomo si risveglia in mezzo al deserto senza acqua Dopo ogniminuto ha una probabilita del 3 di perdere conoscenza per via dellecondizioni estreme Calcolare la probabilita che lrsquouomo perdaconoscenza dopo almeno due ore e la probabilita che lrsquouomo perdaconoscenza dopo esattamente un quarto drsquoora

8 Sia X una variabile aleatoria normale di parametri micro = 10 e σ = 36Calcola

1 P(X gt 5)2 P(4 le X le 16)3 P(X le 8)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 86 88

Esercizi - 5

9 Il numero di errori tipografici per pagina di una certa rivista segue unadistribuzione di Poisson Sapendo che mediamente sono presenti 02errori per pagina determinare la probabilita che una pagina contenga

1 nessun refuso2 piu refusi

10 Arrivi alla fermata dellrsquoautobus alle 1000 e sei certo che ne passerauno in un momento distribuito uniformemente tra le 1000 e le 1030

1 Qual e la probabilita che tu debba aspettare piu di 10 minuti2 Se alle 1015 lrsquoautobus non e ancora arrivato qual e la probabilita che

tu debba aspettare almeno altri 10 minuti

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 87 88

Esercizi - 6

11 Il signor Jones e convinto che il tempo di vita di una automobile (inmigliaia di chilometri percorse) sia una variabile aleatoria esponenzialedi parametro 120 Il signor Smith ha una macchina usata da vendereche ha percorso circa 10 000 chilometri

1 Se il signor Jones decide di comprarla che probabilita ha di farle farealmeno altri 20 000 chilometri prima che sia da buttare

2 Il modello assunto dal signor Jones e ragionevole

12 Sia X una variabile casuale binomiale di parametri n = 100 e p = 07

1 Tracciate la funzione di ripartizione di X2 Calcolate il primo quartile il quantile di ordine 09 e la mediana di X3 Calcolare la probabilita P(X le 60)4 Calcolare la probabilita P(X le 88)5 Trovare il piu piccolo valore x tale che P(X le x) ge 09

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 88 88

  • Lezione 1
    • Script in Python
    • Numpy
    • Esercizi
    • Pandas
    • Esercizi
      • Lezione 2
        • File csv
        • DataFrame
        • Accesso ai DataFrame
        • Frequenze
        • Esercizi
          • Lezione 3
            • Matplotlib
            • Grafici a Barre
            • Istogrammi
            • Cumulativa empirica
            • Boxplot
            • QQplot
            • Diagramma di Pareto
            • Esercizi
              • Lezione 4
                • Definizioni
                • Probabilitagrave condizionata
                • Indipendenza
                • Esercizi
                  • Lezione 5
                    • Variabili Aleatorie
                    • Funzione di Ripartizione
                    • Funzione di Densitagrave
                    • Valore Atteso
                    • Varianza
                    • Covarianza
                    • Esercizi
                      • Lezione 6
                        • Scipy - Variabili Discrete
                        • Scipy - Variabili continue
                        • Esercizi

Tipi Predefiniti in Python

Stringhe (str) rdquoquesta e una stringardquo rdquoquesta purerdquo

Dizionari (dict) lsquochiaversquo valoreTuple (tuple) (1 2 3 1 rsquociaorsquo)

Liste (list) [1 2 3 4 rsquopipporsquo]

Set (set) (1 2 3)

Interi (int) 1 2 3

Float (float) 15 314 2718281828459045

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 11 88

Numpy

Il modulo numpy (httpwwwnumpyorg) mette a disposizione unastruttura dati creata appositamente per il calcolo scientifico

ArrayUn array e un contenitore di dati omogenei cioe dello stesso tipo Se sitenta di costruire un array con dati di tipo diverso questi vengonoldquotrasformatirdquo nel piu piccolo tipo adatto a contenerli tutti

gtgtgt import numpy as np

gtgtgt nparray( [146810] )

array([ 1 4 68 10 ])

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 12 88

Creazione di Array - 1

numpyarange(x) restituisce un array contenente gli interi da 0 a x minus 1

gtgtgt numpyarange(5)

array([0 1 2 3 4])

numpyarange(start stop step) permette di scegliere gli estremi dellasequenza contenuta nellrsquoarray e il passo tra un numero ed il successivo

gtgtgt numpyarange(262)

array([2 4])

gtgtgt numpyarange(2-3-1)

array([ 2 1 0 -1 -2])

numpylinspace(start stop n) permette di scegliere gli estremi e quantinumeri devono comparire allrsquointerno della sequenza

gtgtgt numpylinspace(014)

array)[0 03333333 066666667 1])

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 13 88

Creazione di Array - 2

numpyones(rdquotuplardquo) restuituisce un array di 1 date le dimensionispecificate nella tupla come argomento

gtgtgt numpyones( (15) )

array([1 1 1 1 1])

numpyzeros(rdquotuplardquo) restuituisce un array di 0 date le dimensionispecificate nella tupla come argomento

gtgtgt numpyzeros( (25) )

array([[0 0 0 0 0] [0 0 0

0 0]])

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 14 88

Operazioni con Array

Applicando un operazione logica ad un array si ottiene come risposta unarray di tipo booleano contenente nella posizione i-esima il risultatodellrsquoespressione logica valutata per lrsquoelemento i-esimo dellrsquoarray

gtgtgt numpyarange(5) gt 3

array([False False False False True] dtype=bool)

Le operazioni + - tra due array vengono eseguite elemento perelemento (gli array devono avere le stesse dimensioni)

gtgtgt numpyarange(5) + numpylinspace(025)

array([ 0 15 3 45 6 ])

gtgtgt numpyarange(5) 2

array([0 2 4 6 8])

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 15 88

Selezioni di un sottoinsieme di elementi

Ad un array e possibile accedere in tutti i modi con cui e possibile accederead una lista ad esempio

Ottenere una tupla di elementi

gtgtgt a[2] a[-1] a[36]

(2 9 array([3 4 5]))

Slicing [startstopstep]

gtgtgt a[293]

array([2 5 8])

gtgtgt a[2]

array([0 2 4 6 8])

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 16 88

Accesso con maschere booleane

Specificando tra [ ] un array di tipo booleano selezioniamo dallrsquoarray glielementi la cui posizione corrisponde ad un True nellrsquoarray di tipobooleano (che prende il nome di maschera)

gtgtgt a = numpyarange(10)

gtgtgt mask = a2 == 0

gtgtgt mask

array([ True False True False True False True

False True False] dtype=bool)

gtgtgt a[mask]

array([0 2 4 6 8])

o in maniera piu compatta

gtgtgt a[a2 == 0]

array([0 2 4 6 8])

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 17 88

Esercizi

1 Lanciare uno script che stampi il vostro nome e cognome

2 Creare un array i cui elementi siano gli interi che compongono ilvostro numero di matricola

3 Sia X la lunghezza dellrsquoarray del punto precedente Creare un array diX elementi equispaziati lrsquouno dallrsquoaltro di 15

4 Creare un array di X elementi equispaziati nellrsquointervallo tra 1 e 3

5 Ottenere gli array dati dalla somma tra lrsquoarray del punto 2 e quello delpunto 3 e quello dato dalla moltiplicazione tra punto 3 e punto 4

6 Ottenere per ciascuno dei due array del punto 5 un array mascherache in corrispondenza dei numeri divisibili per 3 abbia True Falsealtrimenti

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 18 88

Pandas - Series (1)

Pandas (httpspandaspydataorg) e una libreria Python chefornisce strutture dati e strumenti relativi esclusivamente allrsquoanalisi deidatiUna Series e un array monodimensionale ed etichettato Rappresenta unaserie di osservazioni di un certo carattere fatto su un insieme di individui

a 00

b 10

c 20

d 30

e 40

f 50

g 60

h 70

Name serie di esempio dtype float64

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 19 88

Pandas - Series (2)

pandasSeries (data index dtype name )

data contiene i dati che si vuole inserire nella serie

index della stessa lunghezza di data contiene le etichette

dtype permette di specificare il tipo che i dati devono assumere

name permette di dare un nome alla Series

gtgtgt import pandas as pd

gtgtgt import numpy as np

gtgtgt oss = nparange(8)

gtgtgt etic = [rsquoarsquorsquobrsquorsquocrsquorsquodrsquorsquoersquorsquofrsquorsquogrsquorsquohrsquo]

gtgtgt pdSeries(data=oss index=etic name=rsquoserie di esempiorsquo

dtype=float)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 20 88

Accesso ai dati di una Series

Specificando un valore (o una lista di valori) per lrsquoetichetta

gtgtgt sloc[[rsquohrsquorsquoarsquo]]

h 70

a 00

Specificando un valore (o una lista di valori) per la posizione

gtgtgt s[[56]]

f 50

g 60

Usando lo slicing (come per gli array numpy) per la posizione

gtgtgt s[36]

d 30

e 40

f 50

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 21 88

Pandas Series - Utils

Seriesmin() Seriesmax() restituiscono rispettivamente il minimoed massimo tra i valori della Series

Seriessum() restituisce la somma dei valori della Series

Seriessort values() restituisce una copia della Series ordinata pervalore

Seriessort index() restituisce una copia della Series ordinata peretichette

Seriessample(n) restituisce una Series di n elementi sceltiuniformemente a caso allrsquointerno di quelli della Series

Seriesappend([s1s2]) concatena una o piu Series a quella dipartenza

Seriescount() restituisce il numero dei valori della Series che nonsiano il valore NaN

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 22 88

Il valore NaN

Nan un oggetto del modulo numpy che puo rappresentare in una Seriesun dato di cui non e stato possibile fare unrsquoosservazioneOperazioni con un valore Nan hanno come risultato il valore Nan

gtgtgt oss = range(5)

gtgtgt ossappend(None)

gtgtgt pandasSeries(oss)

0 00

1 10

2 20

3 30

4 40

5 NaN

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 23 88

Esercizi

Creare la Series gol in modo che le etichette siano numeri dallrsquo1 al 23 Idati raccolti siano numeri interi tra 0 e 30 scelti casualmente (scarica ilnotebook) La Series rappresenta i gol segnati da ciascun giocatore diuna societa calcistica nella stagione appena passata Lrsquoetichettacorrisponde al numero di maglia del giocatore Ottenere

1 I gol segnati dal capocannoniere2 Chi non ha mai fatto gol durante lrsquoanno3 La statistica del punto 2 per i soli titolari (numeri dallrsquo1 allrsquo11) e per

le sole riserve (dal 12 al 23)4 La statistica del punto 2 per i soli attaccanti (numeri dalrsquo9 allrsquo11)5 I gol segnati dai giocatori coi numeri di maglia 5 9 10 14 (somma)6 Chi ha segnato piu di 10 gol e chi ha segnato esattamente 10 gol7 Una copia della Series ordinata secondo i gol effettuati8 Una stampa dei primi 5 cannonieri e degli ultimi 59 Una copia della Series ordinata in modo discendente secondo il

numero di maglia

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 24 88

File csv

Il formato csv (comma-separated value) e un formato utilizzato perrappresentare una tabella di dati e favorirne lrsquoimportazione e lrsquoesportazioneUn file csv e scritto nella seguente forma

titolopaeseannoduratagenerevoto

Guerre StellariUSA1977121Fantascienza4

Lrsquoimpero colpisce ancoraUSA1980124Fantascienza4

Il ritorno dello JediUSA1983Fantascienza35

Profondo RossoITA1975Horror35

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 25 88

Leggere csv

La funzione read csv() di Pandas puo essere utilizzata per leggere unfile di formato csv Tra i vari parametri che passiamo in input unoparticolarmente importante e sep che indica il carattere utilizzato perseparare le colonne (default e rsquorsquo)

gtgtgt df film = pdread csv(rsquofilmcsvrsquo)

gtgtgt df film

titolo paese anno durata genere voto

Il padrino USA 19720 1750 Drammatico 45

Pulp Fiction USA 19940 1540 Drammatico 40

Fight Club USA 19990 1390 Thriller 40

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 26 88

DataFrame

In Pandas un DataFrame e una struttura dati tabulare con assi etichettatile cui colonne possono contenere dati eterogenei da colonna a colonna

gtgtgt dataframe

esempio

Nome Cognome Eta Citta

Tommaso Rossi 300 Milano

Sergio Bianchi 340 Roma

Pasquale Verdi 290 Palermo

Antonio Gialli 300 Roma

Il DataFrame puo essere visto come un insieme di serie aventi lo stessoindice accostate una allrsquoaltra

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 27 88

Accesso colonne DataFrame - 1

Per conoscere le colonne di un DataFrame possiamo invocare il comandodfcolumns dove df e la variabile in cui abbiamo instanziato ilDataFramePer accedere ad una colonna dobbiamo specificarne il nome nel seguentemodo

gtgtgt df film[rsquogenerersquo]

titolo

Il padrino Drammatico

Pulp Fiction Drammatico

Fight Club Thriller

Selezionando unrsquounica colonna in output viene restituita una Series

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 28 88

Accesso colonne DataFrame - 2

Possiamo accedere allo stesso tempo a piu colonne

gtgtgt df film[[rsquopaesersquorsquoannorsquo]]

titolo paese anno

Il padrino USA 19720

Pulp Fiction USA 19940

Fight Club USA 19990

Selezionando piu colonne in output viene restituito un DataFrame

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 29 88

Accesso righe DataFrame - 1

Per indice numerico

gtgtgt df film[1518]

titolo paese anno durata genere voto

Il padrino USA 19720 1750 Drammatico 45

Pulp Fiction USA 19940 1540 Drammatico 40

Fight Club USA 19990 1390 Thriller 40

Quasi Amici FRA 20110 1120 Commedia 35

Per valore dellrsquoindice (assumiamo che titolo sia lrsquoindice delDataFrame)

gtgtgt df film[rsquoIl padrinorsquorsquoFight Clubrsquo]

titolo paese anno durata genere voto

Il padrino USA 19720 1750 Drammatico 45

Pulp Fiction USA 19940 1540 Drammatico 40

Fight Club USA 19990 1390 Thriller 40

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 30 88

loc amp iloc

Cosı come per le Series anche con i DataFrame possiamo usare loc ediloc per lrsquoaccesso ai dati

loc[rsquonome indicersquo] permette lrsquoaccesso ad una riga o piu righetramite nome dellrsquoindice

iloc[rsquoposizionersquo] permette lrsquoaccesso ad una o piu righe tramitela loro posizione

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 31 88

Accesso tramite unrsquoespressione logica

gtgtgt df film[rsquoannorsquo gt 1998]

titolo

Il padrino False

Pulp Fiction False

Fight Club True

Quasi Amici True

gtgtgt df film[df film[rsquoannorsquo] gt 1998]

titolo paese anno durata genere voto

Fight Club USA 19990 1390 Thriller 40

Quasi Amici FRA 20110 1120 Commedia 35

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 32 88

Metodi dei DataFrame

La classe DataFrame ha diversi metodi Elenchiamo qui i piu importanti

DataFrameappend() permette di estendere il DataFrame

DataFramedrop duplicates() restituisce un DataFrame senza righeduplicate

DataFramedropna() Eliminare i valori Nan da un DataFrame

DataFramesort values() permette di ordinare il DataFrame

DataFramemax() DataFramemin() DataFramemean()DataFramemedian()

Per la completa documentazione si puo utilizzare il comandohelp(pdDataFrame) oppure andare al seguente linkhttpspandaspydataorgpandas-docsstablegenerated

pandasDataFramehtml

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 33 88

Frequenze

La frequenza assoluta indica il numero di volte che una dataosservazione occorre in un campione

La frequenza relativa e un valore tra 0 e 1 che permette di valutare inmaniera piu efficace la frequenza di un osservazione Si calcoladividendo la frequenza assoluta per il numero totale di casi

Per calcolare questa quantita in Pandas possiamo utilizzare la funzionevalue counts() che opera su una Series

In alternativa si puo utilizzare la funzione pdcrosstab che calcolaqueste frequenze in automatico restituendole in output in un DataFrame

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 34 88

Esercizi

Utilizzando il file dati-ospedalicsv dai csv del laboratorio

1 Leggere il file e visualizzarlo in un DataFrame

2 Calcolare le frequenze assolute e relative dellrsquoattributo Regioneusando crosstab

3 Ottenere la singola serie relativa allrsquoattributo Regione e calcolarne lafrequenza assoluta e relativa senza usare crosstab

4 Estrarre un sottodataframe contenente le colonne Nome (attributoDenominazione Str Pubblica New) e Numero di medici (attributoMedici SSN) degli ospedali aventi meno di 200 medici

5 Visualizzare il nome degli ospedali della regione Lombardia

6 Calcolare il numero medio di ingegneri (Ingegneri SSN) presenti negliospedali campani

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 35 88

Esercizi

7 Calcolare la varianza del numero di assistenti sociali (Assistenti socialiSSN) negli ospedali con piu di 400 medici

8 Qual e lrsquoospedale con meno medici

9 Visualizzare in ordine alfabetico il nome dei primi 10 ospedali pernumero di medici

10 Visualizzare il numero degli ospedali che hanno dichiarato il numerodi odontoiatri (per cui il valore e diverso da NaN) (OdontoiatriUniversitari)

11 Visualizzare il numero degli ospedali che hanno dichiarato il numerodi odontoiatri (Odontoiatri Universitari) e per cui questo numero emaggiore di 0

12 Calcolare le frequenze assolute per lrsquoattributo Odontoiatri SSNTrasformare questo risultato in frequenze relative

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 36 88

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) SAD 20182019 January 12 2019 37 88

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) SAD 20182019 January 12 2019 38 88

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) SAD 20182019 January 12 2019 39 88

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) SAD 20182019 January 12 2019 40 88

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) SAD 20182019 January 12 2019 41 88

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) SAD 20182019 January 12 2019 42 88

Grafici con le Series

In generale possiamo tracciare diversi tipi di grafici con le Series

rsquolinersquo line plot (default)

rsquobarrsquo vertical bar plot

rsquobarhrsquo horizontal bar plot

rsquohistrsquo histogram

rsquoboxrsquo boxplot

rsquokdersquo Kernel Density Estimation plot

rsquodensityrsquo same as rsquokdersquo

rsquoarearsquo area plot

rsquopiersquo pie plot

Per saperne di piu consultare questo link

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 43 88

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) SAD 20182019 January 12 2019 44 88

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) SAD 20182019 January 12 2019 45 88

Boxplot

Rappresenta la distribuzione di un vettore di numeri cerchiando gli outlier

gtgtgt weight = heroes[rsquoWeightrsquo]

gtgtgt weightplotbox()

gtgtgt pltshow()

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 46 88

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) SAD 20182019 January 12 2019 47 88

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) SAD 20182019 January 12 2019 48 88

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) SAD 20182019 January 12 2019 49 88

Esercizi - 1

Utilizzando il file capellicsv dai csv del laboratorio

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) SAD 20182019 January 12 2019 50 88

Esercizi - 2

Utilizzando il file dati-ospedalicsv dai csv del laboratorio

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 e canipdf

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 51 88

Sample space

Un esperimento e qualsiasi processo che produce una realizzazione (oosservazione) Lrsquoinsieme di tutte le possibili realizzazioni di un esperimentoviene detto sample space ed indicato con S

lancio di 2 monete

S = (T T ) (T C) (C T ) (C C)

gara di 3 cavalli (ab c)

S = tutti i possibili ordinamenti di(ab c)= (ab c) (a cb) (c b a)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 52 88

Eventi

lancio di 2 monete

S = (T T ) (T C) (C T ) (C C)

A = 2 monete uguali

A = (T T ) (C C)

B = 2 monete diverse

B = Ac = (T C) (C T )

gara di 3 cavalli

A = cavallo a vincente

A = (ab c) (a c b)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 53 88

Probabilita - 1

Consideriamo un esperimento con sample space S Supponiamo che adogni evento A sia associato un numero chiamato probabilita di A edindicato con P(A) che soddisfa le seguenti proprieta

1 Per ogni evento A la probabilita di A e un numero tra 0 e 1

0 le P(A) le 1

2 La probabilita del sample space S e 1

P(S) = 1

3 La probabilita dellrsquounione di eventi disgiunti e uguale alla somma delleprobabilita di tali eventi

P(A cupB) = P(A) + P(B)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 54 88

Probabilita - 2

In generale 2 eventi potrebbero non essere disgiunti

P(A cupB) = P(A) + P(B) minus P(A capB)

Esempio un certo negozio accetta pagamenti o con carte di credito VISAo Mastercard

1 22 dei clienti ha Mastercard

2 58 dei clienti ha VISA

3 14 dei clienti ha entrambe

Qual e la probabilita che un cliente ha almeno una delle 2 carte

P(A) = 022 P(B) = 058

P(A cupB) = P(A) + P(B) minus P(A capB) = 022 + 058 minus 014 = 066

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 55 88

Probabilita condizionata - 1

Se alcune informazioni riguardo lrsquoesito di un esperimento sono disponibiliparliamo di probabilita condizionata

Esempio lancio di 2 dadi

S = (11) (12) (65) (66)

Probabilita che la somma sia 10 (evento B) sapendo che il primo dadomostra 4 (evento A)

(41) (42) (43) (44) (45) (46)

P(B ∣A) = 16

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 56 88

Probabilita condizionata - 2

In generale

P(B ∣A) = P(A capB)P(A)

Supponiamo lrsquoesito sia in A

Per essere anche in B deve essere in entrambi A e B cioe in A capB

Sapendo che A e gia accaduto il nostro nuovo sample space diventa A

la probabilita di A capB viene calcolata rispetto ad A

Nel caso dei dadi

P(B ∣A) = P((46))P((41) (42) (43) (44) (45) (46)) = 136

16= 1

6

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 57 88

Indipendenza

In generale sapere che A e accaduto modifica le chance che B accadaNel caso cio non avvenga cioe se P(B ∣A) = P(B) allora i 2 eventi sidicono indipendenti In questo caso sapere che A e accaduto nonaggiunge alcuna informazione

SiccomeP(A capB) = P(B ∣A)P(A)

Abbiamo che B e indipendente da A se

P(A capB) = P(B)P(A)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 58 88

Esercizi - 1

1 Svolgere gli esercizi di combinatoria

2 Si consideri il seguente esperimento casuale rdquosi lancia tre volte unamonetardquo Qual e lo spazio degli esiti di questo esperimento casualeSi scriva esplicitamente lrsquoevento rdquosi ottengono piu teste che crocirdquo

3 Si consideri il seguente esperimento casuale rdquoSi tirano due dadirdquo Siconsiderino gli eventi E = rdquola somma dei punteggi e disparirdquo F = rdquoilprimo dado realizza un 1rdquo e G = rdquola somma dei punteggi e 5rdquo Sidescrivano gli eventi E cap F E cup F F capG E cap F c e E cap F capG

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 59 88

Esercizi - 2

4 Si consideri il seguente esperimento casuale rdquoUn sistema e compostoda 4 componenti ciascuno dei quali o funziona oppure e guasto Siosserva lo stato dei componenti ottenendo un vettore (x1 x2 x3 x4)dove xi e 1 oppure 0 a seconda che il componente i-esimo funzionioppure nordquo

1 Da quanti elementi e formato lo spazio degli esiti2 Il sistema nel suo insieme funziona fintantoche entrambi i componenti

1 e 2 oppure entrambi i componenti 3 e 4 funzionano Specifica tuttigli esiti dellrsquoevento il rdquosistema funzionardquo

3 Sia E lrsquoevento rdquoi componenti 1 e 3 sono guastirdquo Quanti esiti contiene

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 60 88

Esercizi - 3

5 Si dimostri che in uno spazio degli esiti Ω dotato di una probabilita Pper ogni evento E F sub Ω vale la disuguaglianza seguente

P(E cap F ) ge P(E) + P(F ) minus 1

6 Un gruppo di 5 bambini e 10 bambine e in fila in ordine casuale nelsenso che tutte le 15 possibili permutazioni si suppongonoequiprobabili

1 Qual e la probabilita che il quarto della fila sia un bambino2 E il dodicesimo3 Qual e la probabilita che un determinato bambino occupi la terza

posizione

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 61 88

Esercizi - 4

7 In un comune vi sono 5 alberghi Se 3 persone devono scegliere unalbergo in cui pernottare qual e la probabilita che finiscano tutte inalberghi differenti Che cosa stiamo assumendo senza dirloesplicitamente

8 La media del salario annuale di un gruppo di 100 lavoratori impiegatinellrsquoamministrazione di una grande azienda e di 130000 dollari conuna deviazione standard di 20000 dollari Se si prende una persona acaso da questo gruppo cosa possiamo dire sulla probabilita che il suosalario sia

1 tra i 90000 e i 170000 dollari2 superiore a 150000 dollari

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 62 88

Esercizi - 5

9 In una certa regione vi sono due ditte che producono forni amicroonde Quelli della fabbrica A sono difettosi con probabilita 005mentre quelli della fabbrica B con probabilita 001 Supponi di averacquistato due apparecchi prodotti dalla stessa ditta che puo essere laA o la B con probabilita del 50 Se il primo microonde e difettosoqual e la probabilita condizionata che sia difettoso anche il secondo

10 Hai chiesto ad un vicino di innaffiare una piantina delicata mentre seiin vacanza Pensi che senza acqua la piantina muoia con probabilita08 mentre se innaffiata questa probabilita si ridurrebbe a 015 Latua fiducia che il vicino si ricordi di innaffiarla e del 90

1 Qual e la probabilita che la pianta sia ancora viva al tuo ritorno2 Se fosse morta quale sarebbe la probabilita che il vicino si sia

dimenticato di innaffiarla

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 63 88

Esercizi - 6

11 Una compagnia di assicurazioni classifica i suoi clienti in tre fascebasso rischio medio rischio alto rischio Le sue statistiche indicanoche le probabilita che un cliente delle tre fasce abbia un incidenteentro un periodo di un anno sono rispettivamente 005 015 e 030Se il 20 dei clienti sono a basso rischio il 50 a medio rischio e il30 ad alto rischio che percentuale dei clienti avra mediamenteincidenti in un lasso di un anno Se un cliente non ha avuto incidentinel 1987 qual e la probabilita che appartenga a ciascuna delle trefasce

12 Se un votante scelto a caso e favorevole ad una certa riforma conprobabilita di 07 qual e la probabilita che su 10 votanti esattamente7 siano favorevoli

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 64 88

Variabili aleatorie

Una variabile aleatoria (o anche variabile aleatoria) e una variabile chepuo assumere valori diversi in dipendenza da qualche fenomeno aleatorio

fenomeno lancio di 2 dadivariabile aleatoria somma dei 2 dadi

fenomeno 3 lanci di una monetavariabile aleatoria numero di rdquotesterdquo complessivo

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 65 88

Funzione di Ripartizione

Sia X una variabile aleatoria Si chiama funzione di ripartizione di X lafunzione F che associa ad ogni numero reale a la probabilita che X siaminore o uguale ad a cioe P(X le a) = FX (a)

Nel caso della moneta (fair) lanciata 3 volte (X indica il numero di testecomplessivo)

FX (a) =

⎧⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎨⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎩

0 if a lt 0

18 per 0 le a lt 1

18 + 38 = 48 per 1 le a lt 2

48 + 38 = 78 per 2 le a lt 3

88 = 1 per a ge 3

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 66 88

Funzione di densita o di massa

Sia X una variabile aleatoria Si chiama funzione di densita di X lafunzione f che associa ad ogni numero reale a la probabilita che X siauguale ad a indicata con fX (a)

Nel caso della moneta (fair) lanciata 3 volte (X indica il numero di testecomplessivo)

fX (a) =

⎧⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎨⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎩

18 per a = 0

38 per a = 1

38 per a = 2

18 per a = 3

0 altrimenti

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 67 88

Valore Atteso

Chiamato anche media (expectation in inglese) e appunto una mediapesata dei possibili valori di una variabile aleatoria Il peso dato a ciascunvalore e la probabilita data a quello specifico valore

E[X ] =sumi

aiP(X = ai)

Esempio dado truccato

valore 6 con probabilita 712

valori da 1 a 5 con probabilita 112

La variabile aleatoria X indica la faccia risultante dal lancio di un dado

E[X ] = 1

12lowast 1 + 1

12lowast 2 + 1

12lowast 3 + 1

12lowast 4 + 1

12lowast 5 + 7

12lowast 6 = 475

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 68 88

Valore Atteso - Proprieta

Sia X una variabile aleatoria con valore atteso E[X ] Se c e una costanteallora anche cX e X + c sono variabili casuali In particolare valgono leseguenti proprieta

E[cX ] = cE[X ]E[X + c] = E[X ] + c

Sia Y una variabile aleatoria Allora

E[X +Y ] = E[X ] +E[Y ]se e solo se X e Y sono independenti

E[XY ] = E[X ]E[Y ]

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 69 88

Varianza

Ersquo il valore atteso del quadrato della differenza tra la variabile aleatoria e ilsuo valore atteso

Var(X ) = E[(X minusE[X ])2] = E[X 2] minus (E[X ])2

La radice quadrata viene detta deviazione standard di X

Esempio dado truccato

E[X 2] = 1

12lowast 12 + 1

12lowast 22 + 1

12lowast 32 + 1

12lowast 42 + 1

12lowast 52 + 7

12lowast 62 ≃ 255

Var(X ) = E[X 2] minus (E[X ])2 ≃ 255 minus 4752 ≃ 3

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 70 88

Varianza - proprieta

Sia X una variabile aleatoria e c una costante Allora valgono le seguentiproprieta

1 Var(cX ) = c2Var(X )

2 Var(X + c) = Var(X )

NOTA

Var(X +X ) ne Var(X ) +Var(X )

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 71 88

Covarianza

Siano X Y due variabili aleatorie con valore atteso rispettivamenteE[X ] = microX e E[Y ] = microY La covarianza e definita come segue

Cov(X Y ) = E[(X minus microX )(Y minus microY )] = = E[XY ] minus microXmicroY

Proprieta

1 Cov(X Y ) = Cov(Y X )2 Cov(X X ) = Var(X )3 Sia a una costante allora

Cov(aX Y ) = aCov(X Y )

4 Sia Z una variabile aleatoria allora

Cov(X + Z Y ) = Cov(X Y ) + Cov(Z Y )

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 72 88

Esercizi - 1

1 Consideriamo una variabile aleatoria X che puo assumere i valori 12o 3 Se sappiamo che

fX (1) = 1

3 fX (2) = 3

7

1 Quanto vale fX (3)2 Disegnare il grafico di questa funzione di massa3 Disegnare il grafico della relativa funzione di ripartizione

2 Dimostrare che se X1 e X2 hanno la stessa distribuzione allora

Cov(X1 +X2X1 minusX2) = 0

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 73 88

Esercizi - 2

3 La funzione di ripartizione di X e definita come segue

FX (x) =

⎧⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎨⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎩

0 per x le 0

x2 per 0 le x lt 1

23 per 1 le x lt 2

1112 per 2 le x lt 3

1 per x ge 3

Se ne tracci il graficoQuanto vale P(X gt 12)Quanto vale P(2 le X le 4)Quanto vale P(X le 3)Quanto vale P(X = 1)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 74 88

Esercizi - 3

4 Un tipo di prodotti vengono classificati a seconda dei loro difetti edella fabbrica che li ha prodotti Sia X1 il numero (1 o 2) dellafabbrica e sia X2 il numero di difetti per pezzo (che possono essere da0 a 3) di un prodotto scelto a caso tra la totalita di quelli esistentiLa tabella seguente riporta la funzione di massa di probabilitacongiunta per queste due variabili aleatorie discrete Le righe siriferiscono alla variabile X1 mentre le colonne alla variabile X2

Trova le distribuzioni marginali di X1 e X2Calcola media e varianza di X2

0 1 2 31 18 116 316 182 116 116 18 14

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 75 88

Scipy

Scipy e un modulo che permette di utilizzare varie distribuzioni diprobabilita sia di tipo discreto che continuo

La sintassi generale e la seguente Scipystatsltnome distribuzionegt

rvs(size=z) restituisce un vettore di numeri casuali estrattisecondo la distribuzione di lunghezza z

pdf(x) restituisce il vettore della densita della distribuzionevalutata nei valori del vettore di input x (pmf per le discrete)

cdf(x) restituisce il vettore della funzione di ripartizione (ocumulativa) della distribuzione valutata nei valori del vettore di inputx

ppf(q) restituisce il vettore dei quantili della distribuzione valutatanei valori del vettore di input q

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 76 88

Variabili aleatorie discrete Binomiale

gtgtgt from scipystats import binom

gtgtgt rv = binom(n p)

rvrvs(x) restituisce un vettore di x numeri estratti secondo unadistribuzione Binomiale di parametri n p

rvpmf(x) restituisce la probabilita di ottenere esattamente x

successi in un esperimento dicotomico (01) ripetuto n volte con unaprobabilita di successo p (x puo essere un vettore)

rvcdf(q) restituisce il valore della funzione di ripartizione in q (qpuo essere un vettore)

rvppf(p) restituisce il valore del quantile di ordine p

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 77 88

Variabili aleatorie discrete Ipergeometrica

Supponiamo di avere M = 20 animali di cui n = 7 cani Se vogliamosapere la probabilita di trovare un dato numero di cani se scegliamoN = 12 dei 20 animali in maniera casuale possiamo usare una distribuzioneipergeometrica in questo modo

gtgtgt from scipystats import hypergeom

gtgtgt [M n N] = [20 7 12]

gtgtgt rv = hypergeom(M n N)

rvpmf(x) restituisce la probabilita di estrarre esattamente x cani

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 78 88

Variabili aleatorie discrete Geometrica

gtgtgt from scipystats import geom

gtgtgt rv = geom(p)

rvpmf(x) restituisce la probabilita di avere un successo dopoesattamente x insuccessi in una successione di esperimenti dicotomici(esito 01) con una probabilita di successo p (x puo essere un vettore)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 79 88

Variabili aleatorie discrete Poisson

La distribuzione di Poisson viene usata spesso come modello per il numerodi volte per cui un evento avviene in un dato intervallo di tempo (ospazio) Ad esempio si puo utilizzare per misurare il numero di chiamatericevute da un call center in una mattinata

gtgtgt from scipystats import poisson

gtgtgt mu = 2

gtgtgt rv = poisson(mu)

rvpmf(x) restituisce il seguente valore

f (x) = exp(minusmicro)microx

x

In questo caso x rappresenta il numero di eventi per cui si vuole calcolarela probabilita sapendo che in media ne accadono micro

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 80 88

Variabili aleatorie continue Uniforme

In Scipy la funzione uniforme e soltanto continua Questo significa chenella generazione di numeri casuali otterro dati di tipo float Possiamotuttavia simulare una variabile discreta estraendo la parte intera delrisultato ottenuto

gtgtgt from scipystats import uniform

gtgtgt rv = uniform()

Il comando uniform() crea una distribuzione uniforme nellrsquointervallo[01] Possiamo creare una distribuzione uniforme qualsiasi usandouniform(x y - x) per lrsquointervallo [x y]

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 81 88

Variabili aleatorie continue

norm(mu sigma) variabile Gaussiana (o Normale) di media micro edeviazione standard σ

expon(scale = 1 lambda) variabile Esponenziale di parametroλ

Altre distribuzioni (con relativa documentazione) disponibili suhttpsdocsscipyorgdocscipyreferencestatshtml

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 82 88

Esercizi - 1

1 Unrsquourna contiene 10 palline di cui 4 bianche e 6 nere Si eseguono 5estrazioni con reimmissione

1 Tracciare grafico della funzione massa di probabilita della variabilecasuale X = rdquonumero di palline bianche estratterdquo

2 Calcolare la probabilita di estrarre 2 palline bianche3 Calcolare la probabilita di estrarre al piu 2 palline bianche4 Calcolare la probabilita di estrarre almeno 2 palline bianche5 Qual e il numero minimo x tale che la probabilita di estrarre al piu x

palline bianche sia almeno 08

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 83 88

Esercizi - 2

2 Si eseguono 10 estrazioni senza reimmissione da unrsquourna

1 Tracciare il grafico della funzione massa di probabilita della variabilecasuale X = rdquonumero di palline bianche estratterdquo nei seguenti casi

1 lrsquourna contiene 100 palline di cui 20 bianche e le restanti nere2 lrsquourna contiene 100 palline di cui 2 bianche e le restanti nere

2 Tracciare il grafico della funzione massa di probabilita della variabilecasuale X nel caso dellrsquourna 1 se si eseguono 25 estrazioni

3 Consideriamo lrsquourna 1 e N = 10 estrazioni Si aumenti il numero totaleM di palline nellrsquourna mantenendo uguale a 02 la frazione di pallinebianche Per ciascun valore di M confrontare graficamente ladistribuzione di probabilita del numero di palline bianche estratte nelcaso di estrazioni con e senza reimmissione Provare con 20 40 e 200palline bianche

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 84 88

Esercizi - 3

3 Calcolare la probabilita di ottenere piu teste che croci lanciando 7volte una moneta truccata con probabilita di avere croce pari a 045

4 Calcolare la probabilita di avere almeno 3 sei lanciando 5 dadi a 12facce

5 Calcolare la probabilita di estrarre 20 euro da un sacco contenente 47monete da 1 centesimo e 53 da 2 euro estraendo (uniformemente) acaso 10 monete senza reinserirle

6 Un grammo di uranio emette mediamente 2152 particelle α ognimillisecondo Qual e con buona approssimazione la probabilita che ungrammo di uranio emetta al piu 2000 particelle α in un millisecondo

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 85 88

Esercizi - 4

7 Un uomo si risveglia in mezzo al deserto senza acqua Dopo ogniminuto ha una probabilita del 3 di perdere conoscenza per via dellecondizioni estreme Calcolare la probabilita che lrsquouomo perdaconoscenza dopo almeno due ore e la probabilita che lrsquouomo perdaconoscenza dopo esattamente un quarto drsquoora

8 Sia X una variabile aleatoria normale di parametri micro = 10 e σ = 36Calcola

1 P(X gt 5)2 P(4 le X le 16)3 P(X le 8)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 86 88

Esercizi - 5

9 Il numero di errori tipografici per pagina di una certa rivista segue unadistribuzione di Poisson Sapendo che mediamente sono presenti 02errori per pagina determinare la probabilita che una pagina contenga

1 nessun refuso2 piu refusi

10 Arrivi alla fermata dellrsquoautobus alle 1000 e sei certo che ne passerauno in un momento distribuito uniformemente tra le 1000 e le 1030

1 Qual e la probabilita che tu debba aspettare piu di 10 minuti2 Se alle 1015 lrsquoautobus non e ancora arrivato qual e la probabilita che

tu debba aspettare almeno altri 10 minuti

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 87 88

Esercizi - 6

11 Il signor Jones e convinto che il tempo di vita di una automobile (inmigliaia di chilometri percorse) sia una variabile aleatoria esponenzialedi parametro 120 Il signor Smith ha una macchina usata da vendereche ha percorso circa 10 000 chilometri

1 Se il signor Jones decide di comprarla che probabilita ha di farle farealmeno altri 20 000 chilometri prima che sia da buttare

2 Il modello assunto dal signor Jones e ragionevole

12 Sia X una variabile casuale binomiale di parametri n = 100 e p = 07

1 Tracciate la funzione di ripartizione di X2 Calcolate il primo quartile il quantile di ordine 09 e la mediana di X3 Calcolare la probabilita P(X le 60)4 Calcolare la probabilita P(X le 88)5 Trovare il piu piccolo valore x tale che P(X le x) ge 09

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 88 88

  • Lezione 1
    • Script in Python
    • Numpy
    • Esercizi
    • Pandas
    • Esercizi
      • Lezione 2
        • File csv
        • DataFrame
        • Accesso ai DataFrame
        • Frequenze
        • Esercizi
          • Lezione 3
            • Matplotlib
            • Grafici a Barre
            • Istogrammi
            • Cumulativa empirica
            • Boxplot
            • QQplot
            • Diagramma di Pareto
            • Esercizi
              • Lezione 4
                • Definizioni
                • Probabilitagrave condizionata
                • Indipendenza
                • Esercizi
                  • Lezione 5
                    • Variabili Aleatorie
                    • Funzione di Ripartizione
                    • Funzione di Densitagrave
                    • Valore Atteso
                    • Varianza
                    • Covarianza
                    • Esercizi
                      • Lezione 6
                        • Scipy - Variabili Discrete
                        • Scipy - Variabili continue
                        • Esercizi

Numpy

Il modulo numpy (httpwwwnumpyorg) mette a disposizione unastruttura dati creata appositamente per il calcolo scientifico

ArrayUn array e un contenitore di dati omogenei cioe dello stesso tipo Se sitenta di costruire un array con dati di tipo diverso questi vengonoldquotrasformatirdquo nel piu piccolo tipo adatto a contenerli tutti

gtgtgt import numpy as np

gtgtgt nparray( [146810] )

array([ 1 4 68 10 ])

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 12 88

Creazione di Array - 1

numpyarange(x) restituisce un array contenente gli interi da 0 a x minus 1

gtgtgt numpyarange(5)

array([0 1 2 3 4])

numpyarange(start stop step) permette di scegliere gli estremi dellasequenza contenuta nellrsquoarray e il passo tra un numero ed il successivo

gtgtgt numpyarange(262)

array([2 4])

gtgtgt numpyarange(2-3-1)

array([ 2 1 0 -1 -2])

numpylinspace(start stop n) permette di scegliere gli estremi e quantinumeri devono comparire allrsquointerno della sequenza

gtgtgt numpylinspace(014)

array)[0 03333333 066666667 1])

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 13 88

Creazione di Array - 2

numpyones(rdquotuplardquo) restuituisce un array di 1 date le dimensionispecificate nella tupla come argomento

gtgtgt numpyones( (15) )

array([1 1 1 1 1])

numpyzeros(rdquotuplardquo) restuituisce un array di 0 date le dimensionispecificate nella tupla come argomento

gtgtgt numpyzeros( (25) )

array([[0 0 0 0 0] [0 0 0

0 0]])

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 14 88

Operazioni con Array

Applicando un operazione logica ad un array si ottiene come risposta unarray di tipo booleano contenente nella posizione i-esima il risultatodellrsquoespressione logica valutata per lrsquoelemento i-esimo dellrsquoarray

gtgtgt numpyarange(5) gt 3

array([False False False False True] dtype=bool)

Le operazioni + - tra due array vengono eseguite elemento perelemento (gli array devono avere le stesse dimensioni)

gtgtgt numpyarange(5) + numpylinspace(025)

array([ 0 15 3 45 6 ])

gtgtgt numpyarange(5) 2

array([0 2 4 6 8])

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 15 88

Selezioni di un sottoinsieme di elementi

Ad un array e possibile accedere in tutti i modi con cui e possibile accederead una lista ad esempio

Ottenere una tupla di elementi

gtgtgt a[2] a[-1] a[36]

(2 9 array([3 4 5]))

Slicing [startstopstep]

gtgtgt a[293]

array([2 5 8])

gtgtgt a[2]

array([0 2 4 6 8])

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 16 88

Accesso con maschere booleane

Specificando tra [ ] un array di tipo booleano selezioniamo dallrsquoarray glielementi la cui posizione corrisponde ad un True nellrsquoarray di tipobooleano (che prende il nome di maschera)

gtgtgt a = numpyarange(10)

gtgtgt mask = a2 == 0

gtgtgt mask

array([ True False True False True False True

False True False] dtype=bool)

gtgtgt a[mask]

array([0 2 4 6 8])

o in maniera piu compatta

gtgtgt a[a2 == 0]

array([0 2 4 6 8])

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 17 88

Esercizi

1 Lanciare uno script che stampi il vostro nome e cognome

2 Creare un array i cui elementi siano gli interi che compongono ilvostro numero di matricola

3 Sia X la lunghezza dellrsquoarray del punto precedente Creare un array diX elementi equispaziati lrsquouno dallrsquoaltro di 15

4 Creare un array di X elementi equispaziati nellrsquointervallo tra 1 e 3

5 Ottenere gli array dati dalla somma tra lrsquoarray del punto 2 e quello delpunto 3 e quello dato dalla moltiplicazione tra punto 3 e punto 4

6 Ottenere per ciascuno dei due array del punto 5 un array mascherache in corrispondenza dei numeri divisibili per 3 abbia True Falsealtrimenti

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 18 88

Pandas - Series (1)

Pandas (httpspandaspydataorg) e una libreria Python chefornisce strutture dati e strumenti relativi esclusivamente allrsquoanalisi deidatiUna Series e un array monodimensionale ed etichettato Rappresenta unaserie di osservazioni di un certo carattere fatto su un insieme di individui

a 00

b 10

c 20

d 30

e 40

f 50

g 60

h 70

Name serie di esempio dtype float64

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 19 88

Pandas - Series (2)

pandasSeries (data index dtype name )

data contiene i dati che si vuole inserire nella serie

index della stessa lunghezza di data contiene le etichette

dtype permette di specificare il tipo che i dati devono assumere

name permette di dare un nome alla Series

gtgtgt import pandas as pd

gtgtgt import numpy as np

gtgtgt oss = nparange(8)

gtgtgt etic = [rsquoarsquorsquobrsquorsquocrsquorsquodrsquorsquoersquorsquofrsquorsquogrsquorsquohrsquo]

gtgtgt pdSeries(data=oss index=etic name=rsquoserie di esempiorsquo

dtype=float)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 20 88

Accesso ai dati di una Series

Specificando un valore (o una lista di valori) per lrsquoetichetta

gtgtgt sloc[[rsquohrsquorsquoarsquo]]

h 70

a 00

Specificando un valore (o una lista di valori) per la posizione

gtgtgt s[[56]]

f 50

g 60

Usando lo slicing (come per gli array numpy) per la posizione

gtgtgt s[36]

d 30

e 40

f 50

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 21 88

Pandas Series - Utils

Seriesmin() Seriesmax() restituiscono rispettivamente il minimoed massimo tra i valori della Series

Seriessum() restituisce la somma dei valori della Series

Seriessort values() restituisce una copia della Series ordinata pervalore

Seriessort index() restituisce una copia della Series ordinata peretichette

Seriessample(n) restituisce una Series di n elementi sceltiuniformemente a caso allrsquointerno di quelli della Series

Seriesappend([s1s2]) concatena una o piu Series a quella dipartenza

Seriescount() restituisce il numero dei valori della Series che nonsiano il valore NaN

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 22 88

Il valore NaN

Nan un oggetto del modulo numpy che puo rappresentare in una Seriesun dato di cui non e stato possibile fare unrsquoosservazioneOperazioni con un valore Nan hanno come risultato il valore Nan

gtgtgt oss = range(5)

gtgtgt ossappend(None)

gtgtgt pandasSeries(oss)

0 00

1 10

2 20

3 30

4 40

5 NaN

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 23 88

Esercizi

Creare la Series gol in modo che le etichette siano numeri dallrsquo1 al 23 Idati raccolti siano numeri interi tra 0 e 30 scelti casualmente (scarica ilnotebook) La Series rappresenta i gol segnati da ciascun giocatore diuna societa calcistica nella stagione appena passata Lrsquoetichettacorrisponde al numero di maglia del giocatore Ottenere

1 I gol segnati dal capocannoniere2 Chi non ha mai fatto gol durante lrsquoanno3 La statistica del punto 2 per i soli titolari (numeri dallrsquo1 allrsquo11) e per

le sole riserve (dal 12 al 23)4 La statistica del punto 2 per i soli attaccanti (numeri dalrsquo9 allrsquo11)5 I gol segnati dai giocatori coi numeri di maglia 5 9 10 14 (somma)6 Chi ha segnato piu di 10 gol e chi ha segnato esattamente 10 gol7 Una copia della Series ordinata secondo i gol effettuati8 Una stampa dei primi 5 cannonieri e degli ultimi 59 Una copia della Series ordinata in modo discendente secondo il

numero di maglia

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 24 88

File csv

Il formato csv (comma-separated value) e un formato utilizzato perrappresentare una tabella di dati e favorirne lrsquoimportazione e lrsquoesportazioneUn file csv e scritto nella seguente forma

titolopaeseannoduratagenerevoto

Guerre StellariUSA1977121Fantascienza4

Lrsquoimpero colpisce ancoraUSA1980124Fantascienza4

Il ritorno dello JediUSA1983Fantascienza35

Profondo RossoITA1975Horror35

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 25 88

Leggere csv

La funzione read csv() di Pandas puo essere utilizzata per leggere unfile di formato csv Tra i vari parametri che passiamo in input unoparticolarmente importante e sep che indica il carattere utilizzato perseparare le colonne (default e rsquorsquo)

gtgtgt df film = pdread csv(rsquofilmcsvrsquo)

gtgtgt df film

titolo paese anno durata genere voto

Il padrino USA 19720 1750 Drammatico 45

Pulp Fiction USA 19940 1540 Drammatico 40

Fight Club USA 19990 1390 Thriller 40

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 26 88

DataFrame

In Pandas un DataFrame e una struttura dati tabulare con assi etichettatile cui colonne possono contenere dati eterogenei da colonna a colonna

gtgtgt dataframe

esempio

Nome Cognome Eta Citta

Tommaso Rossi 300 Milano

Sergio Bianchi 340 Roma

Pasquale Verdi 290 Palermo

Antonio Gialli 300 Roma

Il DataFrame puo essere visto come un insieme di serie aventi lo stessoindice accostate una allrsquoaltra

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 27 88

Accesso colonne DataFrame - 1

Per conoscere le colonne di un DataFrame possiamo invocare il comandodfcolumns dove df e la variabile in cui abbiamo instanziato ilDataFramePer accedere ad una colonna dobbiamo specificarne il nome nel seguentemodo

gtgtgt df film[rsquogenerersquo]

titolo

Il padrino Drammatico

Pulp Fiction Drammatico

Fight Club Thriller

Selezionando unrsquounica colonna in output viene restituita una Series

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 28 88

Accesso colonne DataFrame - 2

Possiamo accedere allo stesso tempo a piu colonne

gtgtgt df film[[rsquopaesersquorsquoannorsquo]]

titolo paese anno

Il padrino USA 19720

Pulp Fiction USA 19940

Fight Club USA 19990

Selezionando piu colonne in output viene restituito un DataFrame

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 29 88

Accesso righe DataFrame - 1

Per indice numerico

gtgtgt df film[1518]

titolo paese anno durata genere voto

Il padrino USA 19720 1750 Drammatico 45

Pulp Fiction USA 19940 1540 Drammatico 40

Fight Club USA 19990 1390 Thriller 40

Quasi Amici FRA 20110 1120 Commedia 35

Per valore dellrsquoindice (assumiamo che titolo sia lrsquoindice delDataFrame)

gtgtgt df film[rsquoIl padrinorsquorsquoFight Clubrsquo]

titolo paese anno durata genere voto

Il padrino USA 19720 1750 Drammatico 45

Pulp Fiction USA 19940 1540 Drammatico 40

Fight Club USA 19990 1390 Thriller 40

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 30 88

loc amp iloc

Cosı come per le Series anche con i DataFrame possiamo usare loc ediloc per lrsquoaccesso ai dati

loc[rsquonome indicersquo] permette lrsquoaccesso ad una riga o piu righetramite nome dellrsquoindice

iloc[rsquoposizionersquo] permette lrsquoaccesso ad una o piu righe tramitela loro posizione

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 31 88

Accesso tramite unrsquoespressione logica

gtgtgt df film[rsquoannorsquo gt 1998]

titolo

Il padrino False

Pulp Fiction False

Fight Club True

Quasi Amici True

gtgtgt df film[df film[rsquoannorsquo] gt 1998]

titolo paese anno durata genere voto

Fight Club USA 19990 1390 Thriller 40

Quasi Amici FRA 20110 1120 Commedia 35

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 32 88

Metodi dei DataFrame

La classe DataFrame ha diversi metodi Elenchiamo qui i piu importanti

DataFrameappend() permette di estendere il DataFrame

DataFramedrop duplicates() restituisce un DataFrame senza righeduplicate

DataFramedropna() Eliminare i valori Nan da un DataFrame

DataFramesort values() permette di ordinare il DataFrame

DataFramemax() DataFramemin() DataFramemean()DataFramemedian()

Per la completa documentazione si puo utilizzare il comandohelp(pdDataFrame) oppure andare al seguente linkhttpspandaspydataorgpandas-docsstablegenerated

pandasDataFramehtml

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 33 88

Frequenze

La frequenza assoluta indica il numero di volte che una dataosservazione occorre in un campione

La frequenza relativa e un valore tra 0 e 1 che permette di valutare inmaniera piu efficace la frequenza di un osservazione Si calcoladividendo la frequenza assoluta per il numero totale di casi

Per calcolare questa quantita in Pandas possiamo utilizzare la funzionevalue counts() che opera su una Series

In alternativa si puo utilizzare la funzione pdcrosstab che calcolaqueste frequenze in automatico restituendole in output in un DataFrame

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 34 88

Esercizi

Utilizzando il file dati-ospedalicsv dai csv del laboratorio

1 Leggere il file e visualizzarlo in un DataFrame

2 Calcolare le frequenze assolute e relative dellrsquoattributo Regioneusando crosstab

3 Ottenere la singola serie relativa allrsquoattributo Regione e calcolarne lafrequenza assoluta e relativa senza usare crosstab

4 Estrarre un sottodataframe contenente le colonne Nome (attributoDenominazione Str Pubblica New) e Numero di medici (attributoMedici SSN) degli ospedali aventi meno di 200 medici

5 Visualizzare il nome degli ospedali della regione Lombardia

6 Calcolare il numero medio di ingegneri (Ingegneri SSN) presenti negliospedali campani

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 35 88

Esercizi

7 Calcolare la varianza del numero di assistenti sociali (Assistenti socialiSSN) negli ospedali con piu di 400 medici

8 Qual e lrsquoospedale con meno medici

9 Visualizzare in ordine alfabetico il nome dei primi 10 ospedali pernumero di medici

10 Visualizzare il numero degli ospedali che hanno dichiarato il numerodi odontoiatri (per cui il valore e diverso da NaN) (OdontoiatriUniversitari)

11 Visualizzare il numero degli ospedali che hanno dichiarato il numerodi odontoiatri (Odontoiatri Universitari) e per cui questo numero emaggiore di 0

12 Calcolare le frequenze assolute per lrsquoattributo Odontoiatri SSNTrasformare questo risultato in frequenze relative

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 36 88

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) SAD 20182019 January 12 2019 37 88

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) SAD 20182019 January 12 2019 38 88

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) SAD 20182019 January 12 2019 39 88

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) SAD 20182019 January 12 2019 40 88

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) SAD 20182019 January 12 2019 41 88

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) SAD 20182019 January 12 2019 42 88

Grafici con le Series

In generale possiamo tracciare diversi tipi di grafici con le Series

rsquolinersquo line plot (default)

rsquobarrsquo vertical bar plot

rsquobarhrsquo horizontal bar plot

rsquohistrsquo histogram

rsquoboxrsquo boxplot

rsquokdersquo Kernel Density Estimation plot

rsquodensityrsquo same as rsquokdersquo

rsquoarearsquo area plot

rsquopiersquo pie plot

Per saperne di piu consultare questo link

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 43 88

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) SAD 20182019 January 12 2019 44 88

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) SAD 20182019 January 12 2019 45 88

Boxplot

Rappresenta la distribuzione di un vettore di numeri cerchiando gli outlier

gtgtgt weight = heroes[rsquoWeightrsquo]

gtgtgt weightplotbox()

gtgtgt pltshow()

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 46 88

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) SAD 20182019 January 12 2019 47 88

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) SAD 20182019 January 12 2019 48 88

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) SAD 20182019 January 12 2019 49 88

Esercizi - 1

Utilizzando il file capellicsv dai csv del laboratorio

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) SAD 20182019 January 12 2019 50 88

Esercizi - 2

Utilizzando il file dati-ospedalicsv dai csv del laboratorio

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 e canipdf

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 51 88

Sample space

Un esperimento e qualsiasi processo che produce una realizzazione (oosservazione) Lrsquoinsieme di tutte le possibili realizzazioni di un esperimentoviene detto sample space ed indicato con S

lancio di 2 monete

S = (T T ) (T C) (C T ) (C C)

gara di 3 cavalli (ab c)

S = tutti i possibili ordinamenti di(ab c)= (ab c) (a cb) (c b a)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 52 88

Eventi

lancio di 2 monete

S = (T T ) (T C) (C T ) (C C)

A = 2 monete uguali

A = (T T ) (C C)

B = 2 monete diverse

B = Ac = (T C) (C T )

gara di 3 cavalli

A = cavallo a vincente

A = (ab c) (a c b)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 53 88

Probabilita - 1

Consideriamo un esperimento con sample space S Supponiamo che adogni evento A sia associato un numero chiamato probabilita di A edindicato con P(A) che soddisfa le seguenti proprieta

1 Per ogni evento A la probabilita di A e un numero tra 0 e 1

0 le P(A) le 1

2 La probabilita del sample space S e 1

P(S) = 1

3 La probabilita dellrsquounione di eventi disgiunti e uguale alla somma delleprobabilita di tali eventi

P(A cupB) = P(A) + P(B)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 54 88

Probabilita - 2

In generale 2 eventi potrebbero non essere disgiunti

P(A cupB) = P(A) + P(B) minus P(A capB)

Esempio un certo negozio accetta pagamenti o con carte di credito VISAo Mastercard

1 22 dei clienti ha Mastercard

2 58 dei clienti ha VISA

3 14 dei clienti ha entrambe

Qual e la probabilita che un cliente ha almeno una delle 2 carte

P(A) = 022 P(B) = 058

P(A cupB) = P(A) + P(B) minus P(A capB) = 022 + 058 minus 014 = 066

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 55 88

Probabilita condizionata - 1

Se alcune informazioni riguardo lrsquoesito di un esperimento sono disponibiliparliamo di probabilita condizionata

Esempio lancio di 2 dadi

S = (11) (12) (65) (66)

Probabilita che la somma sia 10 (evento B) sapendo che il primo dadomostra 4 (evento A)

(41) (42) (43) (44) (45) (46)

P(B ∣A) = 16

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 56 88

Probabilita condizionata - 2

In generale

P(B ∣A) = P(A capB)P(A)

Supponiamo lrsquoesito sia in A

Per essere anche in B deve essere in entrambi A e B cioe in A capB

Sapendo che A e gia accaduto il nostro nuovo sample space diventa A

la probabilita di A capB viene calcolata rispetto ad A

Nel caso dei dadi

P(B ∣A) = P((46))P((41) (42) (43) (44) (45) (46)) = 136

16= 1

6

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 57 88

Indipendenza

In generale sapere che A e accaduto modifica le chance che B accadaNel caso cio non avvenga cioe se P(B ∣A) = P(B) allora i 2 eventi sidicono indipendenti In questo caso sapere che A e accaduto nonaggiunge alcuna informazione

SiccomeP(A capB) = P(B ∣A)P(A)

Abbiamo che B e indipendente da A se

P(A capB) = P(B)P(A)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 58 88

Esercizi - 1

1 Svolgere gli esercizi di combinatoria

2 Si consideri il seguente esperimento casuale rdquosi lancia tre volte unamonetardquo Qual e lo spazio degli esiti di questo esperimento casualeSi scriva esplicitamente lrsquoevento rdquosi ottengono piu teste che crocirdquo

3 Si consideri il seguente esperimento casuale rdquoSi tirano due dadirdquo Siconsiderino gli eventi E = rdquola somma dei punteggi e disparirdquo F = rdquoilprimo dado realizza un 1rdquo e G = rdquola somma dei punteggi e 5rdquo Sidescrivano gli eventi E cap F E cup F F capG E cap F c e E cap F capG

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 59 88

Esercizi - 2

4 Si consideri il seguente esperimento casuale rdquoUn sistema e compostoda 4 componenti ciascuno dei quali o funziona oppure e guasto Siosserva lo stato dei componenti ottenendo un vettore (x1 x2 x3 x4)dove xi e 1 oppure 0 a seconda che il componente i-esimo funzionioppure nordquo

1 Da quanti elementi e formato lo spazio degli esiti2 Il sistema nel suo insieme funziona fintantoche entrambi i componenti

1 e 2 oppure entrambi i componenti 3 e 4 funzionano Specifica tuttigli esiti dellrsquoevento il rdquosistema funzionardquo

3 Sia E lrsquoevento rdquoi componenti 1 e 3 sono guastirdquo Quanti esiti contiene

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 60 88

Esercizi - 3

5 Si dimostri che in uno spazio degli esiti Ω dotato di una probabilita Pper ogni evento E F sub Ω vale la disuguaglianza seguente

P(E cap F ) ge P(E) + P(F ) minus 1

6 Un gruppo di 5 bambini e 10 bambine e in fila in ordine casuale nelsenso che tutte le 15 possibili permutazioni si suppongonoequiprobabili

1 Qual e la probabilita che il quarto della fila sia un bambino2 E il dodicesimo3 Qual e la probabilita che un determinato bambino occupi la terza

posizione

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 61 88

Esercizi - 4

7 In un comune vi sono 5 alberghi Se 3 persone devono scegliere unalbergo in cui pernottare qual e la probabilita che finiscano tutte inalberghi differenti Che cosa stiamo assumendo senza dirloesplicitamente

8 La media del salario annuale di un gruppo di 100 lavoratori impiegatinellrsquoamministrazione di una grande azienda e di 130000 dollari conuna deviazione standard di 20000 dollari Se si prende una persona acaso da questo gruppo cosa possiamo dire sulla probabilita che il suosalario sia

1 tra i 90000 e i 170000 dollari2 superiore a 150000 dollari

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 62 88

Esercizi - 5

9 In una certa regione vi sono due ditte che producono forni amicroonde Quelli della fabbrica A sono difettosi con probabilita 005mentre quelli della fabbrica B con probabilita 001 Supponi di averacquistato due apparecchi prodotti dalla stessa ditta che puo essere laA o la B con probabilita del 50 Se il primo microonde e difettosoqual e la probabilita condizionata che sia difettoso anche il secondo

10 Hai chiesto ad un vicino di innaffiare una piantina delicata mentre seiin vacanza Pensi che senza acqua la piantina muoia con probabilita08 mentre se innaffiata questa probabilita si ridurrebbe a 015 Latua fiducia che il vicino si ricordi di innaffiarla e del 90

1 Qual e la probabilita che la pianta sia ancora viva al tuo ritorno2 Se fosse morta quale sarebbe la probabilita che il vicino si sia

dimenticato di innaffiarla

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 63 88

Esercizi - 6

11 Una compagnia di assicurazioni classifica i suoi clienti in tre fascebasso rischio medio rischio alto rischio Le sue statistiche indicanoche le probabilita che un cliente delle tre fasce abbia un incidenteentro un periodo di un anno sono rispettivamente 005 015 e 030Se il 20 dei clienti sono a basso rischio il 50 a medio rischio e il30 ad alto rischio che percentuale dei clienti avra mediamenteincidenti in un lasso di un anno Se un cliente non ha avuto incidentinel 1987 qual e la probabilita che appartenga a ciascuna delle trefasce

12 Se un votante scelto a caso e favorevole ad una certa riforma conprobabilita di 07 qual e la probabilita che su 10 votanti esattamente7 siano favorevoli

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 64 88

Variabili aleatorie

Una variabile aleatoria (o anche variabile aleatoria) e una variabile chepuo assumere valori diversi in dipendenza da qualche fenomeno aleatorio

fenomeno lancio di 2 dadivariabile aleatoria somma dei 2 dadi

fenomeno 3 lanci di una monetavariabile aleatoria numero di rdquotesterdquo complessivo

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 65 88

Funzione di Ripartizione

Sia X una variabile aleatoria Si chiama funzione di ripartizione di X lafunzione F che associa ad ogni numero reale a la probabilita che X siaminore o uguale ad a cioe P(X le a) = FX (a)

Nel caso della moneta (fair) lanciata 3 volte (X indica il numero di testecomplessivo)

FX (a) =

⎧⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎨⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎩

0 if a lt 0

18 per 0 le a lt 1

18 + 38 = 48 per 1 le a lt 2

48 + 38 = 78 per 2 le a lt 3

88 = 1 per a ge 3

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 66 88

Funzione di densita o di massa

Sia X una variabile aleatoria Si chiama funzione di densita di X lafunzione f che associa ad ogni numero reale a la probabilita che X siauguale ad a indicata con fX (a)

Nel caso della moneta (fair) lanciata 3 volte (X indica il numero di testecomplessivo)

fX (a) =

⎧⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎨⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎩

18 per a = 0

38 per a = 1

38 per a = 2

18 per a = 3

0 altrimenti

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 67 88

Valore Atteso

Chiamato anche media (expectation in inglese) e appunto una mediapesata dei possibili valori di una variabile aleatoria Il peso dato a ciascunvalore e la probabilita data a quello specifico valore

E[X ] =sumi

aiP(X = ai)

Esempio dado truccato

valore 6 con probabilita 712

valori da 1 a 5 con probabilita 112

La variabile aleatoria X indica la faccia risultante dal lancio di un dado

E[X ] = 1

12lowast 1 + 1

12lowast 2 + 1

12lowast 3 + 1

12lowast 4 + 1

12lowast 5 + 7

12lowast 6 = 475

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 68 88

Valore Atteso - Proprieta

Sia X una variabile aleatoria con valore atteso E[X ] Se c e una costanteallora anche cX e X + c sono variabili casuali In particolare valgono leseguenti proprieta

E[cX ] = cE[X ]E[X + c] = E[X ] + c

Sia Y una variabile aleatoria Allora

E[X +Y ] = E[X ] +E[Y ]se e solo se X e Y sono independenti

E[XY ] = E[X ]E[Y ]

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 69 88

Varianza

Ersquo il valore atteso del quadrato della differenza tra la variabile aleatoria e ilsuo valore atteso

Var(X ) = E[(X minusE[X ])2] = E[X 2] minus (E[X ])2

La radice quadrata viene detta deviazione standard di X

Esempio dado truccato

E[X 2] = 1

12lowast 12 + 1

12lowast 22 + 1

12lowast 32 + 1

12lowast 42 + 1

12lowast 52 + 7

12lowast 62 ≃ 255

Var(X ) = E[X 2] minus (E[X ])2 ≃ 255 minus 4752 ≃ 3

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 70 88

Varianza - proprieta

Sia X una variabile aleatoria e c una costante Allora valgono le seguentiproprieta

1 Var(cX ) = c2Var(X )

2 Var(X + c) = Var(X )

NOTA

Var(X +X ) ne Var(X ) +Var(X )

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 71 88

Covarianza

Siano X Y due variabili aleatorie con valore atteso rispettivamenteE[X ] = microX e E[Y ] = microY La covarianza e definita come segue

Cov(X Y ) = E[(X minus microX )(Y minus microY )] = = E[XY ] minus microXmicroY

Proprieta

1 Cov(X Y ) = Cov(Y X )2 Cov(X X ) = Var(X )3 Sia a una costante allora

Cov(aX Y ) = aCov(X Y )

4 Sia Z una variabile aleatoria allora

Cov(X + Z Y ) = Cov(X Y ) + Cov(Z Y )

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 72 88

Esercizi - 1

1 Consideriamo una variabile aleatoria X che puo assumere i valori 12o 3 Se sappiamo che

fX (1) = 1

3 fX (2) = 3

7

1 Quanto vale fX (3)2 Disegnare il grafico di questa funzione di massa3 Disegnare il grafico della relativa funzione di ripartizione

2 Dimostrare che se X1 e X2 hanno la stessa distribuzione allora

Cov(X1 +X2X1 minusX2) = 0

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 73 88

Esercizi - 2

3 La funzione di ripartizione di X e definita come segue

FX (x) =

⎧⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎨⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎩

0 per x le 0

x2 per 0 le x lt 1

23 per 1 le x lt 2

1112 per 2 le x lt 3

1 per x ge 3

Se ne tracci il graficoQuanto vale P(X gt 12)Quanto vale P(2 le X le 4)Quanto vale P(X le 3)Quanto vale P(X = 1)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 74 88

Esercizi - 3

4 Un tipo di prodotti vengono classificati a seconda dei loro difetti edella fabbrica che li ha prodotti Sia X1 il numero (1 o 2) dellafabbrica e sia X2 il numero di difetti per pezzo (che possono essere da0 a 3) di un prodotto scelto a caso tra la totalita di quelli esistentiLa tabella seguente riporta la funzione di massa di probabilitacongiunta per queste due variabili aleatorie discrete Le righe siriferiscono alla variabile X1 mentre le colonne alla variabile X2

Trova le distribuzioni marginali di X1 e X2Calcola media e varianza di X2

0 1 2 31 18 116 316 182 116 116 18 14

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 75 88

Scipy

Scipy e un modulo che permette di utilizzare varie distribuzioni diprobabilita sia di tipo discreto che continuo

La sintassi generale e la seguente Scipystatsltnome distribuzionegt

rvs(size=z) restituisce un vettore di numeri casuali estrattisecondo la distribuzione di lunghezza z

pdf(x) restituisce il vettore della densita della distribuzionevalutata nei valori del vettore di input x (pmf per le discrete)

cdf(x) restituisce il vettore della funzione di ripartizione (ocumulativa) della distribuzione valutata nei valori del vettore di inputx

ppf(q) restituisce il vettore dei quantili della distribuzione valutatanei valori del vettore di input q

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 76 88

Variabili aleatorie discrete Binomiale

gtgtgt from scipystats import binom

gtgtgt rv = binom(n p)

rvrvs(x) restituisce un vettore di x numeri estratti secondo unadistribuzione Binomiale di parametri n p

rvpmf(x) restituisce la probabilita di ottenere esattamente x

successi in un esperimento dicotomico (01) ripetuto n volte con unaprobabilita di successo p (x puo essere un vettore)

rvcdf(q) restituisce il valore della funzione di ripartizione in q (qpuo essere un vettore)

rvppf(p) restituisce il valore del quantile di ordine p

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 77 88

Variabili aleatorie discrete Ipergeometrica

Supponiamo di avere M = 20 animali di cui n = 7 cani Se vogliamosapere la probabilita di trovare un dato numero di cani se scegliamoN = 12 dei 20 animali in maniera casuale possiamo usare una distribuzioneipergeometrica in questo modo

gtgtgt from scipystats import hypergeom

gtgtgt [M n N] = [20 7 12]

gtgtgt rv = hypergeom(M n N)

rvpmf(x) restituisce la probabilita di estrarre esattamente x cani

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 78 88

Variabili aleatorie discrete Geometrica

gtgtgt from scipystats import geom

gtgtgt rv = geom(p)

rvpmf(x) restituisce la probabilita di avere un successo dopoesattamente x insuccessi in una successione di esperimenti dicotomici(esito 01) con una probabilita di successo p (x puo essere un vettore)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 79 88

Variabili aleatorie discrete Poisson

La distribuzione di Poisson viene usata spesso come modello per il numerodi volte per cui un evento avviene in un dato intervallo di tempo (ospazio) Ad esempio si puo utilizzare per misurare il numero di chiamatericevute da un call center in una mattinata

gtgtgt from scipystats import poisson

gtgtgt mu = 2

gtgtgt rv = poisson(mu)

rvpmf(x) restituisce il seguente valore

f (x) = exp(minusmicro)microx

x

In questo caso x rappresenta il numero di eventi per cui si vuole calcolarela probabilita sapendo che in media ne accadono micro

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 80 88

Variabili aleatorie continue Uniforme

In Scipy la funzione uniforme e soltanto continua Questo significa chenella generazione di numeri casuali otterro dati di tipo float Possiamotuttavia simulare una variabile discreta estraendo la parte intera delrisultato ottenuto

gtgtgt from scipystats import uniform

gtgtgt rv = uniform()

Il comando uniform() crea una distribuzione uniforme nellrsquointervallo[01] Possiamo creare una distribuzione uniforme qualsiasi usandouniform(x y - x) per lrsquointervallo [x y]

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 81 88

Variabili aleatorie continue

norm(mu sigma) variabile Gaussiana (o Normale) di media micro edeviazione standard σ

expon(scale = 1 lambda) variabile Esponenziale di parametroλ

Altre distribuzioni (con relativa documentazione) disponibili suhttpsdocsscipyorgdocscipyreferencestatshtml

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 82 88

Esercizi - 1

1 Unrsquourna contiene 10 palline di cui 4 bianche e 6 nere Si eseguono 5estrazioni con reimmissione

1 Tracciare grafico della funzione massa di probabilita della variabilecasuale X = rdquonumero di palline bianche estratterdquo

2 Calcolare la probabilita di estrarre 2 palline bianche3 Calcolare la probabilita di estrarre al piu 2 palline bianche4 Calcolare la probabilita di estrarre almeno 2 palline bianche5 Qual e il numero minimo x tale che la probabilita di estrarre al piu x

palline bianche sia almeno 08

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 83 88

Esercizi - 2

2 Si eseguono 10 estrazioni senza reimmissione da unrsquourna

1 Tracciare il grafico della funzione massa di probabilita della variabilecasuale X = rdquonumero di palline bianche estratterdquo nei seguenti casi

1 lrsquourna contiene 100 palline di cui 20 bianche e le restanti nere2 lrsquourna contiene 100 palline di cui 2 bianche e le restanti nere

2 Tracciare il grafico della funzione massa di probabilita della variabilecasuale X nel caso dellrsquourna 1 se si eseguono 25 estrazioni

3 Consideriamo lrsquourna 1 e N = 10 estrazioni Si aumenti il numero totaleM di palline nellrsquourna mantenendo uguale a 02 la frazione di pallinebianche Per ciascun valore di M confrontare graficamente ladistribuzione di probabilita del numero di palline bianche estratte nelcaso di estrazioni con e senza reimmissione Provare con 20 40 e 200palline bianche

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 84 88

Esercizi - 3

3 Calcolare la probabilita di ottenere piu teste che croci lanciando 7volte una moneta truccata con probabilita di avere croce pari a 045

4 Calcolare la probabilita di avere almeno 3 sei lanciando 5 dadi a 12facce

5 Calcolare la probabilita di estrarre 20 euro da un sacco contenente 47monete da 1 centesimo e 53 da 2 euro estraendo (uniformemente) acaso 10 monete senza reinserirle

6 Un grammo di uranio emette mediamente 2152 particelle α ognimillisecondo Qual e con buona approssimazione la probabilita che ungrammo di uranio emetta al piu 2000 particelle α in un millisecondo

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 85 88

Esercizi - 4

7 Un uomo si risveglia in mezzo al deserto senza acqua Dopo ogniminuto ha una probabilita del 3 di perdere conoscenza per via dellecondizioni estreme Calcolare la probabilita che lrsquouomo perdaconoscenza dopo almeno due ore e la probabilita che lrsquouomo perdaconoscenza dopo esattamente un quarto drsquoora

8 Sia X una variabile aleatoria normale di parametri micro = 10 e σ = 36Calcola

1 P(X gt 5)2 P(4 le X le 16)3 P(X le 8)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 86 88

Esercizi - 5

9 Il numero di errori tipografici per pagina di una certa rivista segue unadistribuzione di Poisson Sapendo che mediamente sono presenti 02errori per pagina determinare la probabilita che una pagina contenga

1 nessun refuso2 piu refusi

10 Arrivi alla fermata dellrsquoautobus alle 1000 e sei certo che ne passerauno in un momento distribuito uniformemente tra le 1000 e le 1030

1 Qual e la probabilita che tu debba aspettare piu di 10 minuti2 Se alle 1015 lrsquoautobus non e ancora arrivato qual e la probabilita che

tu debba aspettare almeno altri 10 minuti

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 87 88

Esercizi - 6

11 Il signor Jones e convinto che il tempo di vita di una automobile (inmigliaia di chilometri percorse) sia una variabile aleatoria esponenzialedi parametro 120 Il signor Smith ha una macchina usata da vendereche ha percorso circa 10 000 chilometri

1 Se il signor Jones decide di comprarla che probabilita ha di farle farealmeno altri 20 000 chilometri prima che sia da buttare

2 Il modello assunto dal signor Jones e ragionevole

12 Sia X una variabile casuale binomiale di parametri n = 100 e p = 07

1 Tracciate la funzione di ripartizione di X2 Calcolate il primo quartile il quantile di ordine 09 e la mediana di X3 Calcolare la probabilita P(X le 60)4 Calcolare la probabilita P(X le 88)5 Trovare il piu piccolo valore x tale che P(X le x) ge 09

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 88 88

  • Lezione 1
    • Script in Python
    • Numpy
    • Esercizi
    • Pandas
    • Esercizi
      • Lezione 2
        • File csv
        • DataFrame
        • Accesso ai DataFrame
        • Frequenze
        • Esercizi
          • Lezione 3
            • Matplotlib
            • Grafici a Barre
            • Istogrammi
            • Cumulativa empirica
            • Boxplot
            • QQplot
            • Diagramma di Pareto
            • Esercizi
              • Lezione 4
                • Definizioni
                • Probabilitagrave condizionata
                • Indipendenza
                • Esercizi
                  • Lezione 5
                    • Variabili Aleatorie
                    • Funzione di Ripartizione
                    • Funzione di Densitagrave
                    • Valore Atteso
                    • Varianza
                    • Covarianza
                    • Esercizi
                      • Lezione 6
                        • Scipy - Variabili Discrete
                        • Scipy - Variabili continue
                        • Esercizi

Creazione di Array - 1

numpyarange(x) restituisce un array contenente gli interi da 0 a x minus 1

gtgtgt numpyarange(5)

array([0 1 2 3 4])

numpyarange(start stop step) permette di scegliere gli estremi dellasequenza contenuta nellrsquoarray e il passo tra un numero ed il successivo

gtgtgt numpyarange(262)

array([2 4])

gtgtgt numpyarange(2-3-1)

array([ 2 1 0 -1 -2])

numpylinspace(start stop n) permette di scegliere gli estremi e quantinumeri devono comparire allrsquointerno della sequenza

gtgtgt numpylinspace(014)

array)[0 03333333 066666667 1])

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 13 88

Creazione di Array - 2

numpyones(rdquotuplardquo) restuituisce un array di 1 date le dimensionispecificate nella tupla come argomento

gtgtgt numpyones( (15) )

array([1 1 1 1 1])

numpyzeros(rdquotuplardquo) restuituisce un array di 0 date le dimensionispecificate nella tupla come argomento

gtgtgt numpyzeros( (25) )

array([[0 0 0 0 0] [0 0 0

0 0]])

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 14 88

Operazioni con Array

Applicando un operazione logica ad un array si ottiene come risposta unarray di tipo booleano contenente nella posizione i-esima il risultatodellrsquoespressione logica valutata per lrsquoelemento i-esimo dellrsquoarray

gtgtgt numpyarange(5) gt 3

array([False False False False True] dtype=bool)

Le operazioni + - tra due array vengono eseguite elemento perelemento (gli array devono avere le stesse dimensioni)

gtgtgt numpyarange(5) + numpylinspace(025)

array([ 0 15 3 45 6 ])

gtgtgt numpyarange(5) 2

array([0 2 4 6 8])

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 15 88

Selezioni di un sottoinsieme di elementi

Ad un array e possibile accedere in tutti i modi con cui e possibile accederead una lista ad esempio

Ottenere una tupla di elementi

gtgtgt a[2] a[-1] a[36]

(2 9 array([3 4 5]))

Slicing [startstopstep]

gtgtgt a[293]

array([2 5 8])

gtgtgt a[2]

array([0 2 4 6 8])

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 16 88

Accesso con maschere booleane

Specificando tra [ ] un array di tipo booleano selezioniamo dallrsquoarray glielementi la cui posizione corrisponde ad un True nellrsquoarray di tipobooleano (che prende il nome di maschera)

gtgtgt a = numpyarange(10)

gtgtgt mask = a2 == 0

gtgtgt mask

array([ True False True False True False True

False True False] dtype=bool)

gtgtgt a[mask]

array([0 2 4 6 8])

o in maniera piu compatta

gtgtgt a[a2 == 0]

array([0 2 4 6 8])

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 17 88

Esercizi

1 Lanciare uno script che stampi il vostro nome e cognome

2 Creare un array i cui elementi siano gli interi che compongono ilvostro numero di matricola

3 Sia X la lunghezza dellrsquoarray del punto precedente Creare un array diX elementi equispaziati lrsquouno dallrsquoaltro di 15

4 Creare un array di X elementi equispaziati nellrsquointervallo tra 1 e 3

5 Ottenere gli array dati dalla somma tra lrsquoarray del punto 2 e quello delpunto 3 e quello dato dalla moltiplicazione tra punto 3 e punto 4

6 Ottenere per ciascuno dei due array del punto 5 un array mascherache in corrispondenza dei numeri divisibili per 3 abbia True Falsealtrimenti

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 18 88

Pandas - Series (1)

Pandas (httpspandaspydataorg) e una libreria Python chefornisce strutture dati e strumenti relativi esclusivamente allrsquoanalisi deidatiUna Series e un array monodimensionale ed etichettato Rappresenta unaserie di osservazioni di un certo carattere fatto su un insieme di individui

a 00

b 10

c 20

d 30

e 40

f 50

g 60

h 70

Name serie di esempio dtype float64

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 19 88

Pandas - Series (2)

pandasSeries (data index dtype name )

data contiene i dati che si vuole inserire nella serie

index della stessa lunghezza di data contiene le etichette

dtype permette di specificare il tipo che i dati devono assumere

name permette di dare un nome alla Series

gtgtgt import pandas as pd

gtgtgt import numpy as np

gtgtgt oss = nparange(8)

gtgtgt etic = [rsquoarsquorsquobrsquorsquocrsquorsquodrsquorsquoersquorsquofrsquorsquogrsquorsquohrsquo]

gtgtgt pdSeries(data=oss index=etic name=rsquoserie di esempiorsquo

dtype=float)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 20 88

Accesso ai dati di una Series

Specificando un valore (o una lista di valori) per lrsquoetichetta

gtgtgt sloc[[rsquohrsquorsquoarsquo]]

h 70

a 00

Specificando un valore (o una lista di valori) per la posizione

gtgtgt s[[56]]

f 50

g 60

Usando lo slicing (come per gli array numpy) per la posizione

gtgtgt s[36]

d 30

e 40

f 50

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 21 88

Pandas Series - Utils

Seriesmin() Seriesmax() restituiscono rispettivamente il minimoed massimo tra i valori della Series

Seriessum() restituisce la somma dei valori della Series

Seriessort values() restituisce una copia della Series ordinata pervalore

Seriessort index() restituisce una copia della Series ordinata peretichette

Seriessample(n) restituisce una Series di n elementi sceltiuniformemente a caso allrsquointerno di quelli della Series

Seriesappend([s1s2]) concatena una o piu Series a quella dipartenza

Seriescount() restituisce il numero dei valori della Series che nonsiano il valore NaN

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 22 88

Il valore NaN

Nan un oggetto del modulo numpy che puo rappresentare in una Seriesun dato di cui non e stato possibile fare unrsquoosservazioneOperazioni con un valore Nan hanno come risultato il valore Nan

gtgtgt oss = range(5)

gtgtgt ossappend(None)

gtgtgt pandasSeries(oss)

0 00

1 10

2 20

3 30

4 40

5 NaN

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 23 88

Esercizi

Creare la Series gol in modo che le etichette siano numeri dallrsquo1 al 23 Idati raccolti siano numeri interi tra 0 e 30 scelti casualmente (scarica ilnotebook) La Series rappresenta i gol segnati da ciascun giocatore diuna societa calcistica nella stagione appena passata Lrsquoetichettacorrisponde al numero di maglia del giocatore Ottenere

1 I gol segnati dal capocannoniere2 Chi non ha mai fatto gol durante lrsquoanno3 La statistica del punto 2 per i soli titolari (numeri dallrsquo1 allrsquo11) e per

le sole riserve (dal 12 al 23)4 La statistica del punto 2 per i soli attaccanti (numeri dalrsquo9 allrsquo11)5 I gol segnati dai giocatori coi numeri di maglia 5 9 10 14 (somma)6 Chi ha segnato piu di 10 gol e chi ha segnato esattamente 10 gol7 Una copia della Series ordinata secondo i gol effettuati8 Una stampa dei primi 5 cannonieri e degli ultimi 59 Una copia della Series ordinata in modo discendente secondo il

numero di maglia

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 24 88

File csv

Il formato csv (comma-separated value) e un formato utilizzato perrappresentare una tabella di dati e favorirne lrsquoimportazione e lrsquoesportazioneUn file csv e scritto nella seguente forma

titolopaeseannoduratagenerevoto

Guerre StellariUSA1977121Fantascienza4

Lrsquoimpero colpisce ancoraUSA1980124Fantascienza4

Il ritorno dello JediUSA1983Fantascienza35

Profondo RossoITA1975Horror35

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 25 88

Leggere csv

La funzione read csv() di Pandas puo essere utilizzata per leggere unfile di formato csv Tra i vari parametri che passiamo in input unoparticolarmente importante e sep che indica il carattere utilizzato perseparare le colonne (default e rsquorsquo)

gtgtgt df film = pdread csv(rsquofilmcsvrsquo)

gtgtgt df film

titolo paese anno durata genere voto

Il padrino USA 19720 1750 Drammatico 45

Pulp Fiction USA 19940 1540 Drammatico 40

Fight Club USA 19990 1390 Thriller 40

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 26 88

DataFrame

In Pandas un DataFrame e una struttura dati tabulare con assi etichettatile cui colonne possono contenere dati eterogenei da colonna a colonna

gtgtgt dataframe

esempio

Nome Cognome Eta Citta

Tommaso Rossi 300 Milano

Sergio Bianchi 340 Roma

Pasquale Verdi 290 Palermo

Antonio Gialli 300 Roma

Il DataFrame puo essere visto come un insieme di serie aventi lo stessoindice accostate una allrsquoaltra

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 27 88

Accesso colonne DataFrame - 1

Per conoscere le colonne di un DataFrame possiamo invocare il comandodfcolumns dove df e la variabile in cui abbiamo instanziato ilDataFramePer accedere ad una colonna dobbiamo specificarne il nome nel seguentemodo

gtgtgt df film[rsquogenerersquo]

titolo

Il padrino Drammatico

Pulp Fiction Drammatico

Fight Club Thriller

Selezionando unrsquounica colonna in output viene restituita una Series

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 28 88

Accesso colonne DataFrame - 2

Possiamo accedere allo stesso tempo a piu colonne

gtgtgt df film[[rsquopaesersquorsquoannorsquo]]

titolo paese anno

Il padrino USA 19720

Pulp Fiction USA 19940

Fight Club USA 19990

Selezionando piu colonne in output viene restituito un DataFrame

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 29 88

Accesso righe DataFrame - 1

Per indice numerico

gtgtgt df film[1518]

titolo paese anno durata genere voto

Il padrino USA 19720 1750 Drammatico 45

Pulp Fiction USA 19940 1540 Drammatico 40

Fight Club USA 19990 1390 Thriller 40

Quasi Amici FRA 20110 1120 Commedia 35

Per valore dellrsquoindice (assumiamo che titolo sia lrsquoindice delDataFrame)

gtgtgt df film[rsquoIl padrinorsquorsquoFight Clubrsquo]

titolo paese anno durata genere voto

Il padrino USA 19720 1750 Drammatico 45

Pulp Fiction USA 19940 1540 Drammatico 40

Fight Club USA 19990 1390 Thriller 40

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 30 88

loc amp iloc

Cosı come per le Series anche con i DataFrame possiamo usare loc ediloc per lrsquoaccesso ai dati

loc[rsquonome indicersquo] permette lrsquoaccesso ad una riga o piu righetramite nome dellrsquoindice

iloc[rsquoposizionersquo] permette lrsquoaccesso ad una o piu righe tramitela loro posizione

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 31 88

Accesso tramite unrsquoespressione logica

gtgtgt df film[rsquoannorsquo gt 1998]

titolo

Il padrino False

Pulp Fiction False

Fight Club True

Quasi Amici True

gtgtgt df film[df film[rsquoannorsquo] gt 1998]

titolo paese anno durata genere voto

Fight Club USA 19990 1390 Thriller 40

Quasi Amici FRA 20110 1120 Commedia 35

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 32 88

Metodi dei DataFrame

La classe DataFrame ha diversi metodi Elenchiamo qui i piu importanti

DataFrameappend() permette di estendere il DataFrame

DataFramedrop duplicates() restituisce un DataFrame senza righeduplicate

DataFramedropna() Eliminare i valori Nan da un DataFrame

DataFramesort values() permette di ordinare il DataFrame

DataFramemax() DataFramemin() DataFramemean()DataFramemedian()

Per la completa documentazione si puo utilizzare il comandohelp(pdDataFrame) oppure andare al seguente linkhttpspandaspydataorgpandas-docsstablegenerated

pandasDataFramehtml

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 33 88

Frequenze

La frequenza assoluta indica il numero di volte che una dataosservazione occorre in un campione

La frequenza relativa e un valore tra 0 e 1 che permette di valutare inmaniera piu efficace la frequenza di un osservazione Si calcoladividendo la frequenza assoluta per il numero totale di casi

Per calcolare questa quantita in Pandas possiamo utilizzare la funzionevalue counts() che opera su una Series

In alternativa si puo utilizzare la funzione pdcrosstab che calcolaqueste frequenze in automatico restituendole in output in un DataFrame

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 34 88

Esercizi

Utilizzando il file dati-ospedalicsv dai csv del laboratorio

1 Leggere il file e visualizzarlo in un DataFrame

2 Calcolare le frequenze assolute e relative dellrsquoattributo Regioneusando crosstab

3 Ottenere la singola serie relativa allrsquoattributo Regione e calcolarne lafrequenza assoluta e relativa senza usare crosstab

4 Estrarre un sottodataframe contenente le colonne Nome (attributoDenominazione Str Pubblica New) e Numero di medici (attributoMedici SSN) degli ospedali aventi meno di 200 medici

5 Visualizzare il nome degli ospedali della regione Lombardia

6 Calcolare il numero medio di ingegneri (Ingegneri SSN) presenti negliospedali campani

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 35 88

Esercizi

7 Calcolare la varianza del numero di assistenti sociali (Assistenti socialiSSN) negli ospedali con piu di 400 medici

8 Qual e lrsquoospedale con meno medici

9 Visualizzare in ordine alfabetico il nome dei primi 10 ospedali pernumero di medici

10 Visualizzare il numero degli ospedali che hanno dichiarato il numerodi odontoiatri (per cui il valore e diverso da NaN) (OdontoiatriUniversitari)

11 Visualizzare il numero degli ospedali che hanno dichiarato il numerodi odontoiatri (Odontoiatri Universitari) e per cui questo numero emaggiore di 0

12 Calcolare le frequenze assolute per lrsquoattributo Odontoiatri SSNTrasformare questo risultato in frequenze relative

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 36 88

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) SAD 20182019 January 12 2019 37 88

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) SAD 20182019 January 12 2019 38 88

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) SAD 20182019 January 12 2019 39 88

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) SAD 20182019 January 12 2019 40 88

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) SAD 20182019 January 12 2019 41 88

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) SAD 20182019 January 12 2019 42 88

Grafici con le Series

In generale possiamo tracciare diversi tipi di grafici con le Series

rsquolinersquo line plot (default)

rsquobarrsquo vertical bar plot

rsquobarhrsquo horizontal bar plot

rsquohistrsquo histogram

rsquoboxrsquo boxplot

rsquokdersquo Kernel Density Estimation plot

rsquodensityrsquo same as rsquokdersquo

rsquoarearsquo area plot

rsquopiersquo pie plot

Per saperne di piu consultare questo link

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 43 88

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) SAD 20182019 January 12 2019 44 88

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) SAD 20182019 January 12 2019 45 88

Boxplot

Rappresenta la distribuzione di un vettore di numeri cerchiando gli outlier

gtgtgt weight = heroes[rsquoWeightrsquo]

gtgtgt weightplotbox()

gtgtgt pltshow()

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 46 88

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) SAD 20182019 January 12 2019 47 88

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) SAD 20182019 January 12 2019 48 88

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) SAD 20182019 January 12 2019 49 88

Esercizi - 1

Utilizzando il file capellicsv dai csv del laboratorio

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) SAD 20182019 January 12 2019 50 88

Esercizi - 2

Utilizzando il file dati-ospedalicsv dai csv del laboratorio

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 e canipdf

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 51 88

Sample space

Un esperimento e qualsiasi processo che produce una realizzazione (oosservazione) Lrsquoinsieme di tutte le possibili realizzazioni di un esperimentoviene detto sample space ed indicato con S

lancio di 2 monete

S = (T T ) (T C) (C T ) (C C)

gara di 3 cavalli (ab c)

S = tutti i possibili ordinamenti di(ab c)= (ab c) (a cb) (c b a)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 52 88

Eventi

lancio di 2 monete

S = (T T ) (T C) (C T ) (C C)

A = 2 monete uguali

A = (T T ) (C C)

B = 2 monete diverse

B = Ac = (T C) (C T )

gara di 3 cavalli

A = cavallo a vincente

A = (ab c) (a c b)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 53 88

Probabilita - 1

Consideriamo un esperimento con sample space S Supponiamo che adogni evento A sia associato un numero chiamato probabilita di A edindicato con P(A) che soddisfa le seguenti proprieta

1 Per ogni evento A la probabilita di A e un numero tra 0 e 1

0 le P(A) le 1

2 La probabilita del sample space S e 1

P(S) = 1

3 La probabilita dellrsquounione di eventi disgiunti e uguale alla somma delleprobabilita di tali eventi

P(A cupB) = P(A) + P(B)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 54 88

Probabilita - 2

In generale 2 eventi potrebbero non essere disgiunti

P(A cupB) = P(A) + P(B) minus P(A capB)

Esempio un certo negozio accetta pagamenti o con carte di credito VISAo Mastercard

1 22 dei clienti ha Mastercard

2 58 dei clienti ha VISA

3 14 dei clienti ha entrambe

Qual e la probabilita che un cliente ha almeno una delle 2 carte

P(A) = 022 P(B) = 058

P(A cupB) = P(A) + P(B) minus P(A capB) = 022 + 058 minus 014 = 066

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 55 88

Probabilita condizionata - 1

Se alcune informazioni riguardo lrsquoesito di un esperimento sono disponibiliparliamo di probabilita condizionata

Esempio lancio di 2 dadi

S = (11) (12) (65) (66)

Probabilita che la somma sia 10 (evento B) sapendo che il primo dadomostra 4 (evento A)

(41) (42) (43) (44) (45) (46)

P(B ∣A) = 16

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 56 88

Probabilita condizionata - 2

In generale

P(B ∣A) = P(A capB)P(A)

Supponiamo lrsquoesito sia in A

Per essere anche in B deve essere in entrambi A e B cioe in A capB

Sapendo che A e gia accaduto il nostro nuovo sample space diventa A

la probabilita di A capB viene calcolata rispetto ad A

Nel caso dei dadi

P(B ∣A) = P((46))P((41) (42) (43) (44) (45) (46)) = 136

16= 1

6

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 57 88

Indipendenza

In generale sapere che A e accaduto modifica le chance che B accadaNel caso cio non avvenga cioe se P(B ∣A) = P(B) allora i 2 eventi sidicono indipendenti In questo caso sapere che A e accaduto nonaggiunge alcuna informazione

SiccomeP(A capB) = P(B ∣A)P(A)

Abbiamo che B e indipendente da A se

P(A capB) = P(B)P(A)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 58 88

Esercizi - 1

1 Svolgere gli esercizi di combinatoria

2 Si consideri il seguente esperimento casuale rdquosi lancia tre volte unamonetardquo Qual e lo spazio degli esiti di questo esperimento casualeSi scriva esplicitamente lrsquoevento rdquosi ottengono piu teste che crocirdquo

3 Si consideri il seguente esperimento casuale rdquoSi tirano due dadirdquo Siconsiderino gli eventi E = rdquola somma dei punteggi e disparirdquo F = rdquoilprimo dado realizza un 1rdquo e G = rdquola somma dei punteggi e 5rdquo Sidescrivano gli eventi E cap F E cup F F capG E cap F c e E cap F capG

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 59 88

Esercizi - 2

4 Si consideri il seguente esperimento casuale rdquoUn sistema e compostoda 4 componenti ciascuno dei quali o funziona oppure e guasto Siosserva lo stato dei componenti ottenendo un vettore (x1 x2 x3 x4)dove xi e 1 oppure 0 a seconda che il componente i-esimo funzionioppure nordquo

1 Da quanti elementi e formato lo spazio degli esiti2 Il sistema nel suo insieme funziona fintantoche entrambi i componenti

1 e 2 oppure entrambi i componenti 3 e 4 funzionano Specifica tuttigli esiti dellrsquoevento il rdquosistema funzionardquo

3 Sia E lrsquoevento rdquoi componenti 1 e 3 sono guastirdquo Quanti esiti contiene

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 60 88

Esercizi - 3

5 Si dimostri che in uno spazio degli esiti Ω dotato di una probabilita Pper ogni evento E F sub Ω vale la disuguaglianza seguente

P(E cap F ) ge P(E) + P(F ) minus 1

6 Un gruppo di 5 bambini e 10 bambine e in fila in ordine casuale nelsenso che tutte le 15 possibili permutazioni si suppongonoequiprobabili

1 Qual e la probabilita che il quarto della fila sia un bambino2 E il dodicesimo3 Qual e la probabilita che un determinato bambino occupi la terza

posizione

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 61 88

Esercizi - 4

7 In un comune vi sono 5 alberghi Se 3 persone devono scegliere unalbergo in cui pernottare qual e la probabilita che finiscano tutte inalberghi differenti Che cosa stiamo assumendo senza dirloesplicitamente

8 La media del salario annuale di un gruppo di 100 lavoratori impiegatinellrsquoamministrazione di una grande azienda e di 130000 dollari conuna deviazione standard di 20000 dollari Se si prende una persona acaso da questo gruppo cosa possiamo dire sulla probabilita che il suosalario sia

1 tra i 90000 e i 170000 dollari2 superiore a 150000 dollari

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 62 88

Esercizi - 5

9 In una certa regione vi sono due ditte che producono forni amicroonde Quelli della fabbrica A sono difettosi con probabilita 005mentre quelli della fabbrica B con probabilita 001 Supponi di averacquistato due apparecchi prodotti dalla stessa ditta che puo essere laA o la B con probabilita del 50 Se il primo microonde e difettosoqual e la probabilita condizionata che sia difettoso anche il secondo

10 Hai chiesto ad un vicino di innaffiare una piantina delicata mentre seiin vacanza Pensi che senza acqua la piantina muoia con probabilita08 mentre se innaffiata questa probabilita si ridurrebbe a 015 Latua fiducia che il vicino si ricordi di innaffiarla e del 90

1 Qual e la probabilita che la pianta sia ancora viva al tuo ritorno2 Se fosse morta quale sarebbe la probabilita che il vicino si sia

dimenticato di innaffiarla

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 63 88

Esercizi - 6

11 Una compagnia di assicurazioni classifica i suoi clienti in tre fascebasso rischio medio rischio alto rischio Le sue statistiche indicanoche le probabilita che un cliente delle tre fasce abbia un incidenteentro un periodo di un anno sono rispettivamente 005 015 e 030Se il 20 dei clienti sono a basso rischio il 50 a medio rischio e il30 ad alto rischio che percentuale dei clienti avra mediamenteincidenti in un lasso di un anno Se un cliente non ha avuto incidentinel 1987 qual e la probabilita che appartenga a ciascuna delle trefasce

12 Se un votante scelto a caso e favorevole ad una certa riforma conprobabilita di 07 qual e la probabilita che su 10 votanti esattamente7 siano favorevoli

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 64 88

Variabili aleatorie

Una variabile aleatoria (o anche variabile aleatoria) e una variabile chepuo assumere valori diversi in dipendenza da qualche fenomeno aleatorio

fenomeno lancio di 2 dadivariabile aleatoria somma dei 2 dadi

fenomeno 3 lanci di una monetavariabile aleatoria numero di rdquotesterdquo complessivo

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 65 88

Funzione di Ripartizione

Sia X una variabile aleatoria Si chiama funzione di ripartizione di X lafunzione F che associa ad ogni numero reale a la probabilita che X siaminore o uguale ad a cioe P(X le a) = FX (a)

Nel caso della moneta (fair) lanciata 3 volte (X indica il numero di testecomplessivo)

FX (a) =

⎧⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎨⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎩

0 if a lt 0

18 per 0 le a lt 1

18 + 38 = 48 per 1 le a lt 2

48 + 38 = 78 per 2 le a lt 3

88 = 1 per a ge 3

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 66 88

Funzione di densita o di massa

Sia X una variabile aleatoria Si chiama funzione di densita di X lafunzione f che associa ad ogni numero reale a la probabilita che X siauguale ad a indicata con fX (a)

Nel caso della moneta (fair) lanciata 3 volte (X indica il numero di testecomplessivo)

fX (a) =

⎧⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎨⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎩

18 per a = 0

38 per a = 1

38 per a = 2

18 per a = 3

0 altrimenti

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 67 88

Valore Atteso

Chiamato anche media (expectation in inglese) e appunto una mediapesata dei possibili valori di una variabile aleatoria Il peso dato a ciascunvalore e la probabilita data a quello specifico valore

E[X ] =sumi

aiP(X = ai)

Esempio dado truccato

valore 6 con probabilita 712

valori da 1 a 5 con probabilita 112

La variabile aleatoria X indica la faccia risultante dal lancio di un dado

E[X ] = 1

12lowast 1 + 1

12lowast 2 + 1

12lowast 3 + 1

12lowast 4 + 1

12lowast 5 + 7

12lowast 6 = 475

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 68 88

Valore Atteso - Proprieta

Sia X una variabile aleatoria con valore atteso E[X ] Se c e una costanteallora anche cX e X + c sono variabili casuali In particolare valgono leseguenti proprieta

E[cX ] = cE[X ]E[X + c] = E[X ] + c

Sia Y una variabile aleatoria Allora

E[X +Y ] = E[X ] +E[Y ]se e solo se X e Y sono independenti

E[XY ] = E[X ]E[Y ]

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 69 88

Varianza

Ersquo il valore atteso del quadrato della differenza tra la variabile aleatoria e ilsuo valore atteso

Var(X ) = E[(X minusE[X ])2] = E[X 2] minus (E[X ])2

La radice quadrata viene detta deviazione standard di X

Esempio dado truccato

E[X 2] = 1

12lowast 12 + 1

12lowast 22 + 1

12lowast 32 + 1

12lowast 42 + 1

12lowast 52 + 7

12lowast 62 ≃ 255

Var(X ) = E[X 2] minus (E[X ])2 ≃ 255 minus 4752 ≃ 3

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 70 88

Varianza - proprieta

Sia X una variabile aleatoria e c una costante Allora valgono le seguentiproprieta

1 Var(cX ) = c2Var(X )

2 Var(X + c) = Var(X )

NOTA

Var(X +X ) ne Var(X ) +Var(X )

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 71 88

Covarianza

Siano X Y due variabili aleatorie con valore atteso rispettivamenteE[X ] = microX e E[Y ] = microY La covarianza e definita come segue

Cov(X Y ) = E[(X minus microX )(Y minus microY )] = = E[XY ] minus microXmicroY

Proprieta

1 Cov(X Y ) = Cov(Y X )2 Cov(X X ) = Var(X )3 Sia a una costante allora

Cov(aX Y ) = aCov(X Y )

4 Sia Z una variabile aleatoria allora

Cov(X + Z Y ) = Cov(X Y ) + Cov(Z Y )

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 72 88

Esercizi - 1

1 Consideriamo una variabile aleatoria X che puo assumere i valori 12o 3 Se sappiamo che

fX (1) = 1

3 fX (2) = 3

7

1 Quanto vale fX (3)2 Disegnare il grafico di questa funzione di massa3 Disegnare il grafico della relativa funzione di ripartizione

2 Dimostrare che se X1 e X2 hanno la stessa distribuzione allora

Cov(X1 +X2X1 minusX2) = 0

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 73 88

Esercizi - 2

3 La funzione di ripartizione di X e definita come segue

FX (x) =

⎧⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎨⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎩

0 per x le 0

x2 per 0 le x lt 1

23 per 1 le x lt 2

1112 per 2 le x lt 3

1 per x ge 3

Se ne tracci il graficoQuanto vale P(X gt 12)Quanto vale P(2 le X le 4)Quanto vale P(X le 3)Quanto vale P(X = 1)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 74 88

Esercizi - 3

4 Un tipo di prodotti vengono classificati a seconda dei loro difetti edella fabbrica che li ha prodotti Sia X1 il numero (1 o 2) dellafabbrica e sia X2 il numero di difetti per pezzo (che possono essere da0 a 3) di un prodotto scelto a caso tra la totalita di quelli esistentiLa tabella seguente riporta la funzione di massa di probabilitacongiunta per queste due variabili aleatorie discrete Le righe siriferiscono alla variabile X1 mentre le colonne alla variabile X2

Trova le distribuzioni marginali di X1 e X2Calcola media e varianza di X2

0 1 2 31 18 116 316 182 116 116 18 14

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 75 88

Scipy

Scipy e un modulo che permette di utilizzare varie distribuzioni diprobabilita sia di tipo discreto che continuo

La sintassi generale e la seguente Scipystatsltnome distribuzionegt

rvs(size=z) restituisce un vettore di numeri casuali estrattisecondo la distribuzione di lunghezza z

pdf(x) restituisce il vettore della densita della distribuzionevalutata nei valori del vettore di input x (pmf per le discrete)

cdf(x) restituisce il vettore della funzione di ripartizione (ocumulativa) della distribuzione valutata nei valori del vettore di inputx

ppf(q) restituisce il vettore dei quantili della distribuzione valutatanei valori del vettore di input q

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 76 88

Variabili aleatorie discrete Binomiale

gtgtgt from scipystats import binom

gtgtgt rv = binom(n p)

rvrvs(x) restituisce un vettore di x numeri estratti secondo unadistribuzione Binomiale di parametri n p

rvpmf(x) restituisce la probabilita di ottenere esattamente x

successi in un esperimento dicotomico (01) ripetuto n volte con unaprobabilita di successo p (x puo essere un vettore)

rvcdf(q) restituisce il valore della funzione di ripartizione in q (qpuo essere un vettore)

rvppf(p) restituisce il valore del quantile di ordine p

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 77 88

Variabili aleatorie discrete Ipergeometrica

Supponiamo di avere M = 20 animali di cui n = 7 cani Se vogliamosapere la probabilita di trovare un dato numero di cani se scegliamoN = 12 dei 20 animali in maniera casuale possiamo usare una distribuzioneipergeometrica in questo modo

gtgtgt from scipystats import hypergeom

gtgtgt [M n N] = [20 7 12]

gtgtgt rv = hypergeom(M n N)

rvpmf(x) restituisce la probabilita di estrarre esattamente x cani

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 78 88

Variabili aleatorie discrete Geometrica

gtgtgt from scipystats import geom

gtgtgt rv = geom(p)

rvpmf(x) restituisce la probabilita di avere un successo dopoesattamente x insuccessi in una successione di esperimenti dicotomici(esito 01) con una probabilita di successo p (x puo essere un vettore)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 79 88

Variabili aleatorie discrete Poisson

La distribuzione di Poisson viene usata spesso come modello per il numerodi volte per cui un evento avviene in un dato intervallo di tempo (ospazio) Ad esempio si puo utilizzare per misurare il numero di chiamatericevute da un call center in una mattinata

gtgtgt from scipystats import poisson

gtgtgt mu = 2

gtgtgt rv = poisson(mu)

rvpmf(x) restituisce il seguente valore

f (x) = exp(minusmicro)microx

x

In questo caso x rappresenta il numero di eventi per cui si vuole calcolarela probabilita sapendo che in media ne accadono micro

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 80 88

Variabili aleatorie continue Uniforme

In Scipy la funzione uniforme e soltanto continua Questo significa chenella generazione di numeri casuali otterro dati di tipo float Possiamotuttavia simulare una variabile discreta estraendo la parte intera delrisultato ottenuto

gtgtgt from scipystats import uniform

gtgtgt rv = uniform()

Il comando uniform() crea una distribuzione uniforme nellrsquointervallo[01] Possiamo creare una distribuzione uniforme qualsiasi usandouniform(x y - x) per lrsquointervallo [x y]

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 81 88

Variabili aleatorie continue

norm(mu sigma) variabile Gaussiana (o Normale) di media micro edeviazione standard σ

expon(scale = 1 lambda) variabile Esponenziale di parametroλ

Altre distribuzioni (con relativa documentazione) disponibili suhttpsdocsscipyorgdocscipyreferencestatshtml

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 82 88

Esercizi - 1

1 Unrsquourna contiene 10 palline di cui 4 bianche e 6 nere Si eseguono 5estrazioni con reimmissione

1 Tracciare grafico della funzione massa di probabilita della variabilecasuale X = rdquonumero di palline bianche estratterdquo

2 Calcolare la probabilita di estrarre 2 palline bianche3 Calcolare la probabilita di estrarre al piu 2 palline bianche4 Calcolare la probabilita di estrarre almeno 2 palline bianche5 Qual e il numero minimo x tale che la probabilita di estrarre al piu x

palline bianche sia almeno 08

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 83 88

Esercizi - 2

2 Si eseguono 10 estrazioni senza reimmissione da unrsquourna

1 Tracciare il grafico della funzione massa di probabilita della variabilecasuale X = rdquonumero di palline bianche estratterdquo nei seguenti casi

1 lrsquourna contiene 100 palline di cui 20 bianche e le restanti nere2 lrsquourna contiene 100 palline di cui 2 bianche e le restanti nere

2 Tracciare il grafico della funzione massa di probabilita della variabilecasuale X nel caso dellrsquourna 1 se si eseguono 25 estrazioni

3 Consideriamo lrsquourna 1 e N = 10 estrazioni Si aumenti il numero totaleM di palline nellrsquourna mantenendo uguale a 02 la frazione di pallinebianche Per ciascun valore di M confrontare graficamente ladistribuzione di probabilita del numero di palline bianche estratte nelcaso di estrazioni con e senza reimmissione Provare con 20 40 e 200palline bianche

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 84 88

Esercizi - 3

3 Calcolare la probabilita di ottenere piu teste che croci lanciando 7volte una moneta truccata con probabilita di avere croce pari a 045

4 Calcolare la probabilita di avere almeno 3 sei lanciando 5 dadi a 12facce

5 Calcolare la probabilita di estrarre 20 euro da un sacco contenente 47monete da 1 centesimo e 53 da 2 euro estraendo (uniformemente) acaso 10 monete senza reinserirle

6 Un grammo di uranio emette mediamente 2152 particelle α ognimillisecondo Qual e con buona approssimazione la probabilita che ungrammo di uranio emetta al piu 2000 particelle α in un millisecondo

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 85 88

Esercizi - 4

7 Un uomo si risveglia in mezzo al deserto senza acqua Dopo ogniminuto ha una probabilita del 3 di perdere conoscenza per via dellecondizioni estreme Calcolare la probabilita che lrsquouomo perdaconoscenza dopo almeno due ore e la probabilita che lrsquouomo perdaconoscenza dopo esattamente un quarto drsquoora

8 Sia X una variabile aleatoria normale di parametri micro = 10 e σ = 36Calcola

1 P(X gt 5)2 P(4 le X le 16)3 P(X le 8)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 86 88

Esercizi - 5

9 Il numero di errori tipografici per pagina di una certa rivista segue unadistribuzione di Poisson Sapendo che mediamente sono presenti 02errori per pagina determinare la probabilita che una pagina contenga

1 nessun refuso2 piu refusi

10 Arrivi alla fermata dellrsquoautobus alle 1000 e sei certo che ne passerauno in un momento distribuito uniformemente tra le 1000 e le 1030

1 Qual e la probabilita che tu debba aspettare piu di 10 minuti2 Se alle 1015 lrsquoautobus non e ancora arrivato qual e la probabilita che

tu debba aspettare almeno altri 10 minuti

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 87 88

Esercizi - 6

11 Il signor Jones e convinto che il tempo di vita di una automobile (inmigliaia di chilometri percorse) sia una variabile aleatoria esponenzialedi parametro 120 Il signor Smith ha una macchina usata da vendereche ha percorso circa 10 000 chilometri

1 Se il signor Jones decide di comprarla che probabilita ha di farle farealmeno altri 20 000 chilometri prima che sia da buttare

2 Il modello assunto dal signor Jones e ragionevole

12 Sia X una variabile casuale binomiale di parametri n = 100 e p = 07

1 Tracciate la funzione di ripartizione di X2 Calcolate il primo quartile il quantile di ordine 09 e la mediana di X3 Calcolare la probabilita P(X le 60)4 Calcolare la probabilita P(X le 88)5 Trovare il piu piccolo valore x tale che P(X le x) ge 09

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 88 88

  • Lezione 1
    • Script in Python
    • Numpy
    • Esercizi
    • Pandas
    • Esercizi
      • Lezione 2
        • File csv
        • DataFrame
        • Accesso ai DataFrame
        • Frequenze
        • Esercizi
          • Lezione 3
            • Matplotlib
            • Grafici a Barre
            • Istogrammi
            • Cumulativa empirica
            • Boxplot
            • QQplot
            • Diagramma di Pareto
            • Esercizi
              • Lezione 4
                • Definizioni
                • Probabilitagrave condizionata
                • Indipendenza
                • Esercizi
                  • Lezione 5
                    • Variabili Aleatorie
                    • Funzione di Ripartizione
                    • Funzione di Densitagrave
                    • Valore Atteso
                    • Varianza
                    • Covarianza
                    • Esercizi
                      • Lezione 6
                        • Scipy - Variabili Discrete
                        • Scipy - Variabili continue
                        • Esercizi

Creazione di Array - 2

numpyones(rdquotuplardquo) restuituisce un array di 1 date le dimensionispecificate nella tupla come argomento

gtgtgt numpyones( (15) )

array([1 1 1 1 1])

numpyzeros(rdquotuplardquo) restuituisce un array di 0 date le dimensionispecificate nella tupla come argomento

gtgtgt numpyzeros( (25) )

array([[0 0 0 0 0] [0 0 0

0 0]])

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 14 88

Operazioni con Array

Applicando un operazione logica ad un array si ottiene come risposta unarray di tipo booleano contenente nella posizione i-esima il risultatodellrsquoespressione logica valutata per lrsquoelemento i-esimo dellrsquoarray

gtgtgt numpyarange(5) gt 3

array([False False False False True] dtype=bool)

Le operazioni + - tra due array vengono eseguite elemento perelemento (gli array devono avere le stesse dimensioni)

gtgtgt numpyarange(5) + numpylinspace(025)

array([ 0 15 3 45 6 ])

gtgtgt numpyarange(5) 2

array([0 2 4 6 8])

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 15 88

Selezioni di un sottoinsieme di elementi

Ad un array e possibile accedere in tutti i modi con cui e possibile accederead una lista ad esempio

Ottenere una tupla di elementi

gtgtgt a[2] a[-1] a[36]

(2 9 array([3 4 5]))

Slicing [startstopstep]

gtgtgt a[293]

array([2 5 8])

gtgtgt a[2]

array([0 2 4 6 8])

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 16 88

Accesso con maschere booleane

Specificando tra [ ] un array di tipo booleano selezioniamo dallrsquoarray glielementi la cui posizione corrisponde ad un True nellrsquoarray di tipobooleano (che prende il nome di maschera)

gtgtgt a = numpyarange(10)

gtgtgt mask = a2 == 0

gtgtgt mask

array([ True False True False True False True

False True False] dtype=bool)

gtgtgt a[mask]

array([0 2 4 6 8])

o in maniera piu compatta

gtgtgt a[a2 == 0]

array([0 2 4 6 8])

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 17 88

Esercizi

1 Lanciare uno script che stampi il vostro nome e cognome

2 Creare un array i cui elementi siano gli interi che compongono ilvostro numero di matricola

3 Sia X la lunghezza dellrsquoarray del punto precedente Creare un array diX elementi equispaziati lrsquouno dallrsquoaltro di 15

4 Creare un array di X elementi equispaziati nellrsquointervallo tra 1 e 3

5 Ottenere gli array dati dalla somma tra lrsquoarray del punto 2 e quello delpunto 3 e quello dato dalla moltiplicazione tra punto 3 e punto 4

6 Ottenere per ciascuno dei due array del punto 5 un array mascherache in corrispondenza dei numeri divisibili per 3 abbia True Falsealtrimenti

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 18 88

Pandas - Series (1)

Pandas (httpspandaspydataorg) e una libreria Python chefornisce strutture dati e strumenti relativi esclusivamente allrsquoanalisi deidatiUna Series e un array monodimensionale ed etichettato Rappresenta unaserie di osservazioni di un certo carattere fatto su un insieme di individui

a 00

b 10

c 20

d 30

e 40

f 50

g 60

h 70

Name serie di esempio dtype float64

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 19 88

Pandas - Series (2)

pandasSeries (data index dtype name )

data contiene i dati che si vuole inserire nella serie

index della stessa lunghezza di data contiene le etichette

dtype permette di specificare il tipo che i dati devono assumere

name permette di dare un nome alla Series

gtgtgt import pandas as pd

gtgtgt import numpy as np

gtgtgt oss = nparange(8)

gtgtgt etic = [rsquoarsquorsquobrsquorsquocrsquorsquodrsquorsquoersquorsquofrsquorsquogrsquorsquohrsquo]

gtgtgt pdSeries(data=oss index=etic name=rsquoserie di esempiorsquo

dtype=float)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 20 88

Accesso ai dati di una Series

Specificando un valore (o una lista di valori) per lrsquoetichetta

gtgtgt sloc[[rsquohrsquorsquoarsquo]]

h 70

a 00

Specificando un valore (o una lista di valori) per la posizione

gtgtgt s[[56]]

f 50

g 60

Usando lo slicing (come per gli array numpy) per la posizione

gtgtgt s[36]

d 30

e 40

f 50

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 21 88

Pandas Series - Utils

Seriesmin() Seriesmax() restituiscono rispettivamente il minimoed massimo tra i valori della Series

Seriessum() restituisce la somma dei valori della Series

Seriessort values() restituisce una copia della Series ordinata pervalore

Seriessort index() restituisce una copia della Series ordinata peretichette

Seriessample(n) restituisce una Series di n elementi sceltiuniformemente a caso allrsquointerno di quelli della Series

Seriesappend([s1s2]) concatena una o piu Series a quella dipartenza

Seriescount() restituisce il numero dei valori della Series che nonsiano il valore NaN

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 22 88

Il valore NaN

Nan un oggetto del modulo numpy che puo rappresentare in una Seriesun dato di cui non e stato possibile fare unrsquoosservazioneOperazioni con un valore Nan hanno come risultato il valore Nan

gtgtgt oss = range(5)

gtgtgt ossappend(None)

gtgtgt pandasSeries(oss)

0 00

1 10

2 20

3 30

4 40

5 NaN

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 23 88

Esercizi

Creare la Series gol in modo che le etichette siano numeri dallrsquo1 al 23 Idati raccolti siano numeri interi tra 0 e 30 scelti casualmente (scarica ilnotebook) La Series rappresenta i gol segnati da ciascun giocatore diuna societa calcistica nella stagione appena passata Lrsquoetichettacorrisponde al numero di maglia del giocatore Ottenere

1 I gol segnati dal capocannoniere2 Chi non ha mai fatto gol durante lrsquoanno3 La statistica del punto 2 per i soli titolari (numeri dallrsquo1 allrsquo11) e per

le sole riserve (dal 12 al 23)4 La statistica del punto 2 per i soli attaccanti (numeri dalrsquo9 allrsquo11)5 I gol segnati dai giocatori coi numeri di maglia 5 9 10 14 (somma)6 Chi ha segnato piu di 10 gol e chi ha segnato esattamente 10 gol7 Una copia della Series ordinata secondo i gol effettuati8 Una stampa dei primi 5 cannonieri e degli ultimi 59 Una copia della Series ordinata in modo discendente secondo il

numero di maglia

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 24 88

File csv

Il formato csv (comma-separated value) e un formato utilizzato perrappresentare una tabella di dati e favorirne lrsquoimportazione e lrsquoesportazioneUn file csv e scritto nella seguente forma

titolopaeseannoduratagenerevoto

Guerre StellariUSA1977121Fantascienza4

Lrsquoimpero colpisce ancoraUSA1980124Fantascienza4

Il ritorno dello JediUSA1983Fantascienza35

Profondo RossoITA1975Horror35

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 25 88

Leggere csv

La funzione read csv() di Pandas puo essere utilizzata per leggere unfile di formato csv Tra i vari parametri che passiamo in input unoparticolarmente importante e sep che indica il carattere utilizzato perseparare le colonne (default e rsquorsquo)

gtgtgt df film = pdread csv(rsquofilmcsvrsquo)

gtgtgt df film

titolo paese anno durata genere voto

Il padrino USA 19720 1750 Drammatico 45

Pulp Fiction USA 19940 1540 Drammatico 40

Fight Club USA 19990 1390 Thriller 40

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 26 88

DataFrame

In Pandas un DataFrame e una struttura dati tabulare con assi etichettatile cui colonne possono contenere dati eterogenei da colonna a colonna

gtgtgt dataframe

esempio

Nome Cognome Eta Citta

Tommaso Rossi 300 Milano

Sergio Bianchi 340 Roma

Pasquale Verdi 290 Palermo

Antonio Gialli 300 Roma

Il DataFrame puo essere visto come un insieme di serie aventi lo stessoindice accostate una allrsquoaltra

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 27 88

Accesso colonne DataFrame - 1

Per conoscere le colonne di un DataFrame possiamo invocare il comandodfcolumns dove df e la variabile in cui abbiamo instanziato ilDataFramePer accedere ad una colonna dobbiamo specificarne il nome nel seguentemodo

gtgtgt df film[rsquogenerersquo]

titolo

Il padrino Drammatico

Pulp Fiction Drammatico

Fight Club Thriller

Selezionando unrsquounica colonna in output viene restituita una Series

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 28 88

Accesso colonne DataFrame - 2

Possiamo accedere allo stesso tempo a piu colonne

gtgtgt df film[[rsquopaesersquorsquoannorsquo]]

titolo paese anno

Il padrino USA 19720

Pulp Fiction USA 19940

Fight Club USA 19990

Selezionando piu colonne in output viene restituito un DataFrame

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 29 88

Accesso righe DataFrame - 1

Per indice numerico

gtgtgt df film[1518]

titolo paese anno durata genere voto

Il padrino USA 19720 1750 Drammatico 45

Pulp Fiction USA 19940 1540 Drammatico 40

Fight Club USA 19990 1390 Thriller 40

Quasi Amici FRA 20110 1120 Commedia 35

Per valore dellrsquoindice (assumiamo che titolo sia lrsquoindice delDataFrame)

gtgtgt df film[rsquoIl padrinorsquorsquoFight Clubrsquo]

titolo paese anno durata genere voto

Il padrino USA 19720 1750 Drammatico 45

Pulp Fiction USA 19940 1540 Drammatico 40

Fight Club USA 19990 1390 Thriller 40

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 30 88

loc amp iloc

Cosı come per le Series anche con i DataFrame possiamo usare loc ediloc per lrsquoaccesso ai dati

loc[rsquonome indicersquo] permette lrsquoaccesso ad una riga o piu righetramite nome dellrsquoindice

iloc[rsquoposizionersquo] permette lrsquoaccesso ad una o piu righe tramitela loro posizione

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 31 88

Accesso tramite unrsquoespressione logica

gtgtgt df film[rsquoannorsquo gt 1998]

titolo

Il padrino False

Pulp Fiction False

Fight Club True

Quasi Amici True

gtgtgt df film[df film[rsquoannorsquo] gt 1998]

titolo paese anno durata genere voto

Fight Club USA 19990 1390 Thriller 40

Quasi Amici FRA 20110 1120 Commedia 35

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 32 88

Metodi dei DataFrame

La classe DataFrame ha diversi metodi Elenchiamo qui i piu importanti

DataFrameappend() permette di estendere il DataFrame

DataFramedrop duplicates() restituisce un DataFrame senza righeduplicate

DataFramedropna() Eliminare i valori Nan da un DataFrame

DataFramesort values() permette di ordinare il DataFrame

DataFramemax() DataFramemin() DataFramemean()DataFramemedian()

Per la completa documentazione si puo utilizzare il comandohelp(pdDataFrame) oppure andare al seguente linkhttpspandaspydataorgpandas-docsstablegenerated

pandasDataFramehtml

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 33 88

Frequenze

La frequenza assoluta indica il numero di volte che una dataosservazione occorre in un campione

La frequenza relativa e un valore tra 0 e 1 che permette di valutare inmaniera piu efficace la frequenza di un osservazione Si calcoladividendo la frequenza assoluta per il numero totale di casi

Per calcolare questa quantita in Pandas possiamo utilizzare la funzionevalue counts() che opera su una Series

In alternativa si puo utilizzare la funzione pdcrosstab che calcolaqueste frequenze in automatico restituendole in output in un DataFrame

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 34 88

Esercizi

Utilizzando il file dati-ospedalicsv dai csv del laboratorio

1 Leggere il file e visualizzarlo in un DataFrame

2 Calcolare le frequenze assolute e relative dellrsquoattributo Regioneusando crosstab

3 Ottenere la singola serie relativa allrsquoattributo Regione e calcolarne lafrequenza assoluta e relativa senza usare crosstab

4 Estrarre un sottodataframe contenente le colonne Nome (attributoDenominazione Str Pubblica New) e Numero di medici (attributoMedici SSN) degli ospedali aventi meno di 200 medici

5 Visualizzare il nome degli ospedali della regione Lombardia

6 Calcolare il numero medio di ingegneri (Ingegneri SSN) presenti negliospedali campani

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 35 88

Esercizi

7 Calcolare la varianza del numero di assistenti sociali (Assistenti socialiSSN) negli ospedali con piu di 400 medici

8 Qual e lrsquoospedale con meno medici

9 Visualizzare in ordine alfabetico il nome dei primi 10 ospedali pernumero di medici

10 Visualizzare il numero degli ospedali che hanno dichiarato il numerodi odontoiatri (per cui il valore e diverso da NaN) (OdontoiatriUniversitari)

11 Visualizzare il numero degli ospedali che hanno dichiarato il numerodi odontoiatri (Odontoiatri Universitari) e per cui questo numero emaggiore di 0

12 Calcolare le frequenze assolute per lrsquoattributo Odontoiatri SSNTrasformare questo risultato in frequenze relative

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 36 88

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) SAD 20182019 January 12 2019 37 88

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) SAD 20182019 January 12 2019 38 88

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) SAD 20182019 January 12 2019 39 88

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) SAD 20182019 January 12 2019 40 88

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) SAD 20182019 January 12 2019 41 88

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) SAD 20182019 January 12 2019 42 88

Grafici con le Series

In generale possiamo tracciare diversi tipi di grafici con le Series

rsquolinersquo line plot (default)

rsquobarrsquo vertical bar plot

rsquobarhrsquo horizontal bar plot

rsquohistrsquo histogram

rsquoboxrsquo boxplot

rsquokdersquo Kernel Density Estimation plot

rsquodensityrsquo same as rsquokdersquo

rsquoarearsquo area plot

rsquopiersquo pie plot

Per saperne di piu consultare questo link

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 43 88

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) SAD 20182019 January 12 2019 44 88

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) SAD 20182019 January 12 2019 45 88

Boxplot

Rappresenta la distribuzione di un vettore di numeri cerchiando gli outlier

gtgtgt weight = heroes[rsquoWeightrsquo]

gtgtgt weightplotbox()

gtgtgt pltshow()

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 46 88

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) SAD 20182019 January 12 2019 47 88

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) SAD 20182019 January 12 2019 48 88

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) SAD 20182019 January 12 2019 49 88

Esercizi - 1

Utilizzando il file capellicsv dai csv del laboratorio

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) SAD 20182019 January 12 2019 50 88

Esercizi - 2

Utilizzando il file dati-ospedalicsv dai csv del laboratorio

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 e canipdf

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 51 88

Sample space

Un esperimento e qualsiasi processo che produce una realizzazione (oosservazione) Lrsquoinsieme di tutte le possibili realizzazioni di un esperimentoviene detto sample space ed indicato con S

lancio di 2 monete

S = (T T ) (T C) (C T ) (C C)

gara di 3 cavalli (ab c)

S = tutti i possibili ordinamenti di(ab c)= (ab c) (a cb) (c b a)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 52 88

Eventi

lancio di 2 monete

S = (T T ) (T C) (C T ) (C C)

A = 2 monete uguali

A = (T T ) (C C)

B = 2 monete diverse

B = Ac = (T C) (C T )

gara di 3 cavalli

A = cavallo a vincente

A = (ab c) (a c b)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 53 88

Probabilita - 1

Consideriamo un esperimento con sample space S Supponiamo che adogni evento A sia associato un numero chiamato probabilita di A edindicato con P(A) che soddisfa le seguenti proprieta

1 Per ogni evento A la probabilita di A e un numero tra 0 e 1

0 le P(A) le 1

2 La probabilita del sample space S e 1

P(S) = 1

3 La probabilita dellrsquounione di eventi disgiunti e uguale alla somma delleprobabilita di tali eventi

P(A cupB) = P(A) + P(B)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 54 88

Probabilita - 2

In generale 2 eventi potrebbero non essere disgiunti

P(A cupB) = P(A) + P(B) minus P(A capB)

Esempio un certo negozio accetta pagamenti o con carte di credito VISAo Mastercard

1 22 dei clienti ha Mastercard

2 58 dei clienti ha VISA

3 14 dei clienti ha entrambe

Qual e la probabilita che un cliente ha almeno una delle 2 carte

P(A) = 022 P(B) = 058

P(A cupB) = P(A) + P(B) minus P(A capB) = 022 + 058 minus 014 = 066

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 55 88

Probabilita condizionata - 1

Se alcune informazioni riguardo lrsquoesito di un esperimento sono disponibiliparliamo di probabilita condizionata

Esempio lancio di 2 dadi

S = (11) (12) (65) (66)

Probabilita che la somma sia 10 (evento B) sapendo che il primo dadomostra 4 (evento A)

(41) (42) (43) (44) (45) (46)

P(B ∣A) = 16

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 56 88

Probabilita condizionata - 2

In generale

P(B ∣A) = P(A capB)P(A)

Supponiamo lrsquoesito sia in A

Per essere anche in B deve essere in entrambi A e B cioe in A capB

Sapendo che A e gia accaduto il nostro nuovo sample space diventa A

la probabilita di A capB viene calcolata rispetto ad A

Nel caso dei dadi

P(B ∣A) = P((46))P((41) (42) (43) (44) (45) (46)) = 136

16= 1

6

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 57 88

Indipendenza

In generale sapere che A e accaduto modifica le chance che B accadaNel caso cio non avvenga cioe se P(B ∣A) = P(B) allora i 2 eventi sidicono indipendenti In questo caso sapere che A e accaduto nonaggiunge alcuna informazione

SiccomeP(A capB) = P(B ∣A)P(A)

Abbiamo che B e indipendente da A se

P(A capB) = P(B)P(A)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 58 88

Esercizi - 1

1 Svolgere gli esercizi di combinatoria

2 Si consideri il seguente esperimento casuale rdquosi lancia tre volte unamonetardquo Qual e lo spazio degli esiti di questo esperimento casualeSi scriva esplicitamente lrsquoevento rdquosi ottengono piu teste che crocirdquo

3 Si consideri il seguente esperimento casuale rdquoSi tirano due dadirdquo Siconsiderino gli eventi E = rdquola somma dei punteggi e disparirdquo F = rdquoilprimo dado realizza un 1rdquo e G = rdquola somma dei punteggi e 5rdquo Sidescrivano gli eventi E cap F E cup F F capG E cap F c e E cap F capG

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 59 88

Esercizi - 2

4 Si consideri il seguente esperimento casuale rdquoUn sistema e compostoda 4 componenti ciascuno dei quali o funziona oppure e guasto Siosserva lo stato dei componenti ottenendo un vettore (x1 x2 x3 x4)dove xi e 1 oppure 0 a seconda che il componente i-esimo funzionioppure nordquo

1 Da quanti elementi e formato lo spazio degli esiti2 Il sistema nel suo insieme funziona fintantoche entrambi i componenti

1 e 2 oppure entrambi i componenti 3 e 4 funzionano Specifica tuttigli esiti dellrsquoevento il rdquosistema funzionardquo

3 Sia E lrsquoevento rdquoi componenti 1 e 3 sono guastirdquo Quanti esiti contiene

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 60 88

Esercizi - 3

5 Si dimostri che in uno spazio degli esiti Ω dotato di una probabilita Pper ogni evento E F sub Ω vale la disuguaglianza seguente

P(E cap F ) ge P(E) + P(F ) minus 1

6 Un gruppo di 5 bambini e 10 bambine e in fila in ordine casuale nelsenso che tutte le 15 possibili permutazioni si suppongonoequiprobabili

1 Qual e la probabilita che il quarto della fila sia un bambino2 E il dodicesimo3 Qual e la probabilita che un determinato bambino occupi la terza

posizione

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 61 88

Esercizi - 4

7 In un comune vi sono 5 alberghi Se 3 persone devono scegliere unalbergo in cui pernottare qual e la probabilita che finiscano tutte inalberghi differenti Che cosa stiamo assumendo senza dirloesplicitamente

8 La media del salario annuale di un gruppo di 100 lavoratori impiegatinellrsquoamministrazione di una grande azienda e di 130000 dollari conuna deviazione standard di 20000 dollari Se si prende una persona acaso da questo gruppo cosa possiamo dire sulla probabilita che il suosalario sia

1 tra i 90000 e i 170000 dollari2 superiore a 150000 dollari

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 62 88

Esercizi - 5

9 In una certa regione vi sono due ditte che producono forni amicroonde Quelli della fabbrica A sono difettosi con probabilita 005mentre quelli della fabbrica B con probabilita 001 Supponi di averacquistato due apparecchi prodotti dalla stessa ditta che puo essere laA o la B con probabilita del 50 Se il primo microonde e difettosoqual e la probabilita condizionata che sia difettoso anche il secondo

10 Hai chiesto ad un vicino di innaffiare una piantina delicata mentre seiin vacanza Pensi che senza acqua la piantina muoia con probabilita08 mentre se innaffiata questa probabilita si ridurrebbe a 015 Latua fiducia che il vicino si ricordi di innaffiarla e del 90

1 Qual e la probabilita che la pianta sia ancora viva al tuo ritorno2 Se fosse morta quale sarebbe la probabilita che il vicino si sia

dimenticato di innaffiarla

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 63 88

Esercizi - 6

11 Una compagnia di assicurazioni classifica i suoi clienti in tre fascebasso rischio medio rischio alto rischio Le sue statistiche indicanoche le probabilita che un cliente delle tre fasce abbia un incidenteentro un periodo di un anno sono rispettivamente 005 015 e 030Se il 20 dei clienti sono a basso rischio il 50 a medio rischio e il30 ad alto rischio che percentuale dei clienti avra mediamenteincidenti in un lasso di un anno Se un cliente non ha avuto incidentinel 1987 qual e la probabilita che appartenga a ciascuna delle trefasce

12 Se un votante scelto a caso e favorevole ad una certa riforma conprobabilita di 07 qual e la probabilita che su 10 votanti esattamente7 siano favorevoli

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 64 88

Variabili aleatorie

Una variabile aleatoria (o anche variabile aleatoria) e una variabile chepuo assumere valori diversi in dipendenza da qualche fenomeno aleatorio

fenomeno lancio di 2 dadivariabile aleatoria somma dei 2 dadi

fenomeno 3 lanci di una monetavariabile aleatoria numero di rdquotesterdquo complessivo

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 65 88

Funzione di Ripartizione

Sia X una variabile aleatoria Si chiama funzione di ripartizione di X lafunzione F che associa ad ogni numero reale a la probabilita che X siaminore o uguale ad a cioe P(X le a) = FX (a)

Nel caso della moneta (fair) lanciata 3 volte (X indica il numero di testecomplessivo)

FX (a) =

⎧⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎨⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎩

0 if a lt 0

18 per 0 le a lt 1

18 + 38 = 48 per 1 le a lt 2

48 + 38 = 78 per 2 le a lt 3

88 = 1 per a ge 3

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 66 88

Funzione di densita o di massa

Sia X una variabile aleatoria Si chiama funzione di densita di X lafunzione f che associa ad ogni numero reale a la probabilita che X siauguale ad a indicata con fX (a)

Nel caso della moneta (fair) lanciata 3 volte (X indica il numero di testecomplessivo)

fX (a) =

⎧⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎨⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎩

18 per a = 0

38 per a = 1

38 per a = 2

18 per a = 3

0 altrimenti

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 67 88

Valore Atteso

Chiamato anche media (expectation in inglese) e appunto una mediapesata dei possibili valori di una variabile aleatoria Il peso dato a ciascunvalore e la probabilita data a quello specifico valore

E[X ] =sumi

aiP(X = ai)

Esempio dado truccato

valore 6 con probabilita 712

valori da 1 a 5 con probabilita 112

La variabile aleatoria X indica la faccia risultante dal lancio di un dado

E[X ] = 1

12lowast 1 + 1

12lowast 2 + 1

12lowast 3 + 1

12lowast 4 + 1

12lowast 5 + 7

12lowast 6 = 475

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 68 88

Valore Atteso - Proprieta

Sia X una variabile aleatoria con valore atteso E[X ] Se c e una costanteallora anche cX e X + c sono variabili casuali In particolare valgono leseguenti proprieta

E[cX ] = cE[X ]E[X + c] = E[X ] + c

Sia Y una variabile aleatoria Allora

E[X +Y ] = E[X ] +E[Y ]se e solo se X e Y sono independenti

E[XY ] = E[X ]E[Y ]

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 69 88

Varianza

Ersquo il valore atteso del quadrato della differenza tra la variabile aleatoria e ilsuo valore atteso

Var(X ) = E[(X minusE[X ])2] = E[X 2] minus (E[X ])2

La radice quadrata viene detta deviazione standard di X

Esempio dado truccato

E[X 2] = 1

12lowast 12 + 1

12lowast 22 + 1

12lowast 32 + 1

12lowast 42 + 1

12lowast 52 + 7

12lowast 62 ≃ 255

Var(X ) = E[X 2] minus (E[X ])2 ≃ 255 minus 4752 ≃ 3

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 70 88

Varianza - proprieta

Sia X una variabile aleatoria e c una costante Allora valgono le seguentiproprieta

1 Var(cX ) = c2Var(X )

2 Var(X + c) = Var(X )

NOTA

Var(X +X ) ne Var(X ) +Var(X )

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 71 88

Covarianza

Siano X Y due variabili aleatorie con valore atteso rispettivamenteE[X ] = microX e E[Y ] = microY La covarianza e definita come segue

Cov(X Y ) = E[(X minus microX )(Y minus microY )] = = E[XY ] minus microXmicroY

Proprieta

1 Cov(X Y ) = Cov(Y X )2 Cov(X X ) = Var(X )3 Sia a una costante allora

Cov(aX Y ) = aCov(X Y )

4 Sia Z una variabile aleatoria allora

Cov(X + Z Y ) = Cov(X Y ) + Cov(Z Y )

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 72 88

Esercizi - 1

1 Consideriamo una variabile aleatoria X che puo assumere i valori 12o 3 Se sappiamo che

fX (1) = 1

3 fX (2) = 3

7

1 Quanto vale fX (3)2 Disegnare il grafico di questa funzione di massa3 Disegnare il grafico della relativa funzione di ripartizione

2 Dimostrare che se X1 e X2 hanno la stessa distribuzione allora

Cov(X1 +X2X1 minusX2) = 0

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 73 88

Esercizi - 2

3 La funzione di ripartizione di X e definita come segue

FX (x) =

⎧⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎨⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎩

0 per x le 0

x2 per 0 le x lt 1

23 per 1 le x lt 2

1112 per 2 le x lt 3

1 per x ge 3

Se ne tracci il graficoQuanto vale P(X gt 12)Quanto vale P(2 le X le 4)Quanto vale P(X le 3)Quanto vale P(X = 1)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 74 88

Esercizi - 3

4 Un tipo di prodotti vengono classificati a seconda dei loro difetti edella fabbrica che li ha prodotti Sia X1 il numero (1 o 2) dellafabbrica e sia X2 il numero di difetti per pezzo (che possono essere da0 a 3) di un prodotto scelto a caso tra la totalita di quelli esistentiLa tabella seguente riporta la funzione di massa di probabilitacongiunta per queste due variabili aleatorie discrete Le righe siriferiscono alla variabile X1 mentre le colonne alla variabile X2

Trova le distribuzioni marginali di X1 e X2Calcola media e varianza di X2

0 1 2 31 18 116 316 182 116 116 18 14

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 75 88

Scipy

Scipy e un modulo che permette di utilizzare varie distribuzioni diprobabilita sia di tipo discreto che continuo

La sintassi generale e la seguente Scipystatsltnome distribuzionegt

rvs(size=z) restituisce un vettore di numeri casuali estrattisecondo la distribuzione di lunghezza z

pdf(x) restituisce il vettore della densita della distribuzionevalutata nei valori del vettore di input x (pmf per le discrete)

cdf(x) restituisce il vettore della funzione di ripartizione (ocumulativa) della distribuzione valutata nei valori del vettore di inputx

ppf(q) restituisce il vettore dei quantili della distribuzione valutatanei valori del vettore di input q

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 76 88

Variabili aleatorie discrete Binomiale

gtgtgt from scipystats import binom

gtgtgt rv = binom(n p)

rvrvs(x) restituisce un vettore di x numeri estratti secondo unadistribuzione Binomiale di parametri n p

rvpmf(x) restituisce la probabilita di ottenere esattamente x

successi in un esperimento dicotomico (01) ripetuto n volte con unaprobabilita di successo p (x puo essere un vettore)

rvcdf(q) restituisce il valore della funzione di ripartizione in q (qpuo essere un vettore)

rvppf(p) restituisce il valore del quantile di ordine p

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 77 88

Variabili aleatorie discrete Ipergeometrica

Supponiamo di avere M = 20 animali di cui n = 7 cani Se vogliamosapere la probabilita di trovare un dato numero di cani se scegliamoN = 12 dei 20 animali in maniera casuale possiamo usare una distribuzioneipergeometrica in questo modo

gtgtgt from scipystats import hypergeom

gtgtgt [M n N] = [20 7 12]

gtgtgt rv = hypergeom(M n N)

rvpmf(x) restituisce la probabilita di estrarre esattamente x cani

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 78 88

Variabili aleatorie discrete Geometrica

gtgtgt from scipystats import geom

gtgtgt rv = geom(p)

rvpmf(x) restituisce la probabilita di avere un successo dopoesattamente x insuccessi in una successione di esperimenti dicotomici(esito 01) con una probabilita di successo p (x puo essere un vettore)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 79 88

Variabili aleatorie discrete Poisson

La distribuzione di Poisson viene usata spesso come modello per il numerodi volte per cui un evento avviene in un dato intervallo di tempo (ospazio) Ad esempio si puo utilizzare per misurare il numero di chiamatericevute da un call center in una mattinata

gtgtgt from scipystats import poisson

gtgtgt mu = 2

gtgtgt rv = poisson(mu)

rvpmf(x) restituisce il seguente valore

f (x) = exp(minusmicro)microx

x

In questo caso x rappresenta il numero di eventi per cui si vuole calcolarela probabilita sapendo che in media ne accadono micro

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 80 88

Variabili aleatorie continue Uniforme

In Scipy la funzione uniforme e soltanto continua Questo significa chenella generazione di numeri casuali otterro dati di tipo float Possiamotuttavia simulare una variabile discreta estraendo la parte intera delrisultato ottenuto

gtgtgt from scipystats import uniform

gtgtgt rv = uniform()

Il comando uniform() crea una distribuzione uniforme nellrsquointervallo[01] Possiamo creare una distribuzione uniforme qualsiasi usandouniform(x y - x) per lrsquointervallo [x y]

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 81 88

Variabili aleatorie continue

norm(mu sigma) variabile Gaussiana (o Normale) di media micro edeviazione standard σ

expon(scale = 1 lambda) variabile Esponenziale di parametroλ

Altre distribuzioni (con relativa documentazione) disponibili suhttpsdocsscipyorgdocscipyreferencestatshtml

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 82 88

Esercizi - 1

1 Unrsquourna contiene 10 palline di cui 4 bianche e 6 nere Si eseguono 5estrazioni con reimmissione

1 Tracciare grafico della funzione massa di probabilita della variabilecasuale X = rdquonumero di palline bianche estratterdquo

2 Calcolare la probabilita di estrarre 2 palline bianche3 Calcolare la probabilita di estrarre al piu 2 palline bianche4 Calcolare la probabilita di estrarre almeno 2 palline bianche5 Qual e il numero minimo x tale che la probabilita di estrarre al piu x

palline bianche sia almeno 08

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 83 88

Esercizi - 2

2 Si eseguono 10 estrazioni senza reimmissione da unrsquourna

1 Tracciare il grafico della funzione massa di probabilita della variabilecasuale X = rdquonumero di palline bianche estratterdquo nei seguenti casi

1 lrsquourna contiene 100 palline di cui 20 bianche e le restanti nere2 lrsquourna contiene 100 palline di cui 2 bianche e le restanti nere

2 Tracciare il grafico della funzione massa di probabilita della variabilecasuale X nel caso dellrsquourna 1 se si eseguono 25 estrazioni

3 Consideriamo lrsquourna 1 e N = 10 estrazioni Si aumenti il numero totaleM di palline nellrsquourna mantenendo uguale a 02 la frazione di pallinebianche Per ciascun valore di M confrontare graficamente ladistribuzione di probabilita del numero di palline bianche estratte nelcaso di estrazioni con e senza reimmissione Provare con 20 40 e 200palline bianche

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 84 88

Esercizi - 3

3 Calcolare la probabilita di ottenere piu teste che croci lanciando 7volte una moneta truccata con probabilita di avere croce pari a 045

4 Calcolare la probabilita di avere almeno 3 sei lanciando 5 dadi a 12facce

5 Calcolare la probabilita di estrarre 20 euro da un sacco contenente 47monete da 1 centesimo e 53 da 2 euro estraendo (uniformemente) acaso 10 monete senza reinserirle

6 Un grammo di uranio emette mediamente 2152 particelle α ognimillisecondo Qual e con buona approssimazione la probabilita che ungrammo di uranio emetta al piu 2000 particelle α in un millisecondo

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 85 88

Esercizi - 4

7 Un uomo si risveglia in mezzo al deserto senza acqua Dopo ogniminuto ha una probabilita del 3 di perdere conoscenza per via dellecondizioni estreme Calcolare la probabilita che lrsquouomo perdaconoscenza dopo almeno due ore e la probabilita che lrsquouomo perdaconoscenza dopo esattamente un quarto drsquoora

8 Sia X una variabile aleatoria normale di parametri micro = 10 e σ = 36Calcola

1 P(X gt 5)2 P(4 le X le 16)3 P(X le 8)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 86 88

Esercizi - 5

9 Il numero di errori tipografici per pagina di una certa rivista segue unadistribuzione di Poisson Sapendo che mediamente sono presenti 02errori per pagina determinare la probabilita che una pagina contenga

1 nessun refuso2 piu refusi

10 Arrivi alla fermata dellrsquoautobus alle 1000 e sei certo che ne passerauno in un momento distribuito uniformemente tra le 1000 e le 1030

1 Qual e la probabilita che tu debba aspettare piu di 10 minuti2 Se alle 1015 lrsquoautobus non e ancora arrivato qual e la probabilita che

tu debba aspettare almeno altri 10 minuti

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 87 88

Esercizi - 6

11 Il signor Jones e convinto che il tempo di vita di una automobile (inmigliaia di chilometri percorse) sia una variabile aleatoria esponenzialedi parametro 120 Il signor Smith ha una macchina usata da vendereche ha percorso circa 10 000 chilometri

1 Se il signor Jones decide di comprarla che probabilita ha di farle farealmeno altri 20 000 chilometri prima che sia da buttare

2 Il modello assunto dal signor Jones e ragionevole

12 Sia X una variabile casuale binomiale di parametri n = 100 e p = 07

1 Tracciate la funzione di ripartizione di X2 Calcolate il primo quartile il quantile di ordine 09 e la mediana di X3 Calcolare la probabilita P(X le 60)4 Calcolare la probabilita P(X le 88)5 Trovare il piu piccolo valore x tale che P(X le x) ge 09

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 88 88

  • Lezione 1
    • Script in Python
    • Numpy
    • Esercizi
    • Pandas
    • Esercizi
      • Lezione 2
        • File csv
        • DataFrame
        • Accesso ai DataFrame
        • Frequenze
        • Esercizi
          • Lezione 3
            • Matplotlib
            • Grafici a Barre
            • Istogrammi
            • Cumulativa empirica
            • Boxplot
            • QQplot
            • Diagramma di Pareto
            • Esercizi
              • Lezione 4
                • Definizioni
                • Probabilitagrave condizionata
                • Indipendenza
                • Esercizi
                  • Lezione 5
                    • Variabili Aleatorie
                    • Funzione di Ripartizione
                    • Funzione di Densitagrave
                    • Valore Atteso
                    • Varianza
                    • Covarianza
                    • Esercizi
                      • Lezione 6
                        • Scipy - Variabili Discrete
                        • Scipy - Variabili continue
                        • Esercizi

Operazioni con Array

Applicando un operazione logica ad un array si ottiene come risposta unarray di tipo booleano contenente nella posizione i-esima il risultatodellrsquoespressione logica valutata per lrsquoelemento i-esimo dellrsquoarray

gtgtgt numpyarange(5) gt 3

array([False False False False True] dtype=bool)

Le operazioni + - tra due array vengono eseguite elemento perelemento (gli array devono avere le stesse dimensioni)

gtgtgt numpyarange(5) + numpylinspace(025)

array([ 0 15 3 45 6 ])

gtgtgt numpyarange(5) 2

array([0 2 4 6 8])

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 15 88

Selezioni di un sottoinsieme di elementi

Ad un array e possibile accedere in tutti i modi con cui e possibile accederead una lista ad esempio

Ottenere una tupla di elementi

gtgtgt a[2] a[-1] a[36]

(2 9 array([3 4 5]))

Slicing [startstopstep]

gtgtgt a[293]

array([2 5 8])

gtgtgt a[2]

array([0 2 4 6 8])

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 16 88

Accesso con maschere booleane

Specificando tra [ ] un array di tipo booleano selezioniamo dallrsquoarray glielementi la cui posizione corrisponde ad un True nellrsquoarray di tipobooleano (che prende il nome di maschera)

gtgtgt a = numpyarange(10)

gtgtgt mask = a2 == 0

gtgtgt mask

array([ True False True False True False True

False True False] dtype=bool)

gtgtgt a[mask]

array([0 2 4 6 8])

o in maniera piu compatta

gtgtgt a[a2 == 0]

array([0 2 4 6 8])

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 17 88

Esercizi

1 Lanciare uno script che stampi il vostro nome e cognome

2 Creare un array i cui elementi siano gli interi che compongono ilvostro numero di matricola

3 Sia X la lunghezza dellrsquoarray del punto precedente Creare un array diX elementi equispaziati lrsquouno dallrsquoaltro di 15

4 Creare un array di X elementi equispaziati nellrsquointervallo tra 1 e 3

5 Ottenere gli array dati dalla somma tra lrsquoarray del punto 2 e quello delpunto 3 e quello dato dalla moltiplicazione tra punto 3 e punto 4

6 Ottenere per ciascuno dei due array del punto 5 un array mascherache in corrispondenza dei numeri divisibili per 3 abbia True Falsealtrimenti

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 18 88

Pandas - Series (1)

Pandas (httpspandaspydataorg) e una libreria Python chefornisce strutture dati e strumenti relativi esclusivamente allrsquoanalisi deidatiUna Series e un array monodimensionale ed etichettato Rappresenta unaserie di osservazioni di un certo carattere fatto su un insieme di individui

a 00

b 10

c 20

d 30

e 40

f 50

g 60

h 70

Name serie di esempio dtype float64

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 19 88

Pandas - Series (2)

pandasSeries (data index dtype name )

data contiene i dati che si vuole inserire nella serie

index della stessa lunghezza di data contiene le etichette

dtype permette di specificare il tipo che i dati devono assumere

name permette di dare un nome alla Series

gtgtgt import pandas as pd

gtgtgt import numpy as np

gtgtgt oss = nparange(8)

gtgtgt etic = [rsquoarsquorsquobrsquorsquocrsquorsquodrsquorsquoersquorsquofrsquorsquogrsquorsquohrsquo]

gtgtgt pdSeries(data=oss index=etic name=rsquoserie di esempiorsquo

dtype=float)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 20 88

Accesso ai dati di una Series

Specificando un valore (o una lista di valori) per lrsquoetichetta

gtgtgt sloc[[rsquohrsquorsquoarsquo]]

h 70

a 00

Specificando un valore (o una lista di valori) per la posizione

gtgtgt s[[56]]

f 50

g 60

Usando lo slicing (come per gli array numpy) per la posizione

gtgtgt s[36]

d 30

e 40

f 50

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 21 88

Pandas Series - Utils

Seriesmin() Seriesmax() restituiscono rispettivamente il minimoed massimo tra i valori della Series

Seriessum() restituisce la somma dei valori della Series

Seriessort values() restituisce una copia della Series ordinata pervalore

Seriessort index() restituisce una copia della Series ordinata peretichette

Seriessample(n) restituisce una Series di n elementi sceltiuniformemente a caso allrsquointerno di quelli della Series

Seriesappend([s1s2]) concatena una o piu Series a quella dipartenza

Seriescount() restituisce il numero dei valori della Series che nonsiano il valore NaN

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 22 88

Il valore NaN

Nan un oggetto del modulo numpy che puo rappresentare in una Seriesun dato di cui non e stato possibile fare unrsquoosservazioneOperazioni con un valore Nan hanno come risultato il valore Nan

gtgtgt oss = range(5)

gtgtgt ossappend(None)

gtgtgt pandasSeries(oss)

0 00

1 10

2 20

3 30

4 40

5 NaN

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 23 88

Esercizi

Creare la Series gol in modo che le etichette siano numeri dallrsquo1 al 23 Idati raccolti siano numeri interi tra 0 e 30 scelti casualmente (scarica ilnotebook) La Series rappresenta i gol segnati da ciascun giocatore diuna societa calcistica nella stagione appena passata Lrsquoetichettacorrisponde al numero di maglia del giocatore Ottenere

1 I gol segnati dal capocannoniere2 Chi non ha mai fatto gol durante lrsquoanno3 La statistica del punto 2 per i soli titolari (numeri dallrsquo1 allrsquo11) e per

le sole riserve (dal 12 al 23)4 La statistica del punto 2 per i soli attaccanti (numeri dalrsquo9 allrsquo11)5 I gol segnati dai giocatori coi numeri di maglia 5 9 10 14 (somma)6 Chi ha segnato piu di 10 gol e chi ha segnato esattamente 10 gol7 Una copia della Series ordinata secondo i gol effettuati8 Una stampa dei primi 5 cannonieri e degli ultimi 59 Una copia della Series ordinata in modo discendente secondo il

numero di maglia

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 24 88

File csv

Il formato csv (comma-separated value) e un formato utilizzato perrappresentare una tabella di dati e favorirne lrsquoimportazione e lrsquoesportazioneUn file csv e scritto nella seguente forma

titolopaeseannoduratagenerevoto

Guerre StellariUSA1977121Fantascienza4

Lrsquoimpero colpisce ancoraUSA1980124Fantascienza4

Il ritorno dello JediUSA1983Fantascienza35

Profondo RossoITA1975Horror35

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 25 88

Leggere csv

La funzione read csv() di Pandas puo essere utilizzata per leggere unfile di formato csv Tra i vari parametri che passiamo in input unoparticolarmente importante e sep che indica il carattere utilizzato perseparare le colonne (default e rsquorsquo)

gtgtgt df film = pdread csv(rsquofilmcsvrsquo)

gtgtgt df film

titolo paese anno durata genere voto

Il padrino USA 19720 1750 Drammatico 45

Pulp Fiction USA 19940 1540 Drammatico 40

Fight Club USA 19990 1390 Thriller 40

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 26 88

DataFrame

In Pandas un DataFrame e una struttura dati tabulare con assi etichettatile cui colonne possono contenere dati eterogenei da colonna a colonna

gtgtgt dataframe

esempio

Nome Cognome Eta Citta

Tommaso Rossi 300 Milano

Sergio Bianchi 340 Roma

Pasquale Verdi 290 Palermo

Antonio Gialli 300 Roma

Il DataFrame puo essere visto come un insieme di serie aventi lo stessoindice accostate una allrsquoaltra

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 27 88

Accesso colonne DataFrame - 1

Per conoscere le colonne di un DataFrame possiamo invocare il comandodfcolumns dove df e la variabile in cui abbiamo instanziato ilDataFramePer accedere ad una colonna dobbiamo specificarne il nome nel seguentemodo

gtgtgt df film[rsquogenerersquo]

titolo

Il padrino Drammatico

Pulp Fiction Drammatico

Fight Club Thriller

Selezionando unrsquounica colonna in output viene restituita una Series

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 28 88

Accesso colonne DataFrame - 2

Possiamo accedere allo stesso tempo a piu colonne

gtgtgt df film[[rsquopaesersquorsquoannorsquo]]

titolo paese anno

Il padrino USA 19720

Pulp Fiction USA 19940

Fight Club USA 19990

Selezionando piu colonne in output viene restituito un DataFrame

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 29 88

Accesso righe DataFrame - 1

Per indice numerico

gtgtgt df film[1518]

titolo paese anno durata genere voto

Il padrino USA 19720 1750 Drammatico 45

Pulp Fiction USA 19940 1540 Drammatico 40

Fight Club USA 19990 1390 Thriller 40

Quasi Amici FRA 20110 1120 Commedia 35

Per valore dellrsquoindice (assumiamo che titolo sia lrsquoindice delDataFrame)

gtgtgt df film[rsquoIl padrinorsquorsquoFight Clubrsquo]

titolo paese anno durata genere voto

Il padrino USA 19720 1750 Drammatico 45

Pulp Fiction USA 19940 1540 Drammatico 40

Fight Club USA 19990 1390 Thriller 40

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 30 88

loc amp iloc

Cosı come per le Series anche con i DataFrame possiamo usare loc ediloc per lrsquoaccesso ai dati

loc[rsquonome indicersquo] permette lrsquoaccesso ad una riga o piu righetramite nome dellrsquoindice

iloc[rsquoposizionersquo] permette lrsquoaccesso ad una o piu righe tramitela loro posizione

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 31 88

Accesso tramite unrsquoespressione logica

gtgtgt df film[rsquoannorsquo gt 1998]

titolo

Il padrino False

Pulp Fiction False

Fight Club True

Quasi Amici True

gtgtgt df film[df film[rsquoannorsquo] gt 1998]

titolo paese anno durata genere voto

Fight Club USA 19990 1390 Thriller 40

Quasi Amici FRA 20110 1120 Commedia 35

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 32 88

Metodi dei DataFrame

La classe DataFrame ha diversi metodi Elenchiamo qui i piu importanti

DataFrameappend() permette di estendere il DataFrame

DataFramedrop duplicates() restituisce un DataFrame senza righeduplicate

DataFramedropna() Eliminare i valori Nan da un DataFrame

DataFramesort values() permette di ordinare il DataFrame

DataFramemax() DataFramemin() DataFramemean()DataFramemedian()

Per la completa documentazione si puo utilizzare il comandohelp(pdDataFrame) oppure andare al seguente linkhttpspandaspydataorgpandas-docsstablegenerated

pandasDataFramehtml

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 33 88

Frequenze

La frequenza assoluta indica il numero di volte che una dataosservazione occorre in un campione

La frequenza relativa e un valore tra 0 e 1 che permette di valutare inmaniera piu efficace la frequenza di un osservazione Si calcoladividendo la frequenza assoluta per il numero totale di casi

Per calcolare questa quantita in Pandas possiamo utilizzare la funzionevalue counts() che opera su una Series

In alternativa si puo utilizzare la funzione pdcrosstab che calcolaqueste frequenze in automatico restituendole in output in un DataFrame

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 34 88

Esercizi

Utilizzando il file dati-ospedalicsv dai csv del laboratorio

1 Leggere il file e visualizzarlo in un DataFrame

2 Calcolare le frequenze assolute e relative dellrsquoattributo Regioneusando crosstab

3 Ottenere la singola serie relativa allrsquoattributo Regione e calcolarne lafrequenza assoluta e relativa senza usare crosstab

4 Estrarre un sottodataframe contenente le colonne Nome (attributoDenominazione Str Pubblica New) e Numero di medici (attributoMedici SSN) degli ospedali aventi meno di 200 medici

5 Visualizzare il nome degli ospedali della regione Lombardia

6 Calcolare il numero medio di ingegneri (Ingegneri SSN) presenti negliospedali campani

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 35 88

Esercizi

7 Calcolare la varianza del numero di assistenti sociali (Assistenti socialiSSN) negli ospedali con piu di 400 medici

8 Qual e lrsquoospedale con meno medici

9 Visualizzare in ordine alfabetico il nome dei primi 10 ospedali pernumero di medici

10 Visualizzare il numero degli ospedali che hanno dichiarato il numerodi odontoiatri (per cui il valore e diverso da NaN) (OdontoiatriUniversitari)

11 Visualizzare il numero degli ospedali che hanno dichiarato il numerodi odontoiatri (Odontoiatri Universitari) e per cui questo numero emaggiore di 0

12 Calcolare le frequenze assolute per lrsquoattributo Odontoiatri SSNTrasformare questo risultato in frequenze relative

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 36 88

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) SAD 20182019 January 12 2019 37 88

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) SAD 20182019 January 12 2019 38 88

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) SAD 20182019 January 12 2019 39 88

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) SAD 20182019 January 12 2019 40 88

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) SAD 20182019 January 12 2019 41 88

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) SAD 20182019 January 12 2019 42 88

Grafici con le Series

In generale possiamo tracciare diversi tipi di grafici con le Series

rsquolinersquo line plot (default)

rsquobarrsquo vertical bar plot

rsquobarhrsquo horizontal bar plot

rsquohistrsquo histogram

rsquoboxrsquo boxplot

rsquokdersquo Kernel Density Estimation plot

rsquodensityrsquo same as rsquokdersquo

rsquoarearsquo area plot

rsquopiersquo pie plot

Per saperne di piu consultare questo link

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 43 88

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) SAD 20182019 January 12 2019 44 88

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) SAD 20182019 January 12 2019 45 88

Boxplot

Rappresenta la distribuzione di un vettore di numeri cerchiando gli outlier

gtgtgt weight = heroes[rsquoWeightrsquo]

gtgtgt weightplotbox()

gtgtgt pltshow()

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 46 88

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) SAD 20182019 January 12 2019 47 88

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) SAD 20182019 January 12 2019 48 88

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) SAD 20182019 January 12 2019 49 88

Esercizi - 1

Utilizzando il file capellicsv dai csv del laboratorio

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) SAD 20182019 January 12 2019 50 88

Esercizi - 2

Utilizzando il file dati-ospedalicsv dai csv del laboratorio

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 e canipdf

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 51 88

Sample space

Un esperimento e qualsiasi processo che produce una realizzazione (oosservazione) Lrsquoinsieme di tutte le possibili realizzazioni di un esperimentoviene detto sample space ed indicato con S

lancio di 2 monete

S = (T T ) (T C) (C T ) (C C)

gara di 3 cavalli (ab c)

S = tutti i possibili ordinamenti di(ab c)= (ab c) (a cb) (c b a)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 52 88

Eventi

lancio di 2 monete

S = (T T ) (T C) (C T ) (C C)

A = 2 monete uguali

A = (T T ) (C C)

B = 2 monete diverse

B = Ac = (T C) (C T )

gara di 3 cavalli

A = cavallo a vincente

A = (ab c) (a c b)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 53 88

Probabilita - 1

Consideriamo un esperimento con sample space S Supponiamo che adogni evento A sia associato un numero chiamato probabilita di A edindicato con P(A) che soddisfa le seguenti proprieta

1 Per ogni evento A la probabilita di A e un numero tra 0 e 1

0 le P(A) le 1

2 La probabilita del sample space S e 1

P(S) = 1

3 La probabilita dellrsquounione di eventi disgiunti e uguale alla somma delleprobabilita di tali eventi

P(A cupB) = P(A) + P(B)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 54 88

Probabilita - 2

In generale 2 eventi potrebbero non essere disgiunti

P(A cupB) = P(A) + P(B) minus P(A capB)

Esempio un certo negozio accetta pagamenti o con carte di credito VISAo Mastercard

1 22 dei clienti ha Mastercard

2 58 dei clienti ha VISA

3 14 dei clienti ha entrambe

Qual e la probabilita che un cliente ha almeno una delle 2 carte

P(A) = 022 P(B) = 058

P(A cupB) = P(A) + P(B) minus P(A capB) = 022 + 058 minus 014 = 066

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 55 88

Probabilita condizionata - 1

Se alcune informazioni riguardo lrsquoesito di un esperimento sono disponibiliparliamo di probabilita condizionata

Esempio lancio di 2 dadi

S = (11) (12) (65) (66)

Probabilita che la somma sia 10 (evento B) sapendo che il primo dadomostra 4 (evento A)

(41) (42) (43) (44) (45) (46)

P(B ∣A) = 16

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 56 88

Probabilita condizionata - 2

In generale

P(B ∣A) = P(A capB)P(A)

Supponiamo lrsquoesito sia in A

Per essere anche in B deve essere in entrambi A e B cioe in A capB

Sapendo che A e gia accaduto il nostro nuovo sample space diventa A

la probabilita di A capB viene calcolata rispetto ad A

Nel caso dei dadi

P(B ∣A) = P((46))P((41) (42) (43) (44) (45) (46)) = 136

16= 1

6

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 57 88

Indipendenza

In generale sapere che A e accaduto modifica le chance che B accadaNel caso cio non avvenga cioe se P(B ∣A) = P(B) allora i 2 eventi sidicono indipendenti In questo caso sapere che A e accaduto nonaggiunge alcuna informazione

SiccomeP(A capB) = P(B ∣A)P(A)

Abbiamo che B e indipendente da A se

P(A capB) = P(B)P(A)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 58 88

Esercizi - 1

1 Svolgere gli esercizi di combinatoria

2 Si consideri il seguente esperimento casuale rdquosi lancia tre volte unamonetardquo Qual e lo spazio degli esiti di questo esperimento casualeSi scriva esplicitamente lrsquoevento rdquosi ottengono piu teste che crocirdquo

3 Si consideri il seguente esperimento casuale rdquoSi tirano due dadirdquo Siconsiderino gli eventi E = rdquola somma dei punteggi e disparirdquo F = rdquoilprimo dado realizza un 1rdquo e G = rdquola somma dei punteggi e 5rdquo Sidescrivano gli eventi E cap F E cup F F capG E cap F c e E cap F capG

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 59 88

Esercizi - 2

4 Si consideri il seguente esperimento casuale rdquoUn sistema e compostoda 4 componenti ciascuno dei quali o funziona oppure e guasto Siosserva lo stato dei componenti ottenendo un vettore (x1 x2 x3 x4)dove xi e 1 oppure 0 a seconda che il componente i-esimo funzionioppure nordquo

1 Da quanti elementi e formato lo spazio degli esiti2 Il sistema nel suo insieme funziona fintantoche entrambi i componenti

1 e 2 oppure entrambi i componenti 3 e 4 funzionano Specifica tuttigli esiti dellrsquoevento il rdquosistema funzionardquo

3 Sia E lrsquoevento rdquoi componenti 1 e 3 sono guastirdquo Quanti esiti contiene

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 60 88

Esercizi - 3

5 Si dimostri che in uno spazio degli esiti Ω dotato di una probabilita Pper ogni evento E F sub Ω vale la disuguaglianza seguente

P(E cap F ) ge P(E) + P(F ) minus 1

6 Un gruppo di 5 bambini e 10 bambine e in fila in ordine casuale nelsenso che tutte le 15 possibili permutazioni si suppongonoequiprobabili

1 Qual e la probabilita che il quarto della fila sia un bambino2 E il dodicesimo3 Qual e la probabilita che un determinato bambino occupi la terza

posizione

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 61 88

Esercizi - 4

7 In un comune vi sono 5 alberghi Se 3 persone devono scegliere unalbergo in cui pernottare qual e la probabilita che finiscano tutte inalberghi differenti Che cosa stiamo assumendo senza dirloesplicitamente

8 La media del salario annuale di un gruppo di 100 lavoratori impiegatinellrsquoamministrazione di una grande azienda e di 130000 dollari conuna deviazione standard di 20000 dollari Se si prende una persona acaso da questo gruppo cosa possiamo dire sulla probabilita che il suosalario sia

1 tra i 90000 e i 170000 dollari2 superiore a 150000 dollari

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 62 88

Esercizi - 5

9 In una certa regione vi sono due ditte che producono forni amicroonde Quelli della fabbrica A sono difettosi con probabilita 005mentre quelli della fabbrica B con probabilita 001 Supponi di averacquistato due apparecchi prodotti dalla stessa ditta che puo essere laA o la B con probabilita del 50 Se il primo microonde e difettosoqual e la probabilita condizionata che sia difettoso anche il secondo

10 Hai chiesto ad un vicino di innaffiare una piantina delicata mentre seiin vacanza Pensi che senza acqua la piantina muoia con probabilita08 mentre se innaffiata questa probabilita si ridurrebbe a 015 Latua fiducia che il vicino si ricordi di innaffiarla e del 90

1 Qual e la probabilita che la pianta sia ancora viva al tuo ritorno2 Se fosse morta quale sarebbe la probabilita che il vicino si sia

dimenticato di innaffiarla

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 63 88

Esercizi - 6

11 Una compagnia di assicurazioni classifica i suoi clienti in tre fascebasso rischio medio rischio alto rischio Le sue statistiche indicanoche le probabilita che un cliente delle tre fasce abbia un incidenteentro un periodo di un anno sono rispettivamente 005 015 e 030Se il 20 dei clienti sono a basso rischio il 50 a medio rischio e il30 ad alto rischio che percentuale dei clienti avra mediamenteincidenti in un lasso di un anno Se un cliente non ha avuto incidentinel 1987 qual e la probabilita che appartenga a ciascuna delle trefasce

12 Se un votante scelto a caso e favorevole ad una certa riforma conprobabilita di 07 qual e la probabilita che su 10 votanti esattamente7 siano favorevoli

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 64 88

Variabili aleatorie

Una variabile aleatoria (o anche variabile aleatoria) e una variabile chepuo assumere valori diversi in dipendenza da qualche fenomeno aleatorio

fenomeno lancio di 2 dadivariabile aleatoria somma dei 2 dadi

fenomeno 3 lanci di una monetavariabile aleatoria numero di rdquotesterdquo complessivo

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 65 88

Funzione di Ripartizione

Sia X una variabile aleatoria Si chiama funzione di ripartizione di X lafunzione F che associa ad ogni numero reale a la probabilita che X siaminore o uguale ad a cioe P(X le a) = FX (a)

Nel caso della moneta (fair) lanciata 3 volte (X indica il numero di testecomplessivo)

FX (a) =

⎧⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎨⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎩

0 if a lt 0

18 per 0 le a lt 1

18 + 38 = 48 per 1 le a lt 2

48 + 38 = 78 per 2 le a lt 3

88 = 1 per a ge 3

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 66 88

Funzione di densita o di massa

Sia X una variabile aleatoria Si chiama funzione di densita di X lafunzione f che associa ad ogni numero reale a la probabilita che X siauguale ad a indicata con fX (a)

Nel caso della moneta (fair) lanciata 3 volte (X indica il numero di testecomplessivo)

fX (a) =

⎧⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎨⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎩

18 per a = 0

38 per a = 1

38 per a = 2

18 per a = 3

0 altrimenti

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 67 88

Valore Atteso

Chiamato anche media (expectation in inglese) e appunto una mediapesata dei possibili valori di una variabile aleatoria Il peso dato a ciascunvalore e la probabilita data a quello specifico valore

E[X ] =sumi

aiP(X = ai)

Esempio dado truccato

valore 6 con probabilita 712

valori da 1 a 5 con probabilita 112

La variabile aleatoria X indica la faccia risultante dal lancio di un dado

E[X ] = 1

12lowast 1 + 1

12lowast 2 + 1

12lowast 3 + 1

12lowast 4 + 1

12lowast 5 + 7

12lowast 6 = 475

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 68 88

Valore Atteso - Proprieta

Sia X una variabile aleatoria con valore atteso E[X ] Se c e una costanteallora anche cX e X + c sono variabili casuali In particolare valgono leseguenti proprieta

E[cX ] = cE[X ]E[X + c] = E[X ] + c

Sia Y una variabile aleatoria Allora

E[X +Y ] = E[X ] +E[Y ]se e solo se X e Y sono independenti

E[XY ] = E[X ]E[Y ]

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 69 88

Varianza

Ersquo il valore atteso del quadrato della differenza tra la variabile aleatoria e ilsuo valore atteso

Var(X ) = E[(X minusE[X ])2] = E[X 2] minus (E[X ])2

La radice quadrata viene detta deviazione standard di X

Esempio dado truccato

E[X 2] = 1

12lowast 12 + 1

12lowast 22 + 1

12lowast 32 + 1

12lowast 42 + 1

12lowast 52 + 7

12lowast 62 ≃ 255

Var(X ) = E[X 2] minus (E[X ])2 ≃ 255 minus 4752 ≃ 3

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 70 88

Varianza - proprieta

Sia X una variabile aleatoria e c una costante Allora valgono le seguentiproprieta

1 Var(cX ) = c2Var(X )

2 Var(X + c) = Var(X )

NOTA

Var(X +X ) ne Var(X ) +Var(X )

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 71 88

Covarianza

Siano X Y due variabili aleatorie con valore atteso rispettivamenteE[X ] = microX e E[Y ] = microY La covarianza e definita come segue

Cov(X Y ) = E[(X minus microX )(Y minus microY )] = = E[XY ] minus microXmicroY

Proprieta

1 Cov(X Y ) = Cov(Y X )2 Cov(X X ) = Var(X )3 Sia a una costante allora

Cov(aX Y ) = aCov(X Y )

4 Sia Z una variabile aleatoria allora

Cov(X + Z Y ) = Cov(X Y ) + Cov(Z Y )

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 72 88

Esercizi - 1

1 Consideriamo una variabile aleatoria X che puo assumere i valori 12o 3 Se sappiamo che

fX (1) = 1

3 fX (2) = 3

7

1 Quanto vale fX (3)2 Disegnare il grafico di questa funzione di massa3 Disegnare il grafico della relativa funzione di ripartizione

2 Dimostrare che se X1 e X2 hanno la stessa distribuzione allora

Cov(X1 +X2X1 minusX2) = 0

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 73 88

Esercizi - 2

3 La funzione di ripartizione di X e definita come segue

FX (x) =

⎧⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎨⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎩

0 per x le 0

x2 per 0 le x lt 1

23 per 1 le x lt 2

1112 per 2 le x lt 3

1 per x ge 3

Se ne tracci il graficoQuanto vale P(X gt 12)Quanto vale P(2 le X le 4)Quanto vale P(X le 3)Quanto vale P(X = 1)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 74 88

Esercizi - 3

4 Un tipo di prodotti vengono classificati a seconda dei loro difetti edella fabbrica che li ha prodotti Sia X1 il numero (1 o 2) dellafabbrica e sia X2 il numero di difetti per pezzo (che possono essere da0 a 3) di un prodotto scelto a caso tra la totalita di quelli esistentiLa tabella seguente riporta la funzione di massa di probabilitacongiunta per queste due variabili aleatorie discrete Le righe siriferiscono alla variabile X1 mentre le colonne alla variabile X2

Trova le distribuzioni marginali di X1 e X2Calcola media e varianza di X2

0 1 2 31 18 116 316 182 116 116 18 14

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 75 88

Scipy

Scipy e un modulo che permette di utilizzare varie distribuzioni diprobabilita sia di tipo discreto che continuo

La sintassi generale e la seguente Scipystatsltnome distribuzionegt

rvs(size=z) restituisce un vettore di numeri casuali estrattisecondo la distribuzione di lunghezza z

pdf(x) restituisce il vettore della densita della distribuzionevalutata nei valori del vettore di input x (pmf per le discrete)

cdf(x) restituisce il vettore della funzione di ripartizione (ocumulativa) della distribuzione valutata nei valori del vettore di inputx

ppf(q) restituisce il vettore dei quantili della distribuzione valutatanei valori del vettore di input q

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 76 88

Variabili aleatorie discrete Binomiale

gtgtgt from scipystats import binom

gtgtgt rv = binom(n p)

rvrvs(x) restituisce un vettore di x numeri estratti secondo unadistribuzione Binomiale di parametri n p

rvpmf(x) restituisce la probabilita di ottenere esattamente x

successi in un esperimento dicotomico (01) ripetuto n volte con unaprobabilita di successo p (x puo essere un vettore)

rvcdf(q) restituisce il valore della funzione di ripartizione in q (qpuo essere un vettore)

rvppf(p) restituisce il valore del quantile di ordine p

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 77 88

Variabili aleatorie discrete Ipergeometrica

Supponiamo di avere M = 20 animali di cui n = 7 cani Se vogliamosapere la probabilita di trovare un dato numero di cani se scegliamoN = 12 dei 20 animali in maniera casuale possiamo usare una distribuzioneipergeometrica in questo modo

gtgtgt from scipystats import hypergeom

gtgtgt [M n N] = [20 7 12]

gtgtgt rv = hypergeom(M n N)

rvpmf(x) restituisce la probabilita di estrarre esattamente x cani

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 78 88

Variabili aleatorie discrete Geometrica

gtgtgt from scipystats import geom

gtgtgt rv = geom(p)

rvpmf(x) restituisce la probabilita di avere un successo dopoesattamente x insuccessi in una successione di esperimenti dicotomici(esito 01) con una probabilita di successo p (x puo essere un vettore)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 79 88

Variabili aleatorie discrete Poisson

La distribuzione di Poisson viene usata spesso come modello per il numerodi volte per cui un evento avviene in un dato intervallo di tempo (ospazio) Ad esempio si puo utilizzare per misurare il numero di chiamatericevute da un call center in una mattinata

gtgtgt from scipystats import poisson

gtgtgt mu = 2

gtgtgt rv = poisson(mu)

rvpmf(x) restituisce il seguente valore

f (x) = exp(minusmicro)microx

x

In questo caso x rappresenta il numero di eventi per cui si vuole calcolarela probabilita sapendo che in media ne accadono micro

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 80 88

Variabili aleatorie continue Uniforme

In Scipy la funzione uniforme e soltanto continua Questo significa chenella generazione di numeri casuali otterro dati di tipo float Possiamotuttavia simulare una variabile discreta estraendo la parte intera delrisultato ottenuto

gtgtgt from scipystats import uniform

gtgtgt rv = uniform()

Il comando uniform() crea una distribuzione uniforme nellrsquointervallo[01] Possiamo creare una distribuzione uniforme qualsiasi usandouniform(x y - x) per lrsquointervallo [x y]

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 81 88

Variabili aleatorie continue

norm(mu sigma) variabile Gaussiana (o Normale) di media micro edeviazione standard σ

expon(scale = 1 lambda) variabile Esponenziale di parametroλ

Altre distribuzioni (con relativa documentazione) disponibili suhttpsdocsscipyorgdocscipyreferencestatshtml

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 82 88

Esercizi - 1

1 Unrsquourna contiene 10 palline di cui 4 bianche e 6 nere Si eseguono 5estrazioni con reimmissione

1 Tracciare grafico della funzione massa di probabilita della variabilecasuale X = rdquonumero di palline bianche estratterdquo

2 Calcolare la probabilita di estrarre 2 palline bianche3 Calcolare la probabilita di estrarre al piu 2 palline bianche4 Calcolare la probabilita di estrarre almeno 2 palline bianche5 Qual e il numero minimo x tale che la probabilita di estrarre al piu x

palline bianche sia almeno 08

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 83 88

Esercizi - 2

2 Si eseguono 10 estrazioni senza reimmissione da unrsquourna

1 Tracciare il grafico della funzione massa di probabilita della variabilecasuale X = rdquonumero di palline bianche estratterdquo nei seguenti casi

1 lrsquourna contiene 100 palline di cui 20 bianche e le restanti nere2 lrsquourna contiene 100 palline di cui 2 bianche e le restanti nere

2 Tracciare il grafico della funzione massa di probabilita della variabilecasuale X nel caso dellrsquourna 1 se si eseguono 25 estrazioni

3 Consideriamo lrsquourna 1 e N = 10 estrazioni Si aumenti il numero totaleM di palline nellrsquourna mantenendo uguale a 02 la frazione di pallinebianche Per ciascun valore di M confrontare graficamente ladistribuzione di probabilita del numero di palline bianche estratte nelcaso di estrazioni con e senza reimmissione Provare con 20 40 e 200palline bianche

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 84 88

Esercizi - 3

3 Calcolare la probabilita di ottenere piu teste che croci lanciando 7volte una moneta truccata con probabilita di avere croce pari a 045

4 Calcolare la probabilita di avere almeno 3 sei lanciando 5 dadi a 12facce

5 Calcolare la probabilita di estrarre 20 euro da un sacco contenente 47monete da 1 centesimo e 53 da 2 euro estraendo (uniformemente) acaso 10 monete senza reinserirle

6 Un grammo di uranio emette mediamente 2152 particelle α ognimillisecondo Qual e con buona approssimazione la probabilita che ungrammo di uranio emetta al piu 2000 particelle α in un millisecondo

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 85 88

Esercizi - 4

7 Un uomo si risveglia in mezzo al deserto senza acqua Dopo ogniminuto ha una probabilita del 3 di perdere conoscenza per via dellecondizioni estreme Calcolare la probabilita che lrsquouomo perdaconoscenza dopo almeno due ore e la probabilita che lrsquouomo perdaconoscenza dopo esattamente un quarto drsquoora

8 Sia X una variabile aleatoria normale di parametri micro = 10 e σ = 36Calcola

1 P(X gt 5)2 P(4 le X le 16)3 P(X le 8)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 86 88

Esercizi - 5

9 Il numero di errori tipografici per pagina di una certa rivista segue unadistribuzione di Poisson Sapendo che mediamente sono presenti 02errori per pagina determinare la probabilita che una pagina contenga

1 nessun refuso2 piu refusi

10 Arrivi alla fermata dellrsquoautobus alle 1000 e sei certo che ne passerauno in un momento distribuito uniformemente tra le 1000 e le 1030

1 Qual e la probabilita che tu debba aspettare piu di 10 minuti2 Se alle 1015 lrsquoautobus non e ancora arrivato qual e la probabilita che

tu debba aspettare almeno altri 10 minuti

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 87 88

Esercizi - 6

11 Il signor Jones e convinto che il tempo di vita di una automobile (inmigliaia di chilometri percorse) sia una variabile aleatoria esponenzialedi parametro 120 Il signor Smith ha una macchina usata da vendereche ha percorso circa 10 000 chilometri

1 Se il signor Jones decide di comprarla che probabilita ha di farle farealmeno altri 20 000 chilometri prima che sia da buttare

2 Il modello assunto dal signor Jones e ragionevole

12 Sia X una variabile casuale binomiale di parametri n = 100 e p = 07

1 Tracciate la funzione di ripartizione di X2 Calcolate il primo quartile il quantile di ordine 09 e la mediana di X3 Calcolare la probabilita P(X le 60)4 Calcolare la probabilita P(X le 88)5 Trovare il piu piccolo valore x tale che P(X le x) ge 09

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 88 88

  • Lezione 1
    • Script in Python
    • Numpy
    • Esercizi
    • Pandas
    • Esercizi
      • Lezione 2
        • File csv
        • DataFrame
        • Accesso ai DataFrame
        • Frequenze
        • Esercizi
          • Lezione 3
            • Matplotlib
            • Grafici a Barre
            • Istogrammi
            • Cumulativa empirica
            • Boxplot
            • QQplot
            • Diagramma di Pareto
            • Esercizi
              • Lezione 4
                • Definizioni
                • Probabilitagrave condizionata
                • Indipendenza
                • Esercizi
                  • Lezione 5
                    • Variabili Aleatorie
                    • Funzione di Ripartizione
                    • Funzione di Densitagrave
                    • Valore Atteso
                    • Varianza
                    • Covarianza
                    • Esercizi
                      • Lezione 6
                        • Scipy - Variabili Discrete
                        • Scipy - Variabili continue
                        • Esercizi

Selezioni di un sottoinsieme di elementi

Ad un array e possibile accedere in tutti i modi con cui e possibile accederead una lista ad esempio

Ottenere una tupla di elementi

gtgtgt a[2] a[-1] a[36]

(2 9 array([3 4 5]))

Slicing [startstopstep]

gtgtgt a[293]

array([2 5 8])

gtgtgt a[2]

array([0 2 4 6 8])

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 16 88

Accesso con maschere booleane

Specificando tra [ ] un array di tipo booleano selezioniamo dallrsquoarray glielementi la cui posizione corrisponde ad un True nellrsquoarray di tipobooleano (che prende il nome di maschera)

gtgtgt a = numpyarange(10)

gtgtgt mask = a2 == 0

gtgtgt mask

array([ True False True False True False True

False True False] dtype=bool)

gtgtgt a[mask]

array([0 2 4 6 8])

o in maniera piu compatta

gtgtgt a[a2 == 0]

array([0 2 4 6 8])

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 17 88

Esercizi

1 Lanciare uno script che stampi il vostro nome e cognome

2 Creare un array i cui elementi siano gli interi che compongono ilvostro numero di matricola

3 Sia X la lunghezza dellrsquoarray del punto precedente Creare un array diX elementi equispaziati lrsquouno dallrsquoaltro di 15

4 Creare un array di X elementi equispaziati nellrsquointervallo tra 1 e 3

5 Ottenere gli array dati dalla somma tra lrsquoarray del punto 2 e quello delpunto 3 e quello dato dalla moltiplicazione tra punto 3 e punto 4

6 Ottenere per ciascuno dei due array del punto 5 un array mascherache in corrispondenza dei numeri divisibili per 3 abbia True Falsealtrimenti

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 18 88

Pandas - Series (1)

Pandas (httpspandaspydataorg) e una libreria Python chefornisce strutture dati e strumenti relativi esclusivamente allrsquoanalisi deidatiUna Series e un array monodimensionale ed etichettato Rappresenta unaserie di osservazioni di un certo carattere fatto su un insieme di individui

a 00

b 10

c 20

d 30

e 40

f 50

g 60

h 70

Name serie di esempio dtype float64

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 19 88

Pandas - Series (2)

pandasSeries (data index dtype name )

data contiene i dati che si vuole inserire nella serie

index della stessa lunghezza di data contiene le etichette

dtype permette di specificare il tipo che i dati devono assumere

name permette di dare un nome alla Series

gtgtgt import pandas as pd

gtgtgt import numpy as np

gtgtgt oss = nparange(8)

gtgtgt etic = [rsquoarsquorsquobrsquorsquocrsquorsquodrsquorsquoersquorsquofrsquorsquogrsquorsquohrsquo]

gtgtgt pdSeries(data=oss index=etic name=rsquoserie di esempiorsquo

dtype=float)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 20 88

Accesso ai dati di una Series

Specificando un valore (o una lista di valori) per lrsquoetichetta

gtgtgt sloc[[rsquohrsquorsquoarsquo]]

h 70

a 00

Specificando un valore (o una lista di valori) per la posizione

gtgtgt s[[56]]

f 50

g 60

Usando lo slicing (come per gli array numpy) per la posizione

gtgtgt s[36]

d 30

e 40

f 50

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 21 88

Pandas Series - Utils

Seriesmin() Seriesmax() restituiscono rispettivamente il minimoed massimo tra i valori della Series

Seriessum() restituisce la somma dei valori della Series

Seriessort values() restituisce una copia della Series ordinata pervalore

Seriessort index() restituisce una copia della Series ordinata peretichette

Seriessample(n) restituisce una Series di n elementi sceltiuniformemente a caso allrsquointerno di quelli della Series

Seriesappend([s1s2]) concatena una o piu Series a quella dipartenza

Seriescount() restituisce il numero dei valori della Series che nonsiano il valore NaN

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 22 88

Il valore NaN

Nan un oggetto del modulo numpy che puo rappresentare in una Seriesun dato di cui non e stato possibile fare unrsquoosservazioneOperazioni con un valore Nan hanno come risultato il valore Nan

gtgtgt oss = range(5)

gtgtgt ossappend(None)

gtgtgt pandasSeries(oss)

0 00

1 10

2 20

3 30

4 40

5 NaN

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 23 88

Esercizi

Creare la Series gol in modo che le etichette siano numeri dallrsquo1 al 23 Idati raccolti siano numeri interi tra 0 e 30 scelti casualmente (scarica ilnotebook) La Series rappresenta i gol segnati da ciascun giocatore diuna societa calcistica nella stagione appena passata Lrsquoetichettacorrisponde al numero di maglia del giocatore Ottenere

1 I gol segnati dal capocannoniere2 Chi non ha mai fatto gol durante lrsquoanno3 La statistica del punto 2 per i soli titolari (numeri dallrsquo1 allrsquo11) e per

le sole riserve (dal 12 al 23)4 La statistica del punto 2 per i soli attaccanti (numeri dalrsquo9 allrsquo11)5 I gol segnati dai giocatori coi numeri di maglia 5 9 10 14 (somma)6 Chi ha segnato piu di 10 gol e chi ha segnato esattamente 10 gol7 Una copia della Series ordinata secondo i gol effettuati8 Una stampa dei primi 5 cannonieri e degli ultimi 59 Una copia della Series ordinata in modo discendente secondo il

numero di maglia

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 24 88

File csv

Il formato csv (comma-separated value) e un formato utilizzato perrappresentare una tabella di dati e favorirne lrsquoimportazione e lrsquoesportazioneUn file csv e scritto nella seguente forma

titolopaeseannoduratagenerevoto

Guerre StellariUSA1977121Fantascienza4

Lrsquoimpero colpisce ancoraUSA1980124Fantascienza4

Il ritorno dello JediUSA1983Fantascienza35

Profondo RossoITA1975Horror35

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 25 88

Leggere csv

La funzione read csv() di Pandas puo essere utilizzata per leggere unfile di formato csv Tra i vari parametri che passiamo in input unoparticolarmente importante e sep che indica il carattere utilizzato perseparare le colonne (default e rsquorsquo)

gtgtgt df film = pdread csv(rsquofilmcsvrsquo)

gtgtgt df film

titolo paese anno durata genere voto

Il padrino USA 19720 1750 Drammatico 45

Pulp Fiction USA 19940 1540 Drammatico 40

Fight Club USA 19990 1390 Thriller 40

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 26 88

DataFrame

In Pandas un DataFrame e una struttura dati tabulare con assi etichettatile cui colonne possono contenere dati eterogenei da colonna a colonna

gtgtgt dataframe

esempio

Nome Cognome Eta Citta

Tommaso Rossi 300 Milano

Sergio Bianchi 340 Roma

Pasquale Verdi 290 Palermo

Antonio Gialli 300 Roma

Il DataFrame puo essere visto come un insieme di serie aventi lo stessoindice accostate una allrsquoaltra

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 27 88

Accesso colonne DataFrame - 1

Per conoscere le colonne di un DataFrame possiamo invocare il comandodfcolumns dove df e la variabile in cui abbiamo instanziato ilDataFramePer accedere ad una colonna dobbiamo specificarne il nome nel seguentemodo

gtgtgt df film[rsquogenerersquo]

titolo

Il padrino Drammatico

Pulp Fiction Drammatico

Fight Club Thriller

Selezionando unrsquounica colonna in output viene restituita una Series

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 28 88

Accesso colonne DataFrame - 2

Possiamo accedere allo stesso tempo a piu colonne

gtgtgt df film[[rsquopaesersquorsquoannorsquo]]

titolo paese anno

Il padrino USA 19720

Pulp Fiction USA 19940

Fight Club USA 19990

Selezionando piu colonne in output viene restituito un DataFrame

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 29 88

Accesso righe DataFrame - 1

Per indice numerico

gtgtgt df film[1518]

titolo paese anno durata genere voto

Il padrino USA 19720 1750 Drammatico 45

Pulp Fiction USA 19940 1540 Drammatico 40

Fight Club USA 19990 1390 Thriller 40

Quasi Amici FRA 20110 1120 Commedia 35

Per valore dellrsquoindice (assumiamo che titolo sia lrsquoindice delDataFrame)

gtgtgt df film[rsquoIl padrinorsquorsquoFight Clubrsquo]

titolo paese anno durata genere voto

Il padrino USA 19720 1750 Drammatico 45

Pulp Fiction USA 19940 1540 Drammatico 40

Fight Club USA 19990 1390 Thriller 40

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 30 88

loc amp iloc

Cosı come per le Series anche con i DataFrame possiamo usare loc ediloc per lrsquoaccesso ai dati

loc[rsquonome indicersquo] permette lrsquoaccesso ad una riga o piu righetramite nome dellrsquoindice

iloc[rsquoposizionersquo] permette lrsquoaccesso ad una o piu righe tramitela loro posizione

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 31 88

Accesso tramite unrsquoespressione logica

gtgtgt df film[rsquoannorsquo gt 1998]

titolo

Il padrino False

Pulp Fiction False

Fight Club True

Quasi Amici True

gtgtgt df film[df film[rsquoannorsquo] gt 1998]

titolo paese anno durata genere voto

Fight Club USA 19990 1390 Thriller 40

Quasi Amici FRA 20110 1120 Commedia 35

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 32 88

Metodi dei DataFrame

La classe DataFrame ha diversi metodi Elenchiamo qui i piu importanti

DataFrameappend() permette di estendere il DataFrame

DataFramedrop duplicates() restituisce un DataFrame senza righeduplicate

DataFramedropna() Eliminare i valori Nan da un DataFrame

DataFramesort values() permette di ordinare il DataFrame

DataFramemax() DataFramemin() DataFramemean()DataFramemedian()

Per la completa documentazione si puo utilizzare il comandohelp(pdDataFrame) oppure andare al seguente linkhttpspandaspydataorgpandas-docsstablegenerated

pandasDataFramehtml

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 33 88

Frequenze

La frequenza assoluta indica il numero di volte che una dataosservazione occorre in un campione

La frequenza relativa e un valore tra 0 e 1 che permette di valutare inmaniera piu efficace la frequenza di un osservazione Si calcoladividendo la frequenza assoluta per il numero totale di casi

Per calcolare questa quantita in Pandas possiamo utilizzare la funzionevalue counts() che opera su una Series

In alternativa si puo utilizzare la funzione pdcrosstab che calcolaqueste frequenze in automatico restituendole in output in un DataFrame

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 34 88

Esercizi

Utilizzando il file dati-ospedalicsv dai csv del laboratorio

1 Leggere il file e visualizzarlo in un DataFrame

2 Calcolare le frequenze assolute e relative dellrsquoattributo Regioneusando crosstab

3 Ottenere la singola serie relativa allrsquoattributo Regione e calcolarne lafrequenza assoluta e relativa senza usare crosstab

4 Estrarre un sottodataframe contenente le colonne Nome (attributoDenominazione Str Pubblica New) e Numero di medici (attributoMedici SSN) degli ospedali aventi meno di 200 medici

5 Visualizzare il nome degli ospedali della regione Lombardia

6 Calcolare il numero medio di ingegneri (Ingegneri SSN) presenti negliospedali campani

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 35 88

Esercizi

7 Calcolare la varianza del numero di assistenti sociali (Assistenti socialiSSN) negli ospedali con piu di 400 medici

8 Qual e lrsquoospedale con meno medici

9 Visualizzare in ordine alfabetico il nome dei primi 10 ospedali pernumero di medici

10 Visualizzare il numero degli ospedali che hanno dichiarato il numerodi odontoiatri (per cui il valore e diverso da NaN) (OdontoiatriUniversitari)

11 Visualizzare il numero degli ospedali che hanno dichiarato il numerodi odontoiatri (Odontoiatri Universitari) e per cui questo numero emaggiore di 0

12 Calcolare le frequenze assolute per lrsquoattributo Odontoiatri SSNTrasformare questo risultato in frequenze relative

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 36 88

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) SAD 20182019 January 12 2019 37 88

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) SAD 20182019 January 12 2019 38 88

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) SAD 20182019 January 12 2019 39 88

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) SAD 20182019 January 12 2019 40 88

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) SAD 20182019 January 12 2019 41 88

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) SAD 20182019 January 12 2019 42 88

Grafici con le Series

In generale possiamo tracciare diversi tipi di grafici con le Series

rsquolinersquo line plot (default)

rsquobarrsquo vertical bar plot

rsquobarhrsquo horizontal bar plot

rsquohistrsquo histogram

rsquoboxrsquo boxplot

rsquokdersquo Kernel Density Estimation plot

rsquodensityrsquo same as rsquokdersquo

rsquoarearsquo area plot

rsquopiersquo pie plot

Per saperne di piu consultare questo link

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 43 88

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) SAD 20182019 January 12 2019 44 88

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) SAD 20182019 January 12 2019 45 88

Boxplot

Rappresenta la distribuzione di un vettore di numeri cerchiando gli outlier

gtgtgt weight = heroes[rsquoWeightrsquo]

gtgtgt weightplotbox()

gtgtgt pltshow()

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 46 88

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) SAD 20182019 January 12 2019 47 88

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) SAD 20182019 January 12 2019 48 88

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) SAD 20182019 January 12 2019 49 88

Esercizi - 1

Utilizzando il file capellicsv dai csv del laboratorio

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) SAD 20182019 January 12 2019 50 88

Esercizi - 2

Utilizzando il file dati-ospedalicsv dai csv del laboratorio

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 e canipdf

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 51 88

Sample space

Un esperimento e qualsiasi processo che produce una realizzazione (oosservazione) Lrsquoinsieme di tutte le possibili realizzazioni di un esperimentoviene detto sample space ed indicato con S

lancio di 2 monete

S = (T T ) (T C) (C T ) (C C)

gara di 3 cavalli (ab c)

S = tutti i possibili ordinamenti di(ab c)= (ab c) (a cb) (c b a)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 52 88

Eventi

lancio di 2 monete

S = (T T ) (T C) (C T ) (C C)

A = 2 monete uguali

A = (T T ) (C C)

B = 2 monete diverse

B = Ac = (T C) (C T )

gara di 3 cavalli

A = cavallo a vincente

A = (ab c) (a c b)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 53 88

Probabilita - 1

Consideriamo un esperimento con sample space S Supponiamo che adogni evento A sia associato un numero chiamato probabilita di A edindicato con P(A) che soddisfa le seguenti proprieta

1 Per ogni evento A la probabilita di A e un numero tra 0 e 1

0 le P(A) le 1

2 La probabilita del sample space S e 1

P(S) = 1

3 La probabilita dellrsquounione di eventi disgiunti e uguale alla somma delleprobabilita di tali eventi

P(A cupB) = P(A) + P(B)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 54 88

Probabilita - 2

In generale 2 eventi potrebbero non essere disgiunti

P(A cupB) = P(A) + P(B) minus P(A capB)

Esempio un certo negozio accetta pagamenti o con carte di credito VISAo Mastercard

1 22 dei clienti ha Mastercard

2 58 dei clienti ha VISA

3 14 dei clienti ha entrambe

Qual e la probabilita che un cliente ha almeno una delle 2 carte

P(A) = 022 P(B) = 058

P(A cupB) = P(A) + P(B) minus P(A capB) = 022 + 058 minus 014 = 066

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 55 88

Probabilita condizionata - 1

Se alcune informazioni riguardo lrsquoesito di un esperimento sono disponibiliparliamo di probabilita condizionata

Esempio lancio di 2 dadi

S = (11) (12) (65) (66)

Probabilita che la somma sia 10 (evento B) sapendo che il primo dadomostra 4 (evento A)

(41) (42) (43) (44) (45) (46)

P(B ∣A) = 16

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 56 88

Probabilita condizionata - 2

In generale

P(B ∣A) = P(A capB)P(A)

Supponiamo lrsquoesito sia in A

Per essere anche in B deve essere in entrambi A e B cioe in A capB

Sapendo che A e gia accaduto il nostro nuovo sample space diventa A

la probabilita di A capB viene calcolata rispetto ad A

Nel caso dei dadi

P(B ∣A) = P((46))P((41) (42) (43) (44) (45) (46)) = 136

16= 1

6

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 57 88

Indipendenza

In generale sapere che A e accaduto modifica le chance che B accadaNel caso cio non avvenga cioe se P(B ∣A) = P(B) allora i 2 eventi sidicono indipendenti In questo caso sapere che A e accaduto nonaggiunge alcuna informazione

SiccomeP(A capB) = P(B ∣A)P(A)

Abbiamo che B e indipendente da A se

P(A capB) = P(B)P(A)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 58 88

Esercizi - 1

1 Svolgere gli esercizi di combinatoria

2 Si consideri il seguente esperimento casuale rdquosi lancia tre volte unamonetardquo Qual e lo spazio degli esiti di questo esperimento casualeSi scriva esplicitamente lrsquoevento rdquosi ottengono piu teste che crocirdquo

3 Si consideri il seguente esperimento casuale rdquoSi tirano due dadirdquo Siconsiderino gli eventi E = rdquola somma dei punteggi e disparirdquo F = rdquoilprimo dado realizza un 1rdquo e G = rdquola somma dei punteggi e 5rdquo Sidescrivano gli eventi E cap F E cup F F capG E cap F c e E cap F capG

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 59 88

Esercizi - 2

4 Si consideri il seguente esperimento casuale rdquoUn sistema e compostoda 4 componenti ciascuno dei quali o funziona oppure e guasto Siosserva lo stato dei componenti ottenendo un vettore (x1 x2 x3 x4)dove xi e 1 oppure 0 a seconda che il componente i-esimo funzionioppure nordquo

1 Da quanti elementi e formato lo spazio degli esiti2 Il sistema nel suo insieme funziona fintantoche entrambi i componenti

1 e 2 oppure entrambi i componenti 3 e 4 funzionano Specifica tuttigli esiti dellrsquoevento il rdquosistema funzionardquo

3 Sia E lrsquoevento rdquoi componenti 1 e 3 sono guastirdquo Quanti esiti contiene

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 60 88

Esercizi - 3

5 Si dimostri che in uno spazio degli esiti Ω dotato di una probabilita Pper ogni evento E F sub Ω vale la disuguaglianza seguente

P(E cap F ) ge P(E) + P(F ) minus 1

6 Un gruppo di 5 bambini e 10 bambine e in fila in ordine casuale nelsenso che tutte le 15 possibili permutazioni si suppongonoequiprobabili

1 Qual e la probabilita che il quarto della fila sia un bambino2 E il dodicesimo3 Qual e la probabilita che un determinato bambino occupi la terza

posizione

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 61 88

Esercizi - 4

7 In un comune vi sono 5 alberghi Se 3 persone devono scegliere unalbergo in cui pernottare qual e la probabilita che finiscano tutte inalberghi differenti Che cosa stiamo assumendo senza dirloesplicitamente

8 La media del salario annuale di un gruppo di 100 lavoratori impiegatinellrsquoamministrazione di una grande azienda e di 130000 dollari conuna deviazione standard di 20000 dollari Se si prende una persona acaso da questo gruppo cosa possiamo dire sulla probabilita che il suosalario sia

1 tra i 90000 e i 170000 dollari2 superiore a 150000 dollari

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 62 88

Esercizi - 5

9 In una certa regione vi sono due ditte che producono forni amicroonde Quelli della fabbrica A sono difettosi con probabilita 005mentre quelli della fabbrica B con probabilita 001 Supponi di averacquistato due apparecchi prodotti dalla stessa ditta che puo essere laA o la B con probabilita del 50 Se il primo microonde e difettosoqual e la probabilita condizionata che sia difettoso anche il secondo

10 Hai chiesto ad un vicino di innaffiare una piantina delicata mentre seiin vacanza Pensi che senza acqua la piantina muoia con probabilita08 mentre se innaffiata questa probabilita si ridurrebbe a 015 Latua fiducia che il vicino si ricordi di innaffiarla e del 90

1 Qual e la probabilita che la pianta sia ancora viva al tuo ritorno2 Se fosse morta quale sarebbe la probabilita che il vicino si sia

dimenticato di innaffiarla

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 63 88

Esercizi - 6

11 Una compagnia di assicurazioni classifica i suoi clienti in tre fascebasso rischio medio rischio alto rischio Le sue statistiche indicanoche le probabilita che un cliente delle tre fasce abbia un incidenteentro un periodo di un anno sono rispettivamente 005 015 e 030Se il 20 dei clienti sono a basso rischio il 50 a medio rischio e il30 ad alto rischio che percentuale dei clienti avra mediamenteincidenti in un lasso di un anno Se un cliente non ha avuto incidentinel 1987 qual e la probabilita che appartenga a ciascuna delle trefasce

12 Se un votante scelto a caso e favorevole ad una certa riforma conprobabilita di 07 qual e la probabilita che su 10 votanti esattamente7 siano favorevoli

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 64 88

Variabili aleatorie

Una variabile aleatoria (o anche variabile aleatoria) e una variabile chepuo assumere valori diversi in dipendenza da qualche fenomeno aleatorio

fenomeno lancio di 2 dadivariabile aleatoria somma dei 2 dadi

fenomeno 3 lanci di una monetavariabile aleatoria numero di rdquotesterdquo complessivo

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 65 88

Funzione di Ripartizione

Sia X una variabile aleatoria Si chiama funzione di ripartizione di X lafunzione F che associa ad ogni numero reale a la probabilita che X siaminore o uguale ad a cioe P(X le a) = FX (a)

Nel caso della moneta (fair) lanciata 3 volte (X indica il numero di testecomplessivo)

FX (a) =

⎧⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎨⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎩

0 if a lt 0

18 per 0 le a lt 1

18 + 38 = 48 per 1 le a lt 2

48 + 38 = 78 per 2 le a lt 3

88 = 1 per a ge 3

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 66 88

Funzione di densita o di massa

Sia X una variabile aleatoria Si chiama funzione di densita di X lafunzione f che associa ad ogni numero reale a la probabilita che X siauguale ad a indicata con fX (a)

Nel caso della moneta (fair) lanciata 3 volte (X indica il numero di testecomplessivo)

fX (a) =

⎧⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎨⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎩

18 per a = 0

38 per a = 1

38 per a = 2

18 per a = 3

0 altrimenti

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 67 88

Valore Atteso

Chiamato anche media (expectation in inglese) e appunto una mediapesata dei possibili valori di una variabile aleatoria Il peso dato a ciascunvalore e la probabilita data a quello specifico valore

E[X ] =sumi

aiP(X = ai)

Esempio dado truccato

valore 6 con probabilita 712

valori da 1 a 5 con probabilita 112

La variabile aleatoria X indica la faccia risultante dal lancio di un dado

E[X ] = 1

12lowast 1 + 1

12lowast 2 + 1

12lowast 3 + 1

12lowast 4 + 1

12lowast 5 + 7

12lowast 6 = 475

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 68 88

Valore Atteso - Proprieta

Sia X una variabile aleatoria con valore atteso E[X ] Se c e una costanteallora anche cX e X + c sono variabili casuali In particolare valgono leseguenti proprieta

E[cX ] = cE[X ]E[X + c] = E[X ] + c

Sia Y una variabile aleatoria Allora

E[X +Y ] = E[X ] +E[Y ]se e solo se X e Y sono independenti

E[XY ] = E[X ]E[Y ]

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 69 88

Varianza

Ersquo il valore atteso del quadrato della differenza tra la variabile aleatoria e ilsuo valore atteso

Var(X ) = E[(X minusE[X ])2] = E[X 2] minus (E[X ])2

La radice quadrata viene detta deviazione standard di X

Esempio dado truccato

E[X 2] = 1

12lowast 12 + 1

12lowast 22 + 1

12lowast 32 + 1

12lowast 42 + 1

12lowast 52 + 7

12lowast 62 ≃ 255

Var(X ) = E[X 2] minus (E[X ])2 ≃ 255 minus 4752 ≃ 3

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 70 88

Varianza - proprieta

Sia X una variabile aleatoria e c una costante Allora valgono le seguentiproprieta

1 Var(cX ) = c2Var(X )

2 Var(X + c) = Var(X )

NOTA

Var(X +X ) ne Var(X ) +Var(X )

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 71 88

Covarianza

Siano X Y due variabili aleatorie con valore atteso rispettivamenteE[X ] = microX e E[Y ] = microY La covarianza e definita come segue

Cov(X Y ) = E[(X minus microX )(Y minus microY )] = = E[XY ] minus microXmicroY

Proprieta

1 Cov(X Y ) = Cov(Y X )2 Cov(X X ) = Var(X )3 Sia a una costante allora

Cov(aX Y ) = aCov(X Y )

4 Sia Z una variabile aleatoria allora

Cov(X + Z Y ) = Cov(X Y ) + Cov(Z Y )

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 72 88

Esercizi - 1

1 Consideriamo una variabile aleatoria X che puo assumere i valori 12o 3 Se sappiamo che

fX (1) = 1

3 fX (2) = 3

7

1 Quanto vale fX (3)2 Disegnare il grafico di questa funzione di massa3 Disegnare il grafico della relativa funzione di ripartizione

2 Dimostrare che se X1 e X2 hanno la stessa distribuzione allora

Cov(X1 +X2X1 minusX2) = 0

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 73 88

Esercizi - 2

3 La funzione di ripartizione di X e definita come segue

FX (x) =

⎧⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎨⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎩

0 per x le 0

x2 per 0 le x lt 1

23 per 1 le x lt 2

1112 per 2 le x lt 3

1 per x ge 3

Se ne tracci il graficoQuanto vale P(X gt 12)Quanto vale P(2 le X le 4)Quanto vale P(X le 3)Quanto vale P(X = 1)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 74 88

Esercizi - 3

4 Un tipo di prodotti vengono classificati a seconda dei loro difetti edella fabbrica che li ha prodotti Sia X1 il numero (1 o 2) dellafabbrica e sia X2 il numero di difetti per pezzo (che possono essere da0 a 3) di un prodotto scelto a caso tra la totalita di quelli esistentiLa tabella seguente riporta la funzione di massa di probabilitacongiunta per queste due variabili aleatorie discrete Le righe siriferiscono alla variabile X1 mentre le colonne alla variabile X2

Trova le distribuzioni marginali di X1 e X2Calcola media e varianza di X2

0 1 2 31 18 116 316 182 116 116 18 14

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 75 88

Scipy

Scipy e un modulo che permette di utilizzare varie distribuzioni diprobabilita sia di tipo discreto che continuo

La sintassi generale e la seguente Scipystatsltnome distribuzionegt

rvs(size=z) restituisce un vettore di numeri casuali estrattisecondo la distribuzione di lunghezza z

pdf(x) restituisce il vettore della densita della distribuzionevalutata nei valori del vettore di input x (pmf per le discrete)

cdf(x) restituisce il vettore della funzione di ripartizione (ocumulativa) della distribuzione valutata nei valori del vettore di inputx

ppf(q) restituisce il vettore dei quantili della distribuzione valutatanei valori del vettore di input q

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 76 88

Variabili aleatorie discrete Binomiale

gtgtgt from scipystats import binom

gtgtgt rv = binom(n p)

rvrvs(x) restituisce un vettore di x numeri estratti secondo unadistribuzione Binomiale di parametri n p

rvpmf(x) restituisce la probabilita di ottenere esattamente x

successi in un esperimento dicotomico (01) ripetuto n volte con unaprobabilita di successo p (x puo essere un vettore)

rvcdf(q) restituisce il valore della funzione di ripartizione in q (qpuo essere un vettore)

rvppf(p) restituisce il valore del quantile di ordine p

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 77 88

Variabili aleatorie discrete Ipergeometrica

Supponiamo di avere M = 20 animali di cui n = 7 cani Se vogliamosapere la probabilita di trovare un dato numero di cani se scegliamoN = 12 dei 20 animali in maniera casuale possiamo usare una distribuzioneipergeometrica in questo modo

gtgtgt from scipystats import hypergeom

gtgtgt [M n N] = [20 7 12]

gtgtgt rv = hypergeom(M n N)

rvpmf(x) restituisce la probabilita di estrarre esattamente x cani

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 78 88

Variabili aleatorie discrete Geometrica

gtgtgt from scipystats import geom

gtgtgt rv = geom(p)

rvpmf(x) restituisce la probabilita di avere un successo dopoesattamente x insuccessi in una successione di esperimenti dicotomici(esito 01) con una probabilita di successo p (x puo essere un vettore)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 79 88

Variabili aleatorie discrete Poisson

La distribuzione di Poisson viene usata spesso come modello per il numerodi volte per cui un evento avviene in un dato intervallo di tempo (ospazio) Ad esempio si puo utilizzare per misurare il numero di chiamatericevute da un call center in una mattinata

gtgtgt from scipystats import poisson

gtgtgt mu = 2

gtgtgt rv = poisson(mu)

rvpmf(x) restituisce il seguente valore

f (x) = exp(minusmicro)microx

x

In questo caso x rappresenta il numero di eventi per cui si vuole calcolarela probabilita sapendo che in media ne accadono micro

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 80 88

Variabili aleatorie continue Uniforme

In Scipy la funzione uniforme e soltanto continua Questo significa chenella generazione di numeri casuali otterro dati di tipo float Possiamotuttavia simulare una variabile discreta estraendo la parte intera delrisultato ottenuto

gtgtgt from scipystats import uniform

gtgtgt rv = uniform()

Il comando uniform() crea una distribuzione uniforme nellrsquointervallo[01] Possiamo creare una distribuzione uniforme qualsiasi usandouniform(x y - x) per lrsquointervallo [x y]

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 81 88

Variabili aleatorie continue

norm(mu sigma) variabile Gaussiana (o Normale) di media micro edeviazione standard σ

expon(scale = 1 lambda) variabile Esponenziale di parametroλ

Altre distribuzioni (con relativa documentazione) disponibili suhttpsdocsscipyorgdocscipyreferencestatshtml

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 82 88

Esercizi - 1

1 Unrsquourna contiene 10 palline di cui 4 bianche e 6 nere Si eseguono 5estrazioni con reimmissione

1 Tracciare grafico della funzione massa di probabilita della variabilecasuale X = rdquonumero di palline bianche estratterdquo

2 Calcolare la probabilita di estrarre 2 palline bianche3 Calcolare la probabilita di estrarre al piu 2 palline bianche4 Calcolare la probabilita di estrarre almeno 2 palline bianche5 Qual e il numero minimo x tale che la probabilita di estrarre al piu x

palline bianche sia almeno 08

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 83 88

Esercizi - 2

2 Si eseguono 10 estrazioni senza reimmissione da unrsquourna

1 Tracciare il grafico della funzione massa di probabilita della variabilecasuale X = rdquonumero di palline bianche estratterdquo nei seguenti casi

1 lrsquourna contiene 100 palline di cui 20 bianche e le restanti nere2 lrsquourna contiene 100 palline di cui 2 bianche e le restanti nere

2 Tracciare il grafico della funzione massa di probabilita della variabilecasuale X nel caso dellrsquourna 1 se si eseguono 25 estrazioni

3 Consideriamo lrsquourna 1 e N = 10 estrazioni Si aumenti il numero totaleM di palline nellrsquourna mantenendo uguale a 02 la frazione di pallinebianche Per ciascun valore di M confrontare graficamente ladistribuzione di probabilita del numero di palline bianche estratte nelcaso di estrazioni con e senza reimmissione Provare con 20 40 e 200palline bianche

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 84 88

Esercizi - 3

3 Calcolare la probabilita di ottenere piu teste che croci lanciando 7volte una moneta truccata con probabilita di avere croce pari a 045

4 Calcolare la probabilita di avere almeno 3 sei lanciando 5 dadi a 12facce

5 Calcolare la probabilita di estrarre 20 euro da un sacco contenente 47monete da 1 centesimo e 53 da 2 euro estraendo (uniformemente) acaso 10 monete senza reinserirle

6 Un grammo di uranio emette mediamente 2152 particelle α ognimillisecondo Qual e con buona approssimazione la probabilita che ungrammo di uranio emetta al piu 2000 particelle α in un millisecondo

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 85 88

Esercizi - 4

7 Un uomo si risveglia in mezzo al deserto senza acqua Dopo ogniminuto ha una probabilita del 3 di perdere conoscenza per via dellecondizioni estreme Calcolare la probabilita che lrsquouomo perdaconoscenza dopo almeno due ore e la probabilita che lrsquouomo perdaconoscenza dopo esattamente un quarto drsquoora

8 Sia X una variabile aleatoria normale di parametri micro = 10 e σ = 36Calcola

1 P(X gt 5)2 P(4 le X le 16)3 P(X le 8)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 86 88

Esercizi - 5

9 Il numero di errori tipografici per pagina di una certa rivista segue unadistribuzione di Poisson Sapendo che mediamente sono presenti 02errori per pagina determinare la probabilita che una pagina contenga

1 nessun refuso2 piu refusi

10 Arrivi alla fermata dellrsquoautobus alle 1000 e sei certo che ne passerauno in un momento distribuito uniformemente tra le 1000 e le 1030

1 Qual e la probabilita che tu debba aspettare piu di 10 minuti2 Se alle 1015 lrsquoautobus non e ancora arrivato qual e la probabilita che

tu debba aspettare almeno altri 10 minuti

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 87 88

Esercizi - 6

11 Il signor Jones e convinto che il tempo di vita di una automobile (inmigliaia di chilometri percorse) sia una variabile aleatoria esponenzialedi parametro 120 Il signor Smith ha una macchina usata da vendereche ha percorso circa 10 000 chilometri

1 Se il signor Jones decide di comprarla che probabilita ha di farle farealmeno altri 20 000 chilometri prima che sia da buttare

2 Il modello assunto dal signor Jones e ragionevole

12 Sia X una variabile casuale binomiale di parametri n = 100 e p = 07

1 Tracciate la funzione di ripartizione di X2 Calcolate il primo quartile il quantile di ordine 09 e la mediana di X3 Calcolare la probabilita P(X le 60)4 Calcolare la probabilita P(X le 88)5 Trovare il piu piccolo valore x tale che P(X le x) ge 09

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 88 88

  • Lezione 1
    • Script in Python
    • Numpy
    • Esercizi
    • Pandas
    • Esercizi
      • Lezione 2
        • File csv
        • DataFrame
        • Accesso ai DataFrame
        • Frequenze
        • Esercizi
          • Lezione 3
            • Matplotlib
            • Grafici a Barre
            • Istogrammi
            • Cumulativa empirica
            • Boxplot
            • QQplot
            • Diagramma di Pareto
            • Esercizi
              • Lezione 4
                • Definizioni
                • Probabilitagrave condizionata
                • Indipendenza
                • Esercizi
                  • Lezione 5
                    • Variabili Aleatorie
                    • Funzione di Ripartizione
                    • Funzione di Densitagrave
                    • Valore Atteso
                    • Varianza
                    • Covarianza
                    • Esercizi
                      • Lezione 6
                        • Scipy - Variabili Discrete
                        • Scipy - Variabili continue
                        • Esercizi

Accesso con maschere booleane

Specificando tra [ ] un array di tipo booleano selezioniamo dallrsquoarray glielementi la cui posizione corrisponde ad un True nellrsquoarray di tipobooleano (che prende il nome di maschera)

gtgtgt a = numpyarange(10)

gtgtgt mask = a2 == 0

gtgtgt mask

array([ True False True False True False True

False True False] dtype=bool)

gtgtgt a[mask]

array([0 2 4 6 8])

o in maniera piu compatta

gtgtgt a[a2 == 0]

array([0 2 4 6 8])

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 17 88

Esercizi

1 Lanciare uno script che stampi il vostro nome e cognome

2 Creare un array i cui elementi siano gli interi che compongono ilvostro numero di matricola

3 Sia X la lunghezza dellrsquoarray del punto precedente Creare un array diX elementi equispaziati lrsquouno dallrsquoaltro di 15

4 Creare un array di X elementi equispaziati nellrsquointervallo tra 1 e 3

5 Ottenere gli array dati dalla somma tra lrsquoarray del punto 2 e quello delpunto 3 e quello dato dalla moltiplicazione tra punto 3 e punto 4

6 Ottenere per ciascuno dei due array del punto 5 un array mascherache in corrispondenza dei numeri divisibili per 3 abbia True Falsealtrimenti

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 18 88

Pandas - Series (1)

Pandas (httpspandaspydataorg) e una libreria Python chefornisce strutture dati e strumenti relativi esclusivamente allrsquoanalisi deidatiUna Series e un array monodimensionale ed etichettato Rappresenta unaserie di osservazioni di un certo carattere fatto su un insieme di individui

a 00

b 10

c 20

d 30

e 40

f 50

g 60

h 70

Name serie di esempio dtype float64

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 19 88

Pandas - Series (2)

pandasSeries (data index dtype name )

data contiene i dati che si vuole inserire nella serie

index della stessa lunghezza di data contiene le etichette

dtype permette di specificare il tipo che i dati devono assumere

name permette di dare un nome alla Series

gtgtgt import pandas as pd

gtgtgt import numpy as np

gtgtgt oss = nparange(8)

gtgtgt etic = [rsquoarsquorsquobrsquorsquocrsquorsquodrsquorsquoersquorsquofrsquorsquogrsquorsquohrsquo]

gtgtgt pdSeries(data=oss index=etic name=rsquoserie di esempiorsquo

dtype=float)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 20 88

Accesso ai dati di una Series

Specificando un valore (o una lista di valori) per lrsquoetichetta

gtgtgt sloc[[rsquohrsquorsquoarsquo]]

h 70

a 00

Specificando un valore (o una lista di valori) per la posizione

gtgtgt s[[56]]

f 50

g 60

Usando lo slicing (come per gli array numpy) per la posizione

gtgtgt s[36]

d 30

e 40

f 50

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 21 88

Pandas Series - Utils

Seriesmin() Seriesmax() restituiscono rispettivamente il minimoed massimo tra i valori della Series

Seriessum() restituisce la somma dei valori della Series

Seriessort values() restituisce una copia della Series ordinata pervalore

Seriessort index() restituisce una copia della Series ordinata peretichette

Seriessample(n) restituisce una Series di n elementi sceltiuniformemente a caso allrsquointerno di quelli della Series

Seriesappend([s1s2]) concatena una o piu Series a quella dipartenza

Seriescount() restituisce il numero dei valori della Series che nonsiano il valore NaN

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 22 88

Il valore NaN

Nan un oggetto del modulo numpy che puo rappresentare in una Seriesun dato di cui non e stato possibile fare unrsquoosservazioneOperazioni con un valore Nan hanno come risultato il valore Nan

gtgtgt oss = range(5)

gtgtgt ossappend(None)

gtgtgt pandasSeries(oss)

0 00

1 10

2 20

3 30

4 40

5 NaN

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 23 88

Esercizi

Creare la Series gol in modo che le etichette siano numeri dallrsquo1 al 23 Idati raccolti siano numeri interi tra 0 e 30 scelti casualmente (scarica ilnotebook) La Series rappresenta i gol segnati da ciascun giocatore diuna societa calcistica nella stagione appena passata Lrsquoetichettacorrisponde al numero di maglia del giocatore Ottenere

1 I gol segnati dal capocannoniere2 Chi non ha mai fatto gol durante lrsquoanno3 La statistica del punto 2 per i soli titolari (numeri dallrsquo1 allrsquo11) e per

le sole riserve (dal 12 al 23)4 La statistica del punto 2 per i soli attaccanti (numeri dalrsquo9 allrsquo11)5 I gol segnati dai giocatori coi numeri di maglia 5 9 10 14 (somma)6 Chi ha segnato piu di 10 gol e chi ha segnato esattamente 10 gol7 Una copia della Series ordinata secondo i gol effettuati8 Una stampa dei primi 5 cannonieri e degli ultimi 59 Una copia della Series ordinata in modo discendente secondo il

numero di maglia

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 24 88

File csv

Il formato csv (comma-separated value) e un formato utilizzato perrappresentare una tabella di dati e favorirne lrsquoimportazione e lrsquoesportazioneUn file csv e scritto nella seguente forma

titolopaeseannoduratagenerevoto

Guerre StellariUSA1977121Fantascienza4

Lrsquoimpero colpisce ancoraUSA1980124Fantascienza4

Il ritorno dello JediUSA1983Fantascienza35

Profondo RossoITA1975Horror35

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 25 88

Leggere csv

La funzione read csv() di Pandas puo essere utilizzata per leggere unfile di formato csv Tra i vari parametri che passiamo in input unoparticolarmente importante e sep che indica il carattere utilizzato perseparare le colonne (default e rsquorsquo)

gtgtgt df film = pdread csv(rsquofilmcsvrsquo)

gtgtgt df film

titolo paese anno durata genere voto

Il padrino USA 19720 1750 Drammatico 45

Pulp Fiction USA 19940 1540 Drammatico 40

Fight Club USA 19990 1390 Thriller 40

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 26 88

DataFrame

In Pandas un DataFrame e una struttura dati tabulare con assi etichettatile cui colonne possono contenere dati eterogenei da colonna a colonna

gtgtgt dataframe

esempio

Nome Cognome Eta Citta

Tommaso Rossi 300 Milano

Sergio Bianchi 340 Roma

Pasquale Verdi 290 Palermo

Antonio Gialli 300 Roma

Il DataFrame puo essere visto come un insieme di serie aventi lo stessoindice accostate una allrsquoaltra

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 27 88

Accesso colonne DataFrame - 1

Per conoscere le colonne di un DataFrame possiamo invocare il comandodfcolumns dove df e la variabile in cui abbiamo instanziato ilDataFramePer accedere ad una colonna dobbiamo specificarne il nome nel seguentemodo

gtgtgt df film[rsquogenerersquo]

titolo

Il padrino Drammatico

Pulp Fiction Drammatico

Fight Club Thriller

Selezionando unrsquounica colonna in output viene restituita una Series

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 28 88

Accesso colonne DataFrame - 2

Possiamo accedere allo stesso tempo a piu colonne

gtgtgt df film[[rsquopaesersquorsquoannorsquo]]

titolo paese anno

Il padrino USA 19720

Pulp Fiction USA 19940

Fight Club USA 19990

Selezionando piu colonne in output viene restituito un DataFrame

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 29 88

Accesso righe DataFrame - 1

Per indice numerico

gtgtgt df film[1518]

titolo paese anno durata genere voto

Il padrino USA 19720 1750 Drammatico 45

Pulp Fiction USA 19940 1540 Drammatico 40

Fight Club USA 19990 1390 Thriller 40

Quasi Amici FRA 20110 1120 Commedia 35

Per valore dellrsquoindice (assumiamo che titolo sia lrsquoindice delDataFrame)

gtgtgt df film[rsquoIl padrinorsquorsquoFight Clubrsquo]

titolo paese anno durata genere voto

Il padrino USA 19720 1750 Drammatico 45

Pulp Fiction USA 19940 1540 Drammatico 40

Fight Club USA 19990 1390 Thriller 40

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 30 88

loc amp iloc

Cosı come per le Series anche con i DataFrame possiamo usare loc ediloc per lrsquoaccesso ai dati

loc[rsquonome indicersquo] permette lrsquoaccesso ad una riga o piu righetramite nome dellrsquoindice

iloc[rsquoposizionersquo] permette lrsquoaccesso ad una o piu righe tramitela loro posizione

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 31 88

Accesso tramite unrsquoespressione logica

gtgtgt df film[rsquoannorsquo gt 1998]

titolo

Il padrino False

Pulp Fiction False

Fight Club True

Quasi Amici True

gtgtgt df film[df film[rsquoannorsquo] gt 1998]

titolo paese anno durata genere voto

Fight Club USA 19990 1390 Thriller 40

Quasi Amici FRA 20110 1120 Commedia 35

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 32 88

Metodi dei DataFrame

La classe DataFrame ha diversi metodi Elenchiamo qui i piu importanti

DataFrameappend() permette di estendere il DataFrame

DataFramedrop duplicates() restituisce un DataFrame senza righeduplicate

DataFramedropna() Eliminare i valori Nan da un DataFrame

DataFramesort values() permette di ordinare il DataFrame

DataFramemax() DataFramemin() DataFramemean()DataFramemedian()

Per la completa documentazione si puo utilizzare il comandohelp(pdDataFrame) oppure andare al seguente linkhttpspandaspydataorgpandas-docsstablegenerated

pandasDataFramehtml

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 33 88

Frequenze

La frequenza assoluta indica il numero di volte che una dataosservazione occorre in un campione

La frequenza relativa e un valore tra 0 e 1 che permette di valutare inmaniera piu efficace la frequenza di un osservazione Si calcoladividendo la frequenza assoluta per il numero totale di casi

Per calcolare questa quantita in Pandas possiamo utilizzare la funzionevalue counts() che opera su una Series

In alternativa si puo utilizzare la funzione pdcrosstab che calcolaqueste frequenze in automatico restituendole in output in un DataFrame

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 34 88

Esercizi

Utilizzando il file dati-ospedalicsv dai csv del laboratorio

1 Leggere il file e visualizzarlo in un DataFrame

2 Calcolare le frequenze assolute e relative dellrsquoattributo Regioneusando crosstab

3 Ottenere la singola serie relativa allrsquoattributo Regione e calcolarne lafrequenza assoluta e relativa senza usare crosstab

4 Estrarre un sottodataframe contenente le colonne Nome (attributoDenominazione Str Pubblica New) e Numero di medici (attributoMedici SSN) degli ospedali aventi meno di 200 medici

5 Visualizzare il nome degli ospedali della regione Lombardia

6 Calcolare il numero medio di ingegneri (Ingegneri SSN) presenti negliospedali campani

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 35 88

Esercizi

7 Calcolare la varianza del numero di assistenti sociali (Assistenti socialiSSN) negli ospedali con piu di 400 medici

8 Qual e lrsquoospedale con meno medici

9 Visualizzare in ordine alfabetico il nome dei primi 10 ospedali pernumero di medici

10 Visualizzare il numero degli ospedali che hanno dichiarato il numerodi odontoiatri (per cui il valore e diverso da NaN) (OdontoiatriUniversitari)

11 Visualizzare il numero degli ospedali che hanno dichiarato il numerodi odontoiatri (Odontoiatri Universitari) e per cui questo numero emaggiore di 0

12 Calcolare le frequenze assolute per lrsquoattributo Odontoiatri SSNTrasformare questo risultato in frequenze relative

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 36 88

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) SAD 20182019 January 12 2019 37 88

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) SAD 20182019 January 12 2019 38 88

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) SAD 20182019 January 12 2019 39 88

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) SAD 20182019 January 12 2019 40 88

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) SAD 20182019 January 12 2019 41 88

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) SAD 20182019 January 12 2019 42 88

Grafici con le Series

In generale possiamo tracciare diversi tipi di grafici con le Series

rsquolinersquo line plot (default)

rsquobarrsquo vertical bar plot

rsquobarhrsquo horizontal bar plot

rsquohistrsquo histogram

rsquoboxrsquo boxplot

rsquokdersquo Kernel Density Estimation plot

rsquodensityrsquo same as rsquokdersquo

rsquoarearsquo area plot

rsquopiersquo pie plot

Per saperne di piu consultare questo link

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 43 88

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) SAD 20182019 January 12 2019 44 88

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) SAD 20182019 January 12 2019 45 88

Boxplot

Rappresenta la distribuzione di un vettore di numeri cerchiando gli outlier

gtgtgt weight = heroes[rsquoWeightrsquo]

gtgtgt weightplotbox()

gtgtgt pltshow()

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 46 88

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) SAD 20182019 January 12 2019 47 88

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) SAD 20182019 January 12 2019 48 88

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) SAD 20182019 January 12 2019 49 88

Esercizi - 1

Utilizzando il file capellicsv dai csv del laboratorio

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) SAD 20182019 January 12 2019 50 88

Esercizi - 2

Utilizzando il file dati-ospedalicsv dai csv del laboratorio

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 e canipdf

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 51 88

Sample space

Un esperimento e qualsiasi processo che produce una realizzazione (oosservazione) Lrsquoinsieme di tutte le possibili realizzazioni di un esperimentoviene detto sample space ed indicato con S

lancio di 2 monete

S = (T T ) (T C) (C T ) (C C)

gara di 3 cavalli (ab c)

S = tutti i possibili ordinamenti di(ab c)= (ab c) (a cb) (c b a)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 52 88

Eventi

lancio di 2 monete

S = (T T ) (T C) (C T ) (C C)

A = 2 monete uguali

A = (T T ) (C C)

B = 2 monete diverse

B = Ac = (T C) (C T )

gara di 3 cavalli

A = cavallo a vincente

A = (ab c) (a c b)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 53 88

Probabilita - 1

Consideriamo un esperimento con sample space S Supponiamo che adogni evento A sia associato un numero chiamato probabilita di A edindicato con P(A) che soddisfa le seguenti proprieta

1 Per ogni evento A la probabilita di A e un numero tra 0 e 1

0 le P(A) le 1

2 La probabilita del sample space S e 1

P(S) = 1

3 La probabilita dellrsquounione di eventi disgiunti e uguale alla somma delleprobabilita di tali eventi

P(A cupB) = P(A) + P(B)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 54 88

Probabilita - 2

In generale 2 eventi potrebbero non essere disgiunti

P(A cupB) = P(A) + P(B) minus P(A capB)

Esempio un certo negozio accetta pagamenti o con carte di credito VISAo Mastercard

1 22 dei clienti ha Mastercard

2 58 dei clienti ha VISA

3 14 dei clienti ha entrambe

Qual e la probabilita che un cliente ha almeno una delle 2 carte

P(A) = 022 P(B) = 058

P(A cupB) = P(A) + P(B) minus P(A capB) = 022 + 058 minus 014 = 066

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 55 88

Probabilita condizionata - 1

Se alcune informazioni riguardo lrsquoesito di un esperimento sono disponibiliparliamo di probabilita condizionata

Esempio lancio di 2 dadi

S = (11) (12) (65) (66)

Probabilita che la somma sia 10 (evento B) sapendo che il primo dadomostra 4 (evento A)

(41) (42) (43) (44) (45) (46)

P(B ∣A) = 16

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 56 88

Probabilita condizionata - 2

In generale

P(B ∣A) = P(A capB)P(A)

Supponiamo lrsquoesito sia in A

Per essere anche in B deve essere in entrambi A e B cioe in A capB

Sapendo che A e gia accaduto il nostro nuovo sample space diventa A

la probabilita di A capB viene calcolata rispetto ad A

Nel caso dei dadi

P(B ∣A) = P((46))P((41) (42) (43) (44) (45) (46)) = 136

16= 1

6

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 57 88

Indipendenza

In generale sapere che A e accaduto modifica le chance che B accadaNel caso cio non avvenga cioe se P(B ∣A) = P(B) allora i 2 eventi sidicono indipendenti In questo caso sapere che A e accaduto nonaggiunge alcuna informazione

SiccomeP(A capB) = P(B ∣A)P(A)

Abbiamo che B e indipendente da A se

P(A capB) = P(B)P(A)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 58 88

Esercizi - 1

1 Svolgere gli esercizi di combinatoria

2 Si consideri il seguente esperimento casuale rdquosi lancia tre volte unamonetardquo Qual e lo spazio degli esiti di questo esperimento casualeSi scriva esplicitamente lrsquoevento rdquosi ottengono piu teste che crocirdquo

3 Si consideri il seguente esperimento casuale rdquoSi tirano due dadirdquo Siconsiderino gli eventi E = rdquola somma dei punteggi e disparirdquo F = rdquoilprimo dado realizza un 1rdquo e G = rdquola somma dei punteggi e 5rdquo Sidescrivano gli eventi E cap F E cup F F capG E cap F c e E cap F capG

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 59 88

Esercizi - 2

4 Si consideri il seguente esperimento casuale rdquoUn sistema e compostoda 4 componenti ciascuno dei quali o funziona oppure e guasto Siosserva lo stato dei componenti ottenendo un vettore (x1 x2 x3 x4)dove xi e 1 oppure 0 a seconda che il componente i-esimo funzionioppure nordquo

1 Da quanti elementi e formato lo spazio degli esiti2 Il sistema nel suo insieme funziona fintantoche entrambi i componenti

1 e 2 oppure entrambi i componenti 3 e 4 funzionano Specifica tuttigli esiti dellrsquoevento il rdquosistema funzionardquo

3 Sia E lrsquoevento rdquoi componenti 1 e 3 sono guastirdquo Quanti esiti contiene

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 60 88

Esercizi - 3

5 Si dimostri che in uno spazio degli esiti Ω dotato di una probabilita Pper ogni evento E F sub Ω vale la disuguaglianza seguente

P(E cap F ) ge P(E) + P(F ) minus 1

6 Un gruppo di 5 bambini e 10 bambine e in fila in ordine casuale nelsenso che tutte le 15 possibili permutazioni si suppongonoequiprobabili

1 Qual e la probabilita che il quarto della fila sia un bambino2 E il dodicesimo3 Qual e la probabilita che un determinato bambino occupi la terza

posizione

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 61 88

Esercizi - 4

7 In un comune vi sono 5 alberghi Se 3 persone devono scegliere unalbergo in cui pernottare qual e la probabilita che finiscano tutte inalberghi differenti Che cosa stiamo assumendo senza dirloesplicitamente

8 La media del salario annuale di un gruppo di 100 lavoratori impiegatinellrsquoamministrazione di una grande azienda e di 130000 dollari conuna deviazione standard di 20000 dollari Se si prende una persona acaso da questo gruppo cosa possiamo dire sulla probabilita che il suosalario sia

1 tra i 90000 e i 170000 dollari2 superiore a 150000 dollari

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 62 88

Esercizi - 5

9 In una certa regione vi sono due ditte che producono forni amicroonde Quelli della fabbrica A sono difettosi con probabilita 005mentre quelli della fabbrica B con probabilita 001 Supponi di averacquistato due apparecchi prodotti dalla stessa ditta che puo essere laA o la B con probabilita del 50 Se il primo microonde e difettosoqual e la probabilita condizionata che sia difettoso anche il secondo

10 Hai chiesto ad un vicino di innaffiare una piantina delicata mentre seiin vacanza Pensi che senza acqua la piantina muoia con probabilita08 mentre se innaffiata questa probabilita si ridurrebbe a 015 Latua fiducia che il vicino si ricordi di innaffiarla e del 90

1 Qual e la probabilita che la pianta sia ancora viva al tuo ritorno2 Se fosse morta quale sarebbe la probabilita che il vicino si sia

dimenticato di innaffiarla

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 63 88

Esercizi - 6

11 Una compagnia di assicurazioni classifica i suoi clienti in tre fascebasso rischio medio rischio alto rischio Le sue statistiche indicanoche le probabilita che un cliente delle tre fasce abbia un incidenteentro un periodo di un anno sono rispettivamente 005 015 e 030Se il 20 dei clienti sono a basso rischio il 50 a medio rischio e il30 ad alto rischio che percentuale dei clienti avra mediamenteincidenti in un lasso di un anno Se un cliente non ha avuto incidentinel 1987 qual e la probabilita che appartenga a ciascuna delle trefasce

12 Se un votante scelto a caso e favorevole ad una certa riforma conprobabilita di 07 qual e la probabilita che su 10 votanti esattamente7 siano favorevoli

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 64 88

Variabili aleatorie

Una variabile aleatoria (o anche variabile aleatoria) e una variabile chepuo assumere valori diversi in dipendenza da qualche fenomeno aleatorio

fenomeno lancio di 2 dadivariabile aleatoria somma dei 2 dadi

fenomeno 3 lanci di una monetavariabile aleatoria numero di rdquotesterdquo complessivo

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 65 88

Funzione di Ripartizione

Sia X una variabile aleatoria Si chiama funzione di ripartizione di X lafunzione F che associa ad ogni numero reale a la probabilita che X siaminore o uguale ad a cioe P(X le a) = FX (a)

Nel caso della moneta (fair) lanciata 3 volte (X indica il numero di testecomplessivo)

FX (a) =

⎧⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎨⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎩

0 if a lt 0

18 per 0 le a lt 1

18 + 38 = 48 per 1 le a lt 2

48 + 38 = 78 per 2 le a lt 3

88 = 1 per a ge 3

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 66 88

Funzione di densita o di massa

Sia X una variabile aleatoria Si chiama funzione di densita di X lafunzione f che associa ad ogni numero reale a la probabilita che X siauguale ad a indicata con fX (a)

Nel caso della moneta (fair) lanciata 3 volte (X indica il numero di testecomplessivo)

fX (a) =

⎧⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎨⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎩

18 per a = 0

38 per a = 1

38 per a = 2

18 per a = 3

0 altrimenti

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 67 88

Valore Atteso

Chiamato anche media (expectation in inglese) e appunto una mediapesata dei possibili valori di una variabile aleatoria Il peso dato a ciascunvalore e la probabilita data a quello specifico valore

E[X ] =sumi

aiP(X = ai)

Esempio dado truccato

valore 6 con probabilita 712

valori da 1 a 5 con probabilita 112

La variabile aleatoria X indica la faccia risultante dal lancio di un dado

E[X ] = 1

12lowast 1 + 1

12lowast 2 + 1

12lowast 3 + 1

12lowast 4 + 1

12lowast 5 + 7

12lowast 6 = 475

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 68 88

Valore Atteso - Proprieta

Sia X una variabile aleatoria con valore atteso E[X ] Se c e una costanteallora anche cX e X + c sono variabili casuali In particolare valgono leseguenti proprieta

E[cX ] = cE[X ]E[X + c] = E[X ] + c

Sia Y una variabile aleatoria Allora

E[X +Y ] = E[X ] +E[Y ]se e solo se X e Y sono independenti

E[XY ] = E[X ]E[Y ]

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 69 88

Varianza

Ersquo il valore atteso del quadrato della differenza tra la variabile aleatoria e ilsuo valore atteso

Var(X ) = E[(X minusE[X ])2] = E[X 2] minus (E[X ])2

La radice quadrata viene detta deviazione standard di X

Esempio dado truccato

E[X 2] = 1

12lowast 12 + 1

12lowast 22 + 1

12lowast 32 + 1

12lowast 42 + 1

12lowast 52 + 7

12lowast 62 ≃ 255

Var(X ) = E[X 2] minus (E[X ])2 ≃ 255 minus 4752 ≃ 3

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 70 88

Varianza - proprieta

Sia X una variabile aleatoria e c una costante Allora valgono le seguentiproprieta

1 Var(cX ) = c2Var(X )

2 Var(X + c) = Var(X )

NOTA

Var(X +X ) ne Var(X ) +Var(X )

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 71 88

Covarianza

Siano X Y due variabili aleatorie con valore atteso rispettivamenteE[X ] = microX e E[Y ] = microY La covarianza e definita come segue

Cov(X Y ) = E[(X minus microX )(Y minus microY )] = = E[XY ] minus microXmicroY

Proprieta

1 Cov(X Y ) = Cov(Y X )2 Cov(X X ) = Var(X )3 Sia a una costante allora

Cov(aX Y ) = aCov(X Y )

4 Sia Z una variabile aleatoria allora

Cov(X + Z Y ) = Cov(X Y ) + Cov(Z Y )

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 72 88

Esercizi - 1

1 Consideriamo una variabile aleatoria X che puo assumere i valori 12o 3 Se sappiamo che

fX (1) = 1

3 fX (2) = 3

7

1 Quanto vale fX (3)2 Disegnare il grafico di questa funzione di massa3 Disegnare il grafico della relativa funzione di ripartizione

2 Dimostrare che se X1 e X2 hanno la stessa distribuzione allora

Cov(X1 +X2X1 minusX2) = 0

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 73 88

Esercizi - 2

3 La funzione di ripartizione di X e definita come segue

FX (x) =

⎧⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎨⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎩

0 per x le 0

x2 per 0 le x lt 1

23 per 1 le x lt 2

1112 per 2 le x lt 3

1 per x ge 3

Se ne tracci il graficoQuanto vale P(X gt 12)Quanto vale P(2 le X le 4)Quanto vale P(X le 3)Quanto vale P(X = 1)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 74 88

Esercizi - 3

4 Un tipo di prodotti vengono classificati a seconda dei loro difetti edella fabbrica che li ha prodotti Sia X1 il numero (1 o 2) dellafabbrica e sia X2 il numero di difetti per pezzo (che possono essere da0 a 3) di un prodotto scelto a caso tra la totalita di quelli esistentiLa tabella seguente riporta la funzione di massa di probabilitacongiunta per queste due variabili aleatorie discrete Le righe siriferiscono alla variabile X1 mentre le colonne alla variabile X2

Trova le distribuzioni marginali di X1 e X2Calcola media e varianza di X2

0 1 2 31 18 116 316 182 116 116 18 14

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 75 88

Scipy

Scipy e un modulo che permette di utilizzare varie distribuzioni diprobabilita sia di tipo discreto che continuo

La sintassi generale e la seguente Scipystatsltnome distribuzionegt

rvs(size=z) restituisce un vettore di numeri casuali estrattisecondo la distribuzione di lunghezza z

pdf(x) restituisce il vettore della densita della distribuzionevalutata nei valori del vettore di input x (pmf per le discrete)

cdf(x) restituisce il vettore della funzione di ripartizione (ocumulativa) della distribuzione valutata nei valori del vettore di inputx

ppf(q) restituisce il vettore dei quantili della distribuzione valutatanei valori del vettore di input q

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 76 88

Variabili aleatorie discrete Binomiale

gtgtgt from scipystats import binom

gtgtgt rv = binom(n p)

rvrvs(x) restituisce un vettore di x numeri estratti secondo unadistribuzione Binomiale di parametri n p

rvpmf(x) restituisce la probabilita di ottenere esattamente x

successi in un esperimento dicotomico (01) ripetuto n volte con unaprobabilita di successo p (x puo essere un vettore)

rvcdf(q) restituisce il valore della funzione di ripartizione in q (qpuo essere un vettore)

rvppf(p) restituisce il valore del quantile di ordine p

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 77 88

Variabili aleatorie discrete Ipergeometrica

Supponiamo di avere M = 20 animali di cui n = 7 cani Se vogliamosapere la probabilita di trovare un dato numero di cani se scegliamoN = 12 dei 20 animali in maniera casuale possiamo usare una distribuzioneipergeometrica in questo modo

gtgtgt from scipystats import hypergeom

gtgtgt [M n N] = [20 7 12]

gtgtgt rv = hypergeom(M n N)

rvpmf(x) restituisce la probabilita di estrarre esattamente x cani

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 78 88

Variabili aleatorie discrete Geometrica

gtgtgt from scipystats import geom

gtgtgt rv = geom(p)

rvpmf(x) restituisce la probabilita di avere un successo dopoesattamente x insuccessi in una successione di esperimenti dicotomici(esito 01) con una probabilita di successo p (x puo essere un vettore)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 79 88

Variabili aleatorie discrete Poisson

La distribuzione di Poisson viene usata spesso come modello per il numerodi volte per cui un evento avviene in un dato intervallo di tempo (ospazio) Ad esempio si puo utilizzare per misurare il numero di chiamatericevute da un call center in una mattinata

gtgtgt from scipystats import poisson

gtgtgt mu = 2

gtgtgt rv = poisson(mu)

rvpmf(x) restituisce il seguente valore

f (x) = exp(minusmicro)microx

x

In questo caso x rappresenta il numero di eventi per cui si vuole calcolarela probabilita sapendo che in media ne accadono micro

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 80 88

Variabili aleatorie continue Uniforme

In Scipy la funzione uniforme e soltanto continua Questo significa chenella generazione di numeri casuali otterro dati di tipo float Possiamotuttavia simulare una variabile discreta estraendo la parte intera delrisultato ottenuto

gtgtgt from scipystats import uniform

gtgtgt rv = uniform()

Il comando uniform() crea una distribuzione uniforme nellrsquointervallo[01] Possiamo creare una distribuzione uniforme qualsiasi usandouniform(x y - x) per lrsquointervallo [x y]

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 81 88

Variabili aleatorie continue

norm(mu sigma) variabile Gaussiana (o Normale) di media micro edeviazione standard σ

expon(scale = 1 lambda) variabile Esponenziale di parametroλ

Altre distribuzioni (con relativa documentazione) disponibili suhttpsdocsscipyorgdocscipyreferencestatshtml

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 82 88

Esercizi - 1

1 Unrsquourna contiene 10 palline di cui 4 bianche e 6 nere Si eseguono 5estrazioni con reimmissione

1 Tracciare grafico della funzione massa di probabilita della variabilecasuale X = rdquonumero di palline bianche estratterdquo

2 Calcolare la probabilita di estrarre 2 palline bianche3 Calcolare la probabilita di estrarre al piu 2 palline bianche4 Calcolare la probabilita di estrarre almeno 2 palline bianche5 Qual e il numero minimo x tale che la probabilita di estrarre al piu x

palline bianche sia almeno 08

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 83 88

Esercizi - 2

2 Si eseguono 10 estrazioni senza reimmissione da unrsquourna

1 Tracciare il grafico della funzione massa di probabilita della variabilecasuale X = rdquonumero di palline bianche estratterdquo nei seguenti casi

1 lrsquourna contiene 100 palline di cui 20 bianche e le restanti nere2 lrsquourna contiene 100 palline di cui 2 bianche e le restanti nere

2 Tracciare il grafico della funzione massa di probabilita della variabilecasuale X nel caso dellrsquourna 1 se si eseguono 25 estrazioni

3 Consideriamo lrsquourna 1 e N = 10 estrazioni Si aumenti il numero totaleM di palline nellrsquourna mantenendo uguale a 02 la frazione di pallinebianche Per ciascun valore di M confrontare graficamente ladistribuzione di probabilita del numero di palline bianche estratte nelcaso di estrazioni con e senza reimmissione Provare con 20 40 e 200palline bianche

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 84 88

Esercizi - 3

3 Calcolare la probabilita di ottenere piu teste che croci lanciando 7volte una moneta truccata con probabilita di avere croce pari a 045

4 Calcolare la probabilita di avere almeno 3 sei lanciando 5 dadi a 12facce

5 Calcolare la probabilita di estrarre 20 euro da un sacco contenente 47monete da 1 centesimo e 53 da 2 euro estraendo (uniformemente) acaso 10 monete senza reinserirle

6 Un grammo di uranio emette mediamente 2152 particelle α ognimillisecondo Qual e con buona approssimazione la probabilita che ungrammo di uranio emetta al piu 2000 particelle α in un millisecondo

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 85 88

Esercizi - 4

7 Un uomo si risveglia in mezzo al deserto senza acqua Dopo ogniminuto ha una probabilita del 3 di perdere conoscenza per via dellecondizioni estreme Calcolare la probabilita che lrsquouomo perdaconoscenza dopo almeno due ore e la probabilita che lrsquouomo perdaconoscenza dopo esattamente un quarto drsquoora

8 Sia X una variabile aleatoria normale di parametri micro = 10 e σ = 36Calcola

1 P(X gt 5)2 P(4 le X le 16)3 P(X le 8)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 86 88

Esercizi - 5

9 Il numero di errori tipografici per pagina di una certa rivista segue unadistribuzione di Poisson Sapendo che mediamente sono presenti 02errori per pagina determinare la probabilita che una pagina contenga

1 nessun refuso2 piu refusi

10 Arrivi alla fermata dellrsquoautobus alle 1000 e sei certo che ne passerauno in un momento distribuito uniformemente tra le 1000 e le 1030

1 Qual e la probabilita che tu debba aspettare piu di 10 minuti2 Se alle 1015 lrsquoautobus non e ancora arrivato qual e la probabilita che

tu debba aspettare almeno altri 10 minuti

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 87 88

Esercizi - 6

11 Il signor Jones e convinto che il tempo di vita di una automobile (inmigliaia di chilometri percorse) sia una variabile aleatoria esponenzialedi parametro 120 Il signor Smith ha una macchina usata da vendereche ha percorso circa 10 000 chilometri

1 Se il signor Jones decide di comprarla che probabilita ha di farle farealmeno altri 20 000 chilometri prima che sia da buttare

2 Il modello assunto dal signor Jones e ragionevole

12 Sia X una variabile casuale binomiale di parametri n = 100 e p = 07

1 Tracciate la funzione di ripartizione di X2 Calcolate il primo quartile il quantile di ordine 09 e la mediana di X3 Calcolare la probabilita P(X le 60)4 Calcolare la probabilita P(X le 88)5 Trovare il piu piccolo valore x tale che P(X le x) ge 09

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 88 88

  • Lezione 1
    • Script in Python
    • Numpy
    • Esercizi
    • Pandas
    • Esercizi
      • Lezione 2
        • File csv
        • DataFrame
        • Accesso ai DataFrame
        • Frequenze
        • Esercizi
          • Lezione 3
            • Matplotlib
            • Grafici a Barre
            • Istogrammi
            • Cumulativa empirica
            • Boxplot
            • QQplot
            • Diagramma di Pareto
            • Esercizi
              • Lezione 4
                • Definizioni
                • Probabilitagrave condizionata
                • Indipendenza
                • Esercizi
                  • Lezione 5
                    • Variabili Aleatorie
                    • Funzione di Ripartizione
                    • Funzione di Densitagrave
                    • Valore Atteso
                    • Varianza
                    • Covarianza
                    • Esercizi
                      • Lezione 6
                        • Scipy - Variabili Discrete
                        • Scipy - Variabili continue
                        • Esercizi

Esercizi

1 Lanciare uno script che stampi il vostro nome e cognome

2 Creare un array i cui elementi siano gli interi che compongono ilvostro numero di matricola

3 Sia X la lunghezza dellrsquoarray del punto precedente Creare un array diX elementi equispaziati lrsquouno dallrsquoaltro di 15

4 Creare un array di X elementi equispaziati nellrsquointervallo tra 1 e 3

5 Ottenere gli array dati dalla somma tra lrsquoarray del punto 2 e quello delpunto 3 e quello dato dalla moltiplicazione tra punto 3 e punto 4

6 Ottenere per ciascuno dei due array del punto 5 un array mascherache in corrispondenza dei numeri divisibili per 3 abbia True Falsealtrimenti

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 18 88

Pandas - Series (1)

Pandas (httpspandaspydataorg) e una libreria Python chefornisce strutture dati e strumenti relativi esclusivamente allrsquoanalisi deidatiUna Series e un array monodimensionale ed etichettato Rappresenta unaserie di osservazioni di un certo carattere fatto su un insieme di individui

a 00

b 10

c 20

d 30

e 40

f 50

g 60

h 70

Name serie di esempio dtype float64

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 19 88

Pandas - Series (2)

pandasSeries (data index dtype name )

data contiene i dati che si vuole inserire nella serie

index della stessa lunghezza di data contiene le etichette

dtype permette di specificare il tipo che i dati devono assumere

name permette di dare un nome alla Series

gtgtgt import pandas as pd

gtgtgt import numpy as np

gtgtgt oss = nparange(8)

gtgtgt etic = [rsquoarsquorsquobrsquorsquocrsquorsquodrsquorsquoersquorsquofrsquorsquogrsquorsquohrsquo]

gtgtgt pdSeries(data=oss index=etic name=rsquoserie di esempiorsquo

dtype=float)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 20 88

Accesso ai dati di una Series

Specificando un valore (o una lista di valori) per lrsquoetichetta

gtgtgt sloc[[rsquohrsquorsquoarsquo]]

h 70

a 00

Specificando un valore (o una lista di valori) per la posizione

gtgtgt s[[56]]

f 50

g 60

Usando lo slicing (come per gli array numpy) per la posizione

gtgtgt s[36]

d 30

e 40

f 50

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 21 88

Pandas Series - Utils

Seriesmin() Seriesmax() restituiscono rispettivamente il minimoed massimo tra i valori della Series

Seriessum() restituisce la somma dei valori della Series

Seriessort values() restituisce una copia della Series ordinata pervalore

Seriessort index() restituisce una copia della Series ordinata peretichette

Seriessample(n) restituisce una Series di n elementi sceltiuniformemente a caso allrsquointerno di quelli della Series

Seriesappend([s1s2]) concatena una o piu Series a quella dipartenza

Seriescount() restituisce il numero dei valori della Series che nonsiano il valore NaN

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 22 88

Il valore NaN

Nan un oggetto del modulo numpy che puo rappresentare in una Seriesun dato di cui non e stato possibile fare unrsquoosservazioneOperazioni con un valore Nan hanno come risultato il valore Nan

gtgtgt oss = range(5)

gtgtgt ossappend(None)

gtgtgt pandasSeries(oss)

0 00

1 10

2 20

3 30

4 40

5 NaN

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 23 88

Esercizi

Creare la Series gol in modo che le etichette siano numeri dallrsquo1 al 23 Idati raccolti siano numeri interi tra 0 e 30 scelti casualmente (scarica ilnotebook) La Series rappresenta i gol segnati da ciascun giocatore diuna societa calcistica nella stagione appena passata Lrsquoetichettacorrisponde al numero di maglia del giocatore Ottenere

1 I gol segnati dal capocannoniere2 Chi non ha mai fatto gol durante lrsquoanno3 La statistica del punto 2 per i soli titolari (numeri dallrsquo1 allrsquo11) e per

le sole riserve (dal 12 al 23)4 La statistica del punto 2 per i soli attaccanti (numeri dalrsquo9 allrsquo11)5 I gol segnati dai giocatori coi numeri di maglia 5 9 10 14 (somma)6 Chi ha segnato piu di 10 gol e chi ha segnato esattamente 10 gol7 Una copia della Series ordinata secondo i gol effettuati8 Una stampa dei primi 5 cannonieri e degli ultimi 59 Una copia della Series ordinata in modo discendente secondo il

numero di maglia

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 24 88

File csv

Il formato csv (comma-separated value) e un formato utilizzato perrappresentare una tabella di dati e favorirne lrsquoimportazione e lrsquoesportazioneUn file csv e scritto nella seguente forma

titolopaeseannoduratagenerevoto

Guerre StellariUSA1977121Fantascienza4

Lrsquoimpero colpisce ancoraUSA1980124Fantascienza4

Il ritorno dello JediUSA1983Fantascienza35

Profondo RossoITA1975Horror35

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 25 88

Leggere csv

La funzione read csv() di Pandas puo essere utilizzata per leggere unfile di formato csv Tra i vari parametri che passiamo in input unoparticolarmente importante e sep che indica il carattere utilizzato perseparare le colonne (default e rsquorsquo)

gtgtgt df film = pdread csv(rsquofilmcsvrsquo)

gtgtgt df film

titolo paese anno durata genere voto

Il padrino USA 19720 1750 Drammatico 45

Pulp Fiction USA 19940 1540 Drammatico 40

Fight Club USA 19990 1390 Thriller 40

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 26 88

DataFrame

In Pandas un DataFrame e una struttura dati tabulare con assi etichettatile cui colonne possono contenere dati eterogenei da colonna a colonna

gtgtgt dataframe

esempio

Nome Cognome Eta Citta

Tommaso Rossi 300 Milano

Sergio Bianchi 340 Roma

Pasquale Verdi 290 Palermo

Antonio Gialli 300 Roma

Il DataFrame puo essere visto come un insieme di serie aventi lo stessoindice accostate una allrsquoaltra

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 27 88

Accesso colonne DataFrame - 1

Per conoscere le colonne di un DataFrame possiamo invocare il comandodfcolumns dove df e la variabile in cui abbiamo instanziato ilDataFramePer accedere ad una colonna dobbiamo specificarne il nome nel seguentemodo

gtgtgt df film[rsquogenerersquo]

titolo

Il padrino Drammatico

Pulp Fiction Drammatico

Fight Club Thriller

Selezionando unrsquounica colonna in output viene restituita una Series

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 28 88

Accesso colonne DataFrame - 2

Possiamo accedere allo stesso tempo a piu colonne

gtgtgt df film[[rsquopaesersquorsquoannorsquo]]

titolo paese anno

Il padrino USA 19720

Pulp Fiction USA 19940

Fight Club USA 19990

Selezionando piu colonne in output viene restituito un DataFrame

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 29 88

Accesso righe DataFrame - 1

Per indice numerico

gtgtgt df film[1518]

titolo paese anno durata genere voto

Il padrino USA 19720 1750 Drammatico 45

Pulp Fiction USA 19940 1540 Drammatico 40

Fight Club USA 19990 1390 Thriller 40

Quasi Amici FRA 20110 1120 Commedia 35

Per valore dellrsquoindice (assumiamo che titolo sia lrsquoindice delDataFrame)

gtgtgt df film[rsquoIl padrinorsquorsquoFight Clubrsquo]

titolo paese anno durata genere voto

Il padrino USA 19720 1750 Drammatico 45

Pulp Fiction USA 19940 1540 Drammatico 40

Fight Club USA 19990 1390 Thriller 40

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 30 88

loc amp iloc

Cosı come per le Series anche con i DataFrame possiamo usare loc ediloc per lrsquoaccesso ai dati

loc[rsquonome indicersquo] permette lrsquoaccesso ad una riga o piu righetramite nome dellrsquoindice

iloc[rsquoposizionersquo] permette lrsquoaccesso ad una o piu righe tramitela loro posizione

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 31 88

Accesso tramite unrsquoespressione logica

gtgtgt df film[rsquoannorsquo gt 1998]

titolo

Il padrino False

Pulp Fiction False

Fight Club True

Quasi Amici True

gtgtgt df film[df film[rsquoannorsquo] gt 1998]

titolo paese anno durata genere voto

Fight Club USA 19990 1390 Thriller 40

Quasi Amici FRA 20110 1120 Commedia 35

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 32 88

Metodi dei DataFrame

La classe DataFrame ha diversi metodi Elenchiamo qui i piu importanti

DataFrameappend() permette di estendere il DataFrame

DataFramedrop duplicates() restituisce un DataFrame senza righeduplicate

DataFramedropna() Eliminare i valori Nan da un DataFrame

DataFramesort values() permette di ordinare il DataFrame

DataFramemax() DataFramemin() DataFramemean()DataFramemedian()

Per la completa documentazione si puo utilizzare il comandohelp(pdDataFrame) oppure andare al seguente linkhttpspandaspydataorgpandas-docsstablegenerated

pandasDataFramehtml

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 33 88

Frequenze

La frequenza assoluta indica il numero di volte che una dataosservazione occorre in un campione

La frequenza relativa e un valore tra 0 e 1 che permette di valutare inmaniera piu efficace la frequenza di un osservazione Si calcoladividendo la frequenza assoluta per il numero totale di casi

Per calcolare questa quantita in Pandas possiamo utilizzare la funzionevalue counts() che opera su una Series

In alternativa si puo utilizzare la funzione pdcrosstab che calcolaqueste frequenze in automatico restituendole in output in un DataFrame

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 34 88

Esercizi

Utilizzando il file dati-ospedalicsv dai csv del laboratorio

1 Leggere il file e visualizzarlo in un DataFrame

2 Calcolare le frequenze assolute e relative dellrsquoattributo Regioneusando crosstab

3 Ottenere la singola serie relativa allrsquoattributo Regione e calcolarne lafrequenza assoluta e relativa senza usare crosstab

4 Estrarre un sottodataframe contenente le colonne Nome (attributoDenominazione Str Pubblica New) e Numero di medici (attributoMedici SSN) degli ospedali aventi meno di 200 medici

5 Visualizzare il nome degli ospedali della regione Lombardia

6 Calcolare il numero medio di ingegneri (Ingegneri SSN) presenti negliospedali campani

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 35 88

Esercizi

7 Calcolare la varianza del numero di assistenti sociali (Assistenti socialiSSN) negli ospedali con piu di 400 medici

8 Qual e lrsquoospedale con meno medici

9 Visualizzare in ordine alfabetico il nome dei primi 10 ospedali pernumero di medici

10 Visualizzare il numero degli ospedali che hanno dichiarato il numerodi odontoiatri (per cui il valore e diverso da NaN) (OdontoiatriUniversitari)

11 Visualizzare il numero degli ospedali che hanno dichiarato il numerodi odontoiatri (Odontoiatri Universitari) e per cui questo numero emaggiore di 0

12 Calcolare le frequenze assolute per lrsquoattributo Odontoiatri SSNTrasformare questo risultato in frequenze relative

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 36 88

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) SAD 20182019 January 12 2019 37 88

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) SAD 20182019 January 12 2019 38 88

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) SAD 20182019 January 12 2019 39 88

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) SAD 20182019 January 12 2019 40 88

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) SAD 20182019 January 12 2019 41 88

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) SAD 20182019 January 12 2019 42 88

Grafici con le Series

In generale possiamo tracciare diversi tipi di grafici con le Series

rsquolinersquo line plot (default)

rsquobarrsquo vertical bar plot

rsquobarhrsquo horizontal bar plot

rsquohistrsquo histogram

rsquoboxrsquo boxplot

rsquokdersquo Kernel Density Estimation plot

rsquodensityrsquo same as rsquokdersquo

rsquoarearsquo area plot

rsquopiersquo pie plot

Per saperne di piu consultare questo link

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 43 88

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) SAD 20182019 January 12 2019 44 88

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) SAD 20182019 January 12 2019 45 88

Boxplot

Rappresenta la distribuzione di un vettore di numeri cerchiando gli outlier

gtgtgt weight = heroes[rsquoWeightrsquo]

gtgtgt weightplotbox()

gtgtgt pltshow()

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 46 88

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) SAD 20182019 January 12 2019 47 88

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) SAD 20182019 January 12 2019 48 88

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) SAD 20182019 January 12 2019 49 88

Esercizi - 1

Utilizzando il file capellicsv dai csv del laboratorio

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) SAD 20182019 January 12 2019 50 88

Esercizi - 2

Utilizzando il file dati-ospedalicsv dai csv del laboratorio

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 e canipdf

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 51 88

Sample space

Un esperimento e qualsiasi processo che produce una realizzazione (oosservazione) Lrsquoinsieme di tutte le possibili realizzazioni di un esperimentoviene detto sample space ed indicato con S

lancio di 2 monete

S = (T T ) (T C) (C T ) (C C)

gara di 3 cavalli (ab c)

S = tutti i possibili ordinamenti di(ab c)= (ab c) (a cb) (c b a)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 52 88

Eventi

lancio di 2 monete

S = (T T ) (T C) (C T ) (C C)

A = 2 monete uguali

A = (T T ) (C C)

B = 2 monete diverse

B = Ac = (T C) (C T )

gara di 3 cavalli

A = cavallo a vincente

A = (ab c) (a c b)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 53 88

Probabilita - 1

Consideriamo un esperimento con sample space S Supponiamo che adogni evento A sia associato un numero chiamato probabilita di A edindicato con P(A) che soddisfa le seguenti proprieta

1 Per ogni evento A la probabilita di A e un numero tra 0 e 1

0 le P(A) le 1

2 La probabilita del sample space S e 1

P(S) = 1

3 La probabilita dellrsquounione di eventi disgiunti e uguale alla somma delleprobabilita di tali eventi

P(A cupB) = P(A) + P(B)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 54 88

Probabilita - 2

In generale 2 eventi potrebbero non essere disgiunti

P(A cupB) = P(A) + P(B) minus P(A capB)

Esempio un certo negozio accetta pagamenti o con carte di credito VISAo Mastercard

1 22 dei clienti ha Mastercard

2 58 dei clienti ha VISA

3 14 dei clienti ha entrambe

Qual e la probabilita che un cliente ha almeno una delle 2 carte

P(A) = 022 P(B) = 058

P(A cupB) = P(A) + P(B) minus P(A capB) = 022 + 058 minus 014 = 066

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 55 88

Probabilita condizionata - 1

Se alcune informazioni riguardo lrsquoesito di un esperimento sono disponibiliparliamo di probabilita condizionata

Esempio lancio di 2 dadi

S = (11) (12) (65) (66)

Probabilita che la somma sia 10 (evento B) sapendo che il primo dadomostra 4 (evento A)

(41) (42) (43) (44) (45) (46)

P(B ∣A) = 16

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 56 88

Probabilita condizionata - 2

In generale

P(B ∣A) = P(A capB)P(A)

Supponiamo lrsquoesito sia in A

Per essere anche in B deve essere in entrambi A e B cioe in A capB

Sapendo che A e gia accaduto il nostro nuovo sample space diventa A

la probabilita di A capB viene calcolata rispetto ad A

Nel caso dei dadi

P(B ∣A) = P((46))P((41) (42) (43) (44) (45) (46)) = 136

16= 1

6

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 57 88

Indipendenza

In generale sapere che A e accaduto modifica le chance che B accadaNel caso cio non avvenga cioe se P(B ∣A) = P(B) allora i 2 eventi sidicono indipendenti In questo caso sapere che A e accaduto nonaggiunge alcuna informazione

SiccomeP(A capB) = P(B ∣A)P(A)

Abbiamo che B e indipendente da A se

P(A capB) = P(B)P(A)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 58 88

Esercizi - 1

1 Svolgere gli esercizi di combinatoria

2 Si consideri il seguente esperimento casuale rdquosi lancia tre volte unamonetardquo Qual e lo spazio degli esiti di questo esperimento casualeSi scriva esplicitamente lrsquoevento rdquosi ottengono piu teste che crocirdquo

3 Si consideri il seguente esperimento casuale rdquoSi tirano due dadirdquo Siconsiderino gli eventi E = rdquola somma dei punteggi e disparirdquo F = rdquoilprimo dado realizza un 1rdquo e G = rdquola somma dei punteggi e 5rdquo Sidescrivano gli eventi E cap F E cup F F capG E cap F c e E cap F capG

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 59 88

Esercizi - 2

4 Si consideri il seguente esperimento casuale rdquoUn sistema e compostoda 4 componenti ciascuno dei quali o funziona oppure e guasto Siosserva lo stato dei componenti ottenendo un vettore (x1 x2 x3 x4)dove xi e 1 oppure 0 a seconda che il componente i-esimo funzionioppure nordquo

1 Da quanti elementi e formato lo spazio degli esiti2 Il sistema nel suo insieme funziona fintantoche entrambi i componenti

1 e 2 oppure entrambi i componenti 3 e 4 funzionano Specifica tuttigli esiti dellrsquoevento il rdquosistema funzionardquo

3 Sia E lrsquoevento rdquoi componenti 1 e 3 sono guastirdquo Quanti esiti contiene

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 60 88

Esercizi - 3

5 Si dimostri che in uno spazio degli esiti Ω dotato di una probabilita Pper ogni evento E F sub Ω vale la disuguaglianza seguente

P(E cap F ) ge P(E) + P(F ) minus 1

6 Un gruppo di 5 bambini e 10 bambine e in fila in ordine casuale nelsenso che tutte le 15 possibili permutazioni si suppongonoequiprobabili

1 Qual e la probabilita che il quarto della fila sia un bambino2 E il dodicesimo3 Qual e la probabilita che un determinato bambino occupi la terza

posizione

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 61 88

Esercizi - 4

7 In un comune vi sono 5 alberghi Se 3 persone devono scegliere unalbergo in cui pernottare qual e la probabilita che finiscano tutte inalberghi differenti Che cosa stiamo assumendo senza dirloesplicitamente

8 La media del salario annuale di un gruppo di 100 lavoratori impiegatinellrsquoamministrazione di una grande azienda e di 130000 dollari conuna deviazione standard di 20000 dollari Se si prende una persona acaso da questo gruppo cosa possiamo dire sulla probabilita che il suosalario sia

1 tra i 90000 e i 170000 dollari2 superiore a 150000 dollari

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 62 88

Esercizi - 5

9 In una certa regione vi sono due ditte che producono forni amicroonde Quelli della fabbrica A sono difettosi con probabilita 005mentre quelli della fabbrica B con probabilita 001 Supponi di averacquistato due apparecchi prodotti dalla stessa ditta che puo essere laA o la B con probabilita del 50 Se il primo microonde e difettosoqual e la probabilita condizionata che sia difettoso anche il secondo

10 Hai chiesto ad un vicino di innaffiare una piantina delicata mentre seiin vacanza Pensi che senza acqua la piantina muoia con probabilita08 mentre se innaffiata questa probabilita si ridurrebbe a 015 Latua fiducia che il vicino si ricordi di innaffiarla e del 90

1 Qual e la probabilita che la pianta sia ancora viva al tuo ritorno2 Se fosse morta quale sarebbe la probabilita che il vicino si sia

dimenticato di innaffiarla

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 63 88

Esercizi - 6

11 Una compagnia di assicurazioni classifica i suoi clienti in tre fascebasso rischio medio rischio alto rischio Le sue statistiche indicanoche le probabilita che un cliente delle tre fasce abbia un incidenteentro un periodo di un anno sono rispettivamente 005 015 e 030Se il 20 dei clienti sono a basso rischio il 50 a medio rischio e il30 ad alto rischio che percentuale dei clienti avra mediamenteincidenti in un lasso di un anno Se un cliente non ha avuto incidentinel 1987 qual e la probabilita che appartenga a ciascuna delle trefasce

12 Se un votante scelto a caso e favorevole ad una certa riforma conprobabilita di 07 qual e la probabilita che su 10 votanti esattamente7 siano favorevoli

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 64 88

Variabili aleatorie

Una variabile aleatoria (o anche variabile aleatoria) e una variabile chepuo assumere valori diversi in dipendenza da qualche fenomeno aleatorio

fenomeno lancio di 2 dadivariabile aleatoria somma dei 2 dadi

fenomeno 3 lanci di una monetavariabile aleatoria numero di rdquotesterdquo complessivo

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 65 88

Funzione di Ripartizione

Sia X una variabile aleatoria Si chiama funzione di ripartizione di X lafunzione F che associa ad ogni numero reale a la probabilita che X siaminore o uguale ad a cioe P(X le a) = FX (a)

Nel caso della moneta (fair) lanciata 3 volte (X indica il numero di testecomplessivo)

FX (a) =

⎧⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎨⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎩

0 if a lt 0

18 per 0 le a lt 1

18 + 38 = 48 per 1 le a lt 2

48 + 38 = 78 per 2 le a lt 3

88 = 1 per a ge 3

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 66 88

Funzione di densita o di massa

Sia X una variabile aleatoria Si chiama funzione di densita di X lafunzione f che associa ad ogni numero reale a la probabilita che X siauguale ad a indicata con fX (a)

Nel caso della moneta (fair) lanciata 3 volte (X indica il numero di testecomplessivo)

fX (a) =

⎧⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎨⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎩

18 per a = 0

38 per a = 1

38 per a = 2

18 per a = 3

0 altrimenti

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 67 88

Valore Atteso

Chiamato anche media (expectation in inglese) e appunto una mediapesata dei possibili valori di una variabile aleatoria Il peso dato a ciascunvalore e la probabilita data a quello specifico valore

E[X ] =sumi

aiP(X = ai)

Esempio dado truccato

valore 6 con probabilita 712

valori da 1 a 5 con probabilita 112

La variabile aleatoria X indica la faccia risultante dal lancio di un dado

E[X ] = 1

12lowast 1 + 1

12lowast 2 + 1

12lowast 3 + 1

12lowast 4 + 1

12lowast 5 + 7

12lowast 6 = 475

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 68 88

Valore Atteso - Proprieta

Sia X una variabile aleatoria con valore atteso E[X ] Se c e una costanteallora anche cX e X + c sono variabili casuali In particolare valgono leseguenti proprieta

E[cX ] = cE[X ]E[X + c] = E[X ] + c

Sia Y una variabile aleatoria Allora

E[X +Y ] = E[X ] +E[Y ]se e solo se X e Y sono independenti

E[XY ] = E[X ]E[Y ]

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 69 88

Varianza

Ersquo il valore atteso del quadrato della differenza tra la variabile aleatoria e ilsuo valore atteso

Var(X ) = E[(X minusE[X ])2] = E[X 2] minus (E[X ])2

La radice quadrata viene detta deviazione standard di X

Esempio dado truccato

E[X 2] = 1

12lowast 12 + 1

12lowast 22 + 1

12lowast 32 + 1

12lowast 42 + 1

12lowast 52 + 7

12lowast 62 ≃ 255

Var(X ) = E[X 2] minus (E[X ])2 ≃ 255 minus 4752 ≃ 3

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 70 88

Varianza - proprieta

Sia X una variabile aleatoria e c una costante Allora valgono le seguentiproprieta

1 Var(cX ) = c2Var(X )

2 Var(X + c) = Var(X )

NOTA

Var(X +X ) ne Var(X ) +Var(X )

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 71 88

Covarianza

Siano X Y due variabili aleatorie con valore atteso rispettivamenteE[X ] = microX e E[Y ] = microY La covarianza e definita come segue

Cov(X Y ) = E[(X minus microX )(Y minus microY )] = = E[XY ] minus microXmicroY

Proprieta

1 Cov(X Y ) = Cov(Y X )2 Cov(X X ) = Var(X )3 Sia a una costante allora

Cov(aX Y ) = aCov(X Y )

4 Sia Z una variabile aleatoria allora

Cov(X + Z Y ) = Cov(X Y ) + Cov(Z Y )

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 72 88

Esercizi - 1

1 Consideriamo una variabile aleatoria X che puo assumere i valori 12o 3 Se sappiamo che

fX (1) = 1

3 fX (2) = 3

7

1 Quanto vale fX (3)2 Disegnare il grafico di questa funzione di massa3 Disegnare il grafico della relativa funzione di ripartizione

2 Dimostrare che se X1 e X2 hanno la stessa distribuzione allora

Cov(X1 +X2X1 minusX2) = 0

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 73 88

Esercizi - 2

3 La funzione di ripartizione di X e definita come segue

FX (x) =

⎧⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎨⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎩

0 per x le 0

x2 per 0 le x lt 1

23 per 1 le x lt 2

1112 per 2 le x lt 3

1 per x ge 3

Se ne tracci il graficoQuanto vale P(X gt 12)Quanto vale P(2 le X le 4)Quanto vale P(X le 3)Quanto vale P(X = 1)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 74 88

Esercizi - 3

4 Un tipo di prodotti vengono classificati a seconda dei loro difetti edella fabbrica che li ha prodotti Sia X1 il numero (1 o 2) dellafabbrica e sia X2 il numero di difetti per pezzo (che possono essere da0 a 3) di un prodotto scelto a caso tra la totalita di quelli esistentiLa tabella seguente riporta la funzione di massa di probabilitacongiunta per queste due variabili aleatorie discrete Le righe siriferiscono alla variabile X1 mentre le colonne alla variabile X2

Trova le distribuzioni marginali di X1 e X2Calcola media e varianza di X2

0 1 2 31 18 116 316 182 116 116 18 14

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 75 88

Scipy

Scipy e un modulo che permette di utilizzare varie distribuzioni diprobabilita sia di tipo discreto che continuo

La sintassi generale e la seguente Scipystatsltnome distribuzionegt

rvs(size=z) restituisce un vettore di numeri casuali estrattisecondo la distribuzione di lunghezza z

pdf(x) restituisce il vettore della densita della distribuzionevalutata nei valori del vettore di input x (pmf per le discrete)

cdf(x) restituisce il vettore della funzione di ripartizione (ocumulativa) della distribuzione valutata nei valori del vettore di inputx

ppf(q) restituisce il vettore dei quantili della distribuzione valutatanei valori del vettore di input q

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 76 88

Variabili aleatorie discrete Binomiale

gtgtgt from scipystats import binom

gtgtgt rv = binom(n p)

rvrvs(x) restituisce un vettore di x numeri estratti secondo unadistribuzione Binomiale di parametri n p

rvpmf(x) restituisce la probabilita di ottenere esattamente x

successi in un esperimento dicotomico (01) ripetuto n volte con unaprobabilita di successo p (x puo essere un vettore)

rvcdf(q) restituisce il valore della funzione di ripartizione in q (qpuo essere un vettore)

rvppf(p) restituisce il valore del quantile di ordine p

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 77 88

Variabili aleatorie discrete Ipergeometrica

Supponiamo di avere M = 20 animali di cui n = 7 cani Se vogliamosapere la probabilita di trovare un dato numero di cani se scegliamoN = 12 dei 20 animali in maniera casuale possiamo usare una distribuzioneipergeometrica in questo modo

gtgtgt from scipystats import hypergeom

gtgtgt [M n N] = [20 7 12]

gtgtgt rv = hypergeom(M n N)

rvpmf(x) restituisce la probabilita di estrarre esattamente x cani

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 78 88

Variabili aleatorie discrete Geometrica

gtgtgt from scipystats import geom

gtgtgt rv = geom(p)

rvpmf(x) restituisce la probabilita di avere un successo dopoesattamente x insuccessi in una successione di esperimenti dicotomici(esito 01) con una probabilita di successo p (x puo essere un vettore)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 79 88

Variabili aleatorie discrete Poisson

La distribuzione di Poisson viene usata spesso come modello per il numerodi volte per cui un evento avviene in un dato intervallo di tempo (ospazio) Ad esempio si puo utilizzare per misurare il numero di chiamatericevute da un call center in una mattinata

gtgtgt from scipystats import poisson

gtgtgt mu = 2

gtgtgt rv = poisson(mu)

rvpmf(x) restituisce il seguente valore

f (x) = exp(minusmicro)microx

x

In questo caso x rappresenta il numero di eventi per cui si vuole calcolarela probabilita sapendo che in media ne accadono micro

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 80 88

Variabili aleatorie continue Uniforme

In Scipy la funzione uniforme e soltanto continua Questo significa chenella generazione di numeri casuali otterro dati di tipo float Possiamotuttavia simulare una variabile discreta estraendo la parte intera delrisultato ottenuto

gtgtgt from scipystats import uniform

gtgtgt rv = uniform()

Il comando uniform() crea una distribuzione uniforme nellrsquointervallo[01] Possiamo creare una distribuzione uniforme qualsiasi usandouniform(x y - x) per lrsquointervallo [x y]

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 81 88

Variabili aleatorie continue

norm(mu sigma) variabile Gaussiana (o Normale) di media micro edeviazione standard σ

expon(scale = 1 lambda) variabile Esponenziale di parametroλ

Altre distribuzioni (con relativa documentazione) disponibili suhttpsdocsscipyorgdocscipyreferencestatshtml

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 82 88

Esercizi - 1

1 Unrsquourna contiene 10 palline di cui 4 bianche e 6 nere Si eseguono 5estrazioni con reimmissione

1 Tracciare grafico della funzione massa di probabilita della variabilecasuale X = rdquonumero di palline bianche estratterdquo

2 Calcolare la probabilita di estrarre 2 palline bianche3 Calcolare la probabilita di estrarre al piu 2 palline bianche4 Calcolare la probabilita di estrarre almeno 2 palline bianche5 Qual e il numero minimo x tale che la probabilita di estrarre al piu x

palline bianche sia almeno 08

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 83 88

Esercizi - 2

2 Si eseguono 10 estrazioni senza reimmissione da unrsquourna

1 Tracciare il grafico della funzione massa di probabilita della variabilecasuale X = rdquonumero di palline bianche estratterdquo nei seguenti casi

1 lrsquourna contiene 100 palline di cui 20 bianche e le restanti nere2 lrsquourna contiene 100 palline di cui 2 bianche e le restanti nere

2 Tracciare il grafico della funzione massa di probabilita della variabilecasuale X nel caso dellrsquourna 1 se si eseguono 25 estrazioni

3 Consideriamo lrsquourna 1 e N = 10 estrazioni Si aumenti il numero totaleM di palline nellrsquourna mantenendo uguale a 02 la frazione di pallinebianche Per ciascun valore di M confrontare graficamente ladistribuzione di probabilita del numero di palline bianche estratte nelcaso di estrazioni con e senza reimmissione Provare con 20 40 e 200palline bianche

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 84 88

Esercizi - 3

3 Calcolare la probabilita di ottenere piu teste che croci lanciando 7volte una moneta truccata con probabilita di avere croce pari a 045

4 Calcolare la probabilita di avere almeno 3 sei lanciando 5 dadi a 12facce

5 Calcolare la probabilita di estrarre 20 euro da un sacco contenente 47monete da 1 centesimo e 53 da 2 euro estraendo (uniformemente) acaso 10 monete senza reinserirle

6 Un grammo di uranio emette mediamente 2152 particelle α ognimillisecondo Qual e con buona approssimazione la probabilita che ungrammo di uranio emetta al piu 2000 particelle α in un millisecondo

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 85 88

Esercizi - 4

7 Un uomo si risveglia in mezzo al deserto senza acqua Dopo ogniminuto ha una probabilita del 3 di perdere conoscenza per via dellecondizioni estreme Calcolare la probabilita che lrsquouomo perdaconoscenza dopo almeno due ore e la probabilita che lrsquouomo perdaconoscenza dopo esattamente un quarto drsquoora

8 Sia X una variabile aleatoria normale di parametri micro = 10 e σ = 36Calcola

1 P(X gt 5)2 P(4 le X le 16)3 P(X le 8)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 86 88

Esercizi - 5

9 Il numero di errori tipografici per pagina di una certa rivista segue unadistribuzione di Poisson Sapendo che mediamente sono presenti 02errori per pagina determinare la probabilita che una pagina contenga

1 nessun refuso2 piu refusi

10 Arrivi alla fermata dellrsquoautobus alle 1000 e sei certo che ne passerauno in un momento distribuito uniformemente tra le 1000 e le 1030

1 Qual e la probabilita che tu debba aspettare piu di 10 minuti2 Se alle 1015 lrsquoautobus non e ancora arrivato qual e la probabilita che

tu debba aspettare almeno altri 10 minuti

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 87 88

Esercizi - 6

11 Il signor Jones e convinto che il tempo di vita di una automobile (inmigliaia di chilometri percorse) sia una variabile aleatoria esponenzialedi parametro 120 Il signor Smith ha una macchina usata da vendereche ha percorso circa 10 000 chilometri

1 Se il signor Jones decide di comprarla che probabilita ha di farle farealmeno altri 20 000 chilometri prima che sia da buttare

2 Il modello assunto dal signor Jones e ragionevole

12 Sia X una variabile casuale binomiale di parametri n = 100 e p = 07

1 Tracciate la funzione di ripartizione di X2 Calcolate il primo quartile il quantile di ordine 09 e la mediana di X3 Calcolare la probabilita P(X le 60)4 Calcolare la probabilita P(X le 88)5 Trovare il piu piccolo valore x tale che P(X le x) ge 09

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 88 88

  • Lezione 1
    • Script in Python
    • Numpy
    • Esercizi
    • Pandas
    • Esercizi
      • Lezione 2
        • File csv
        • DataFrame
        • Accesso ai DataFrame
        • Frequenze
        • Esercizi
          • Lezione 3
            • Matplotlib
            • Grafici a Barre
            • Istogrammi
            • Cumulativa empirica
            • Boxplot
            • QQplot
            • Diagramma di Pareto
            • Esercizi
              • Lezione 4
                • Definizioni
                • Probabilitagrave condizionata
                • Indipendenza
                • Esercizi
                  • Lezione 5
                    • Variabili Aleatorie
                    • Funzione di Ripartizione
                    • Funzione di Densitagrave
                    • Valore Atteso
                    • Varianza
                    • Covarianza
                    • Esercizi
                      • Lezione 6
                        • Scipy - Variabili Discrete
                        • Scipy - Variabili continue
                        • Esercizi

Pandas - Series (1)

Pandas (httpspandaspydataorg) e una libreria Python chefornisce strutture dati e strumenti relativi esclusivamente allrsquoanalisi deidatiUna Series e un array monodimensionale ed etichettato Rappresenta unaserie di osservazioni di un certo carattere fatto su un insieme di individui

a 00

b 10

c 20

d 30

e 40

f 50

g 60

h 70

Name serie di esempio dtype float64

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 19 88

Pandas - Series (2)

pandasSeries (data index dtype name )

data contiene i dati che si vuole inserire nella serie

index della stessa lunghezza di data contiene le etichette

dtype permette di specificare il tipo che i dati devono assumere

name permette di dare un nome alla Series

gtgtgt import pandas as pd

gtgtgt import numpy as np

gtgtgt oss = nparange(8)

gtgtgt etic = [rsquoarsquorsquobrsquorsquocrsquorsquodrsquorsquoersquorsquofrsquorsquogrsquorsquohrsquo]

gtgtgt pdSeries(data=oss index=etic name=rsquoserie di esempiorsquo

dtype=float)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 20 88

Accesso ai dati di una Series

Specificando un valore (o una lista di valori) per lrsquoetichetta

gtgtgt sloc[[rsquohrsquorsquoarsquo]]

h 70

a 00

Specificando un valore (o una lista di valori) per la posizione

gtgtgt s[[56]]

f 50

g 60

Usando lo slicing (come per gli array numpy) per la posizione

gtgtgt s[36]

d 30

e 40

f 50

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 21 88

Pandas Series - Utils

Seriesmin() Seriesmax() restituiscono rispettivamente il minimoed massimo tra i valori della Series

Seriessum() restituisce la somma dei valori della Series

Seriessort values() restituisce una copia della Series ordinata pervalore

Seriessort index() restituisce una copia della Series ordinata peretichette

Seriessample(n) restituisce una Series di n elementi sceltiuniformemente a caso allrsquointerno di quelli della Series

Seriesappend([s1s2]) concatena una o piu Series a quella dipartenza

Seriescount() restituisce il numero dei valori della Series che nonsiano il valore NaN

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 22 88

Il valore NaN

Nan un oggetto del modulo numpy che puo rappresentare in una Seriesun dato di cui non e stato possibile fare unrsquoosservazioneOperazioni con un valore Nan hanno come risultato il valore Nan

gtgtgt oss = range(5)

gtgtgt ossappend(None)

gtgtgt pandasSeries(oss)

0 00

1 10

2 20

3 30

4 40

5 NaN

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 23 88

Esercizi

Creare la Series gol in modo che le etichette siano numeri dallrsquo1 al 23 Idati raccolti siano numeri interi tra 0 e 30 scelti casualmente (scarica ilnotebook) La Series rappresenta i gol segnati da ciascun giocatore diuna societa calcistica nella stagione appena passata Lrsquoetichettacorrisponde al numero di maglia del giocatore Ottenere

1 I gol segnati dal capocannoniere2 Chi non ha mai fatto gol durante lrsquoanno3 La statistica del punto 2 per i soli titolari (numeri dallrsquo1 allrsquo11) e per

le sole riserve (dal 12 al 23)4 La statistica del punto 2 per i soli attaccanti (numeri dalrsquo9 allrsquo11)5 I gol segnati dai giocatori coi numeri di maglia 5 9 10 14 (somma)6 Chi ha segnato piu di 10 gol e chi ha segnato esattamente 10 gol7 Una copia della Series ordinata secondo i gol effettuati8 Una stampa dei primi 5 cannonieri e degli ultimi 59 Una copia della Series ordinata in modo discendente secondo il

numero di maglia

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 24 88

File csv

Il formato csv (comma-separated value) e un formato utilizzato perrappresentare una tabella di dati e favorirne lrsquoimportazione e lrsquoesportazioneUn file csv e scritto nella seguente forma

titolopaeseannoduratagenerevoto

Guerre StellariUSA1977121Fantascienza4

Lrsquoimpero colpisce ancoraUSA1980124Fantascienza4

Il ritorno dello JediUSA1983Fantascienza35

Profondo RossoITA1975Horror35

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 25 88

Leggere csv

La funzione read csv() di Pandas puo essere utilizzata per leggere unfile di formato csv Tra i vari parametri che passiamo in input unoparticolarmente importante e sep che indica il carattere utilizzato perseparare le colonne (default e rsquorsquo)

gtgtgt df film = pdread csv(rsquofilmcsvrsquo)

gtgtgt df film

titolo paese anno durata genere voto

Il padrino USA 19720 1750 Drammatico 45

Pulp Fiction USA 19940 1540 Drammatico 40

Fight Club USA 19990 1390 Thriller 40

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 26 88

DataFrame

In Pandas un DataFrame e una struttura dati tabulare con assi etichettatile cui colonne possono contenere dati eterogenei da colonna a colonna

gtgtgt dataframe

esempio

Nome Cognome Eta Citta

Tommaso Rossi 300 Milano

Sergio Bianchi 340 Roma

Pasquale Verdi 290 Palermo

Antonio Gialli 300 Roma

Il DataFrame puo essere visto come un insieme di serie aventi lo stessoindice accostate una allrsquoaltra

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 27 88

Accesso colonne DataFrame - 1

Per conoscere le colonne di un DataFrame possiamo invocare il comandodfcolumns dove df e la variabile in cui abbiamo instanziato ilDataFramePer accedere ad una colonna dobbiamo specificarne il nome nel seguentemodo

gtgtgt df film[rsquogenerersquo]

titolo

Il padrino Drammatico

Pulp Fiction Drammatico

Fight Club Thriller

Selezionando unrsquounica colonna in output viene restituita una Series

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 28 88

Accesso colonne DataFrame - 2

Possiamo accedere allo stesso tempo a piu colonne

gtgtgt df film[[rsquopaesersquorsquoannorsquo]]

titolo paese anno

Il padrino USA 19720

Pulp Fiction USA 19940

Fight Club USA 19990

Selezionando piu colonne in output viene restituito un DataFrame

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 29 88

Accesso righe DataFrame - 1

Per indice numerico

gtgtgt df film[1518]

titolo paese anno durata genere voto

Il padrino USA 19720 1750 Drammatico 45

Pulp Fiction USA 19940 1540 Drammatico 40

Fight Club USA 19990 1390 Thriller 40

Quasi Amici FRA 20110 1120 Commedia 35

Per valore dellrsquoindice (assumiamo che titolo sia lrsquoindice delDataFrame)

gtgtgt df film[rsquoIl padrinorsquorsquoFight Clubrsquo]

titolo paese anno durata genere voto

Il padrino USA 19720 1750 Drammatico 45

Pulp Fiction USA 19940 1540 Drammatico 40

Fight Club USA 19990 1390 Thriller 40

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 30 88

loc amp iloc

Cosı come per le Series anche con i DataFrame possiamo usare loc ediloc per lrsquoaccesso ai dati

loc[rsquonome indicersquo] permette lrsquoaccesso ad una riga o piu righetramite nome dellrsquoindice

iloc[rsquoposizionersquo] permette lrsquoaccesso ad una o piu righe tramitela loro posizione

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 31 88

Accesso tramite unrsquoespressione logica

gtgtgt df film[rsquoannorsquo gt 1998]

titolo

Il padrino False

Pulp Fiction False

Fight Club True

Quasi Amici True

gtgtgt df film[df film[rsquoannorsquo] gt 1998]

titolo paese anno durata genere voto

Fight Club USA 19990 1390 Thriller 40

Quasi Amici FRA 20110 1120 Commedia 35

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 32 88

Metodi dei DataFrame

La classe DataFrame ha diversi metodi Elenchiamo qui i piu importanti

DataFrameappend() permette di estendere il DataFrame

DataFramedrop duplicates() restituisce un DataFrame senza righeduplicate

DataFramedropna() Eliminare i valori Nan da un DataFrame

DataFramesort values() permette di ordinare il DataFrame

DataFramemax() DataFramemin() DataFramemean()DataFramemedian()

Per la completa documentazione si puo utilizzare il comandohelp(pdDataFrame) oppure andare al seguente linkhttpspandaspydataorgpandas-docsstablegenerated

pandasDataFramehtml

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 33 88

Frequenze

La frequenza assoluta indica il numero di volte che una dataosservazione occorre in un campione

La frequenza relativa e un valore tra 0 e 1 che permette di valutare inmaniera piu efficace la frequenza di un osservazione Si calcoladividendo la frequenza assoluta per il numero totale di casi

Per calcolare questa quantita in Pandas possiamo utilizzare la funzionevalue counts() che opera su una Series

In alternativa si puo utilizzare la funzione pdcrosstab che calcolaqueste frequenze in automatico restituendole in output in un DataFrame

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 34 88

Esercizi

Utilizzando il file dati-ospedalicsv dai csv del laboratorio

1 Leggere il file e visualizzarlo in un DataFrame

2 Calcolare le frequenze assolute e relative dellrsquoattributo Regioneusando crosstab

3 Ottenere la singola serie relativa allrsquoattributo Regione e calcolarne lafrequenza assoluta e relativa senza usare crosstab

4 Estrarre un sottodataframe contenente le colonne Nome (attributoDenominazione Str Pubblica New) e Numero di medici (attributoMedici SSN) degli ospedali aventi meno di 200 medici

5 Visualizzare il nome degli ospedali della regione Lombardia

6 Calcolare il numero medio di ingegneri (Ingegneri SSN) presenti negliospedali campani

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 35 88

Esercizi

7 Calcolare la varianza del numero di assistenti sociali (Assistenti socialiSSN) negli ospedali con piu di 400 medici

8 Qual e lrsquoospedale con meno medici

9 Visualizzare in ordine alfabetico il nome dei primi 10 ospedali pernumero di medici

10 Visualizzare il numero degli ospedali che hanno dichiarato il numerodi odontoiatri (per cui il valore e diverso da NaN) (OdontoiatriUniversitari)

11 Visualizzare il numero degli ospedali che hanno dichiarato il numerodi odontoiatri (Odontoiatri Universitari) e per cui questo numero emaggiore di 0

12 Calcolare le frequenze assolute per lrsquoattributo Odontoiatri SSNTrasformare questo risultato in frequenze relative

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 36 88

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) SAD 20182019 January 12 2019 37 88

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) SAD 20182019 January 12 2019 38 88

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) SAD 20182019 January 12 2019 39 88

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) SAD 20182019 January 12 2019 40 88

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) SAD 20182019 January 12 2019 41 88

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) SAD 20182019 January 12 2019 42 88

Grafici con le Series

In generale possiamo tracciare diversi tipi di grafici con le Series

rsquolinersquo line plot (default)

rsquobarrsquo vertical bar plot

rsquobarhrsquo horizontal bar plot

rsquohistrsquo histogram

rsquoboxrsquo boxplot

rsquokdersquo Kernel Density Estimation plot

rsquodensityrsquo same as rsquokdersquo

rsquoarearsquo area plot

rsquopiersquo pie plot

Per saperne di piu consultare questo link

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 43 88

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) SAD 20182019 January 12 2019 44 88

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) SAD 20182019 January 12 2019 45 88

Boxplot

Rappresenta la distribuzione di un vettore di numeri cerchiando gli outlier

gtgtgt weight = heroes[rsquoWeightrsquo]

gtgtgt weightplotbox()

gtgtgt pltshow()

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 46 88

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) SAD 20182019 January 12 2019 47 88

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) SAD 20182019 January 12 2019 48 88

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) SAD 20182019 January 12 2019 49 88

Esercizi - 1

Utilizzando il file capellicsv dai csv del laboratorio

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) SAD 20182019 January 12 2019 50 88

Esercizi - 2

Utilizzando il file dati-ospedalicsv dai csv del laboratorio

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 e canipdf

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 51 88

Sample space

Un esperimento e qualsiasi processo che produce una realizzazione (oosservazione) Lrsquoinsieme di tutte le possibili realizzazioni di un esperimentoviene detto sample space ed indicato con S

lancio di 2 monete

S = (T T ) (T C) (C T ) (C C)

gara di 3 cavalli (ab c)

S = tutti i possibili ordinamenti di(ab c)= (ab c) (a cb) (c b a)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 52 88

Eventi

lancio di 2 monete

S = (T T ) (T C) (C T ) (C C)

A = 2 monete uguali

A = (T T ) (C C)

B = 2 monete diverse

B = Ac = (T C) (C T )

gara di 3 cavalli

A = cavallo a vincente

A = (ab c) (a c b)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 53 88

Probabilita - 1

Consideriamo un esperimento con sample space S Supponiamo che adogni evento A sia associato un numero chiamato probabilita di A edindicato con P(A) che soddisfa le seguenti proprieta

1 Per ogni evento A la probabilita di A e un numero tra 0 e 1

0 le P(A) le 1

2 La probabilita del sample space S e 1

P(S) = 1

3 La probabilita dellrsquounione di eventi disgiunti e uguale alla somma delleprobabilita di tali eventi

P(A cupB) = P(A) + P(B)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 54 88

Probabilita - 2

In generale 2 eventi potrebbero non essere disgiunti

P(A cupB) = P(A) + P(B) minus P(A capB)

Esempio un certo negozio accetta pagamenti o con carte di credito VISAo Mastercard

1 22 dei clienti ha Mastercard

2 58 dei clienti ha VISA

3 14 dei clienti ha entrambe

Qual e la probabilita che un cliente ha almeno una delle 2 carte

P(A) = 022 P(B) = 058

P(A cupB) = P(A) + P(B) minus P(A capB) = 022 + 058 minus 014 = 066

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 55 88

Probabilita condizionata - 1

Se alcune informazioni riguardo lrsquoesito di un esperimento sono disponibiliparliamo di probabilita condizionata

Esempio lancio di 2 dadi

S = (11) (12) (65) (66)

Probabilita che la somma sia 10 (evento B) sapendo che il primo dadomostra 4 (evento A)

(41) (42) (43) (44) (45) (46)

P(B ∣A) = 16

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 56 88

Probabilita condizionata - 2

In generale

P(B ∣A) = P(A capB)P(A)

Supponiamo lrsquoesito sia in A

Per essere anche in B deve essere in entrambi A e B cioe in A capB

Sapendo che A e gia accaduto il nostro nuovo sample space diventa A

la probabilita di A capB viene calcolata rispetto ad A

Nel caso dei dadi

P(B ∣A) = P((46))P((41) (42) (43) (44) (45) (46)) = 136

16= 1

6

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 57 88

Indipendenza

In generale sapere che A e accaduto modifica le chance che B accadaNel caso cio non avvenga cioe se P(B ∣A) = P(B) allora i 2 eventi sidicono indipendenti In questo caso sapere che A e accaduto nonaggiunge alcuna informazione

SiccomeP(A capB) = P(B ∣A)P(A)

Abbiamo che B e indipendente da A se

P(A capB) = P(B)P(A)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 58 88

Esercizi - 1

1 Svolgere gli esercizi di combinatoria

2 Si consideri il seguente esperimento casuale rdquosi lancia tre volte unamonetardquo Qual e lo spazio degli esiti di questo esperimento casualeSi scriva esplicitamente lrsquoevento rdquosi ottengono piu teste che crocirdquo

3 Si consideri il seguente esperimento casuale rdquoSi tirano due dadirdquo Siconsiderino gli eventi E = rdquola somma dei punteggi e disparirdquo F = rdquoilprimo dado realizza un 1rdquo e G = rdquola somma dei punteggi e 5rdquo Sidescrivano gli eventi E cap F E cup F F capG E cap F c e E cap F capG

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 59 88

Esercizi - 2

4 Si consideri il seguente esperimento casuale rdquoUn sistema e compostoda 4 componenti ciascuno dei quali o funziona oppure e guasto Siosserva lo stato dei componenti ottenendo un vettore (x1 x2 x3 x4)dove xi e 1 oppure 0 a seconda che il componente i-esimo funzionioppure nordquo

1 Da quanti elementi e formato lo spazio degli esiti2 Il sistema nel suo insieme funziona fintantoche entrambi i componenti

1 e 2 oppure entrambi i componenti 3 e 4 funzionano Specifica tuttigli esiti dellrsquoevento il rdquosistema funzionardquo

3 Sia E lrsquoevento rdquoi componenti 1 e 3 sono guastirdquo Quanti esiti contiene

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 60 88

Esercizi - 3

5 Si dimostri che in uno spazio degli esiti Ω dotato di una probabilita Pper ogni evento E F sub Ω vale la disuguaglianza seguente

P(E cap F ) ge P(E) + P(F ) minus 1

6 Un gruppo di 5 bambini e 10 bambine e in fila in ordine casuale nelsenso che tutte le 15 possibili permutazioni si suppongonoequiprobabili

1 Qual e la probabilita che il quarto della fila sia un bambino2 E il dodicesimo3 Qual e la probabilita che un determinato bambino occupi la terza

posizione

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 61 88

Esercizi - 4

7 In un comune vi sono 5 alberghi Se 3 persone devono scegliere unalbergo in cui pernottare qual e la probabilita che finiscano tutte inalberghi differenti Che cosa stiamo assumendo senza dirloesplicitamente

8 La media del salario annuale di un gruppo di 100 lavoratori impiegatinellrsquoamministrazione di una grande azienda e di 130000 dollari conuna deviazione standard di 20000 dollari Se si prende una persona acaso da questo gruppo cosa possiamo dire sulla probabilita che il suosalario sia

1 tra i 90000 e i 170000 dollari2 superiore a 150000 dollari

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 62 88

Esercizi - 5

9 In una certa regione vi sono due ditte che producono forni amicroonde Quelli della fabbrica A sono difettosi con probabilita 005mentre quelli della fabbrica B con probabilita 001 Supponi di averacquistato due apparecchi prodotti dalla stessa ditta che puo essere laA o la B con probabilita del 50 Se il primo microonde e difettosoqual e la probabilita condizionata che sia difettoso anche il secondo

10 Hai chiesto ad un vicino di innaffiare una piantina delicata mentre seiin vacanza Pensi che senza acqua la piantina muoia con probabilita08 mentre se innaffiata questa probabilita si ridurrebbe a 015 Latua fiducia che il vicino si ricordi di innaffiarla e del 90

1 Qual e la probabilita che la pianta sia ancora viva al tuo ritorno2 Se fosse morta quale sarebbe la probabilita che il vicino si sia

dimenticato di innaffiarla

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 63 88

Esercizi - 6

11 Una compagnia di assicurazioni classifica i suoi clienti in tre fascebasso rischio medio rischio alto rischio Le sue statistiche indicanoche le probabilita che un cliente delle tre fasce abbia un incidenteentro un periodo di un anno sono rispettivamente 005 015 e 030Se il 20 dei clienti sono a basso rischio il 50 a medio rischio e il30 ad alto rischio che percentuale dei clienti avra mediamenteincidenti in un lasso di un anno Se un cliente non ha avuto incidentinel 1987 qual e la probabilita che appartenga a ciascuna delle trefasce

12 Se un votante scelto a caso e favorevole ad una certa riforma conprobabilita di 07 qual e la probabilita che su 10 votanti esattamente7 siano favorevoli

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 64 88

Variabili aleatorie

Una variabile aleatoria (o anche variabile aleatoria) e una variabile chepuo assumere valori diversi in dipendenza da qualche fenomeno aleatorio

fenomeno lancio di 2 dadivariabile aleatoria somma dei 2 dadi

fenomeno 3 lanci di una monetavariabile aleatoria numero di rdquotesterdquo complessivo

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 65 88

Funzione di Ripartizione

Sia X una variabile aleatoria Si chiama funzione di ripartizione di X lafunzione F che associa ad ogni numero reale a la probabilita che X siaminore o uguale ad a cioe P(X le a) = FX (a)

Nel caso della moneta (fair) lanciata 3 volte (X indica il numero di testecomplessivo)

FX (a) =

⎧⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎨⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎩

0 if a lt 0

18 per 0 le a lt 1

18 + 38 = 48 per 1 le a lt 2

48 + 38 = 78 per 2 le a lt 3

88 = 1 per a ge 3

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 66 88

Funzione di densita o di massa

Sia X una variabile aleatoria Si chiama funzione di densita di X lafunzione f che associa ad ogni numero reale a la probabilita che X siauguale ad a indicata con fX (a)

Nel caso della moneta (fair) lanciata 3 volte (X indica il numero di testecomplessivo)

fX (a) =

⎧⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎨⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎩

18 per a = 0

38 per a = 1

38 per a = 2

18 per a = 3

0 altrimenti

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 67 88

Valore Atteso

Chiamato anche media (expectation in inglese) e appunto una mediapesata dei possibili valori di una variabile aleatoria Il peso dato a ciascunvalore e la probabilita data a quello specifico valore

E[X ] =sumi

aiP(X = ai)

Esempio dado truccato

valore 6 con probabilita 712

valori da 1 a 5 con probabilita 112

La variabile aleatoria X indica la faccia risultante dal lancio di un dado

E[X ] = 1

12lowast 1 + 1

12lowast 2 + 1

12lowast 3 + 1

12lowast 4 + 1

12lowast 5 + 7

12lowast 6 = 475

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 68 88

Valore Atteso - Proprieta

Sia X una variabile aleatoria con valore atteso E[X ] Se c e una costanteallora anche cX e X + c sono variabili casuali In particolare valgono leseguenti proprieta

E[cX ] = cE[X ]E[X + c] = E[X ] + c

Sia Y una variabile aleatoria Allora

E[X +Y ] = E[X ] +E[Y ]se e solo se X e Y sono independenti

E[XY ] = E[X ]E[Y ]

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 69 88

Varianza

Ersquo il valore atteso del quadrato della differenza tra la variabile aleatoria e ilsuo valore atteso

Var(X ) = E[(X minusE[X ])2] = E[X 2] minus (E[X ])2

La radice quadrata viene detta deviazione standard di X

Esempio dado truccato

E[X 2] = 1

12lowast 12 + 1

12lowast 22 + 1

12lowast 32 + 1

12lowast 42 + 1

12lowast 52 + 7

12lowast 62 ≃ 255

Var(X ) = E[X 2] minus (E[X ])2 ≃ 255 minus 4752 ≃ 3

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 70 88

Varianza - proprieta

Sia X una variabile aleatoria e c una costante Allora valgono le seguentiproprieta

1 Var(cX ) = c2Var(X )

2 Var(X + c) = Var(X )

NOTA

Var(X +X ) ne Var(X ) +Var(X )

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 71 88

Covarianza

Siano X Y due variabili aleatorie con valore atteso rispettivamenteE[X ] = microX e E[Y ] = microY La covarianza e definita come segue

Cov(X Y ) = E[(X minus microX )(Y minus microY )] = = E[XY ] minus microXmicroY

Proprieta

1 Cov(X Y ) = Cov(Y X )2 Cov(X X ) = Var(X )3 Sia a una costante allora

Cov(aX Y ) = aCov(X Y )

4 Sia Z una variabile aleatoria allora

Cov(X + Z Y ) = Cov(X Y ) + Cov(Z Y )

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 72 88

Esercizi - 1

1 Consideriamo una variabile aleatoria X che puo assumere i valori 12o 3 Se sappiamo che

fX (1) = 1

3 fX (2) = 3

7

1 Quanto vale fX (3)2 Disegnare il grafico di questa funzione di massa3 Disegnare il grafico della relativa funzione di ripartizione

2 Dimostrare che se X1 e X2 hanno la stessa distribuzione allora

Cov(X1 +X2X1 minusX2) = 0

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 73 88

Esercizi - 2

3 La funzione di ripartizione di X e definita come segue

FX (x) =

⎧⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎨⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎩

0 per x le 0

x2 per 0 le x lt 1

23 per 1 le x lt 2

1112 per 2 le x lt 3

1 per x ge 3

Se ne tracci il graficoQuanto vale P(X gt 12)Quanto vale P(2 le X le 4)Quanto vale P(X le 3)Quanto vale P(X = 1)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 74 88

Esercizi - 3

4 Un tipo di prodotti vengono classificati a seconda dei loro difetti edella fabbrica che li ha prodotti Sia X1 il numero (1 o 2) dellafabbrica e sia X2 il numero di difetti per pezzo (che possono essere da0 a 3) di un prodotto scelto a caso tra la totalita di quelli esistentiLa tabella seguente riporta la funzione di massa di probabilitacongiunta per queste due variabili aleatorie discrete Le righe siriferiscono alla variabile X1 mentre le colonne alla variabile X2

Trova le distribuzioni marginali di X1 e X2Calcola media e varianza di X2

0 1 2 31 18 116 316 182 116 116 18 14

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 75 88

Scipy

Scipy e un modulo che permette di utilizzare varie distribuzioni diprobabilita sia di tipo discreto che continuo

La sintassi generale e la seguente Scipystatsltnome distribuzionegt

rvs(size=z) restituisce un vettore di numeri casuali estrattisecondo la distribuzione di lunghezza z

pdf(x) restituisce il vettore della densita della distribuzionevalutata nei valori del vettore di input x (pmf per le discrete)

cdf(x) restituisce il vettore della funzione di ripartizione (ocumulativa) della distribuzione valutata nei valori del vettore di inputx

ppf(q) restituisce il vettore dei quantili della distribuzione valutatanei valori del vettore di input q

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 76 88

Variabili aleatorie discrete Binomiale

gtgtgt from scipystats import binom

gtgtgt rv = binom(n p)

rvrvs(x) restituisce un vettore di x numeri estratti secondo unadistribuzione Binomiale di parametri n p

rvpmf(x) restituisce la probabilita di ottenere esattamente x

successi in un esperimento dicotomico (01) ripetuto n volte con unaprobabilita di successo p (x puo essere un vettore)

rvcdf(q) restituisce il valore della funzione di ripartizione in q (qpuo essere un vettore)

rvppf(p) restituisce il valore del quantile di ordine p

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 77 88

Variabili aleatorie discrete Ipergeometrica

Supponiamo di avere M = 20 animali di cui n = 7 cani Se vogliamosapere la probabilita di trovare un dato numero di cani se scegliamoN = 12 dei 20 animali in maniera casuale possiamo usare una distribuzioneipergeometrica in questo modo

gtgtgt from scipystats import hypergeom

gtgtgt [M n N] = [20 7 12]

gtgtgt rv = hypergeom(M n N)

rvpmf(x) restituisce la probabilita di estrarre esattamente x cani

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 78 88

Variabili aleatorie discrete Geometrica

gtgtgt from scipystats import geom

gtgtgt rv = geom(p)

rvpmf(x) restituisce la probabilita di avere un successo dopoesattamente x insuccessi in una successione di esperimenti dicotomici(esito 01) con una probabilita di successo p (x puo essere un vettore)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 79 88

Variabili aleatorie discrete Poisson

La distribuzione di Poisson viene usata spesso come modello per il numerodi volte per cui un evento avviene in un dato intervallo di tempo (ospazio) Ad esempio si puo utilizzare per misurare il numero di chiamatericevute da un call center in una mattinata

gtgtgt from scipystats import poisson

gtgtgt mu = 2

gtgtgt rv = poisson(mu)

rvpmf(x) restituisce il seguente valore

f (x) = exp(minusmicro)microx

x

In questo caso x rappresenta il numero di eventi per cui si vuole calcolarela probabilita sapendo che in media ne accadono micro

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 80 88

Variabili aleatorie continue Uniforme

In Scipy la funzione uniforme e soltanto continua Questo significa chenella generazione di numeri casuali otterro dati di tipo float Possiamotuttavia simulare una variabile discreta estraendo la parte intera delrisultato ottenuto

gtgtgt from scipystats import uniform

gtgtgt rv = uniform()

Il comando uniform() crea una distribuzione uniforme nellrsquointervallo[01] Possiamo creare una distribuzione uniforme qualsiasi usandouniform(x y - x) per lrsquointervallo [x y]

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 81 88

Variabili aleatorie continue

norm(mu sigma) variabile Gaussiana (o Normale) di media micro edeviazione standard σ

expon(scale = 1 lambda) variabile Esponenziale di parametroλ

Altre distribuzioni (con relativa documentazione) disponibili suhttpsdocsscipyorgdocscipyreferencestatshtml

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 82 88

Esercizi - 1

1 Unrsquourna contiene 10 palline di cui 4 bianche e 6 nere Si eseguono 5estrazioni con reimmissione

1 Tracciare grafico della funzione massa di probabilita della variabilecasuale X = rdquonumero di palline bianche estratterdquo

2 Calcolare la probabilita di estrarre 2 palline bianche3 Calcolare la probabilita di estrarre al piu 2 palline bianche4 Calcolare la probabilita di estrarre almeno 2 palline bianche5 Qual e il numero minimo x tale che la probabilita di estrarre al piu x

palline bianche sia almeno 08

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 83 88

Esercizi - 2

2 Si eseguono 10 estrazioni senza reimmissione da unrsquourna

1 Tracciare il grafico della funzione massa di probabilita della variabilecasuale X = rdquonumero di palline bianche estratterdquo nei seguenti casi

1 lrsquourna contiene 100 palline di cui 20 bianche e le restanti nere2 lrsquourna contiene 100 palline di cui 2 bianche e le restanti nere

2 Tracciare il grafico della funzione massa di probabilita della variabilecasuale X nel caso dellrsquourna 1 se si eseguono 25 estrazioni

3 Consideriamo lrsquourna 1 e N = 10 estrazioni Si aumenti il numero totaleM di palline nellrsquourna mantenendo uguale a 02 la frazione di pallinebianche Per ciascun valore di M confrontare graficamente ladistribuzione di probabilita del numero di palline bianche estratte nelcaso di estrazioni con e senza reimmissione Provare con 20 40 e 200palline bianche

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 84 88

Esercizi - 3

3 Calcolare la probabilita di ottenere piu teste che croci lanciando 7volte una moneta truccata con probabilita di avere croce pari a 045

4 Calcolare la probabilita di avere almeno 3 sei lanciando 5 dadi a 12facce

5 Calcolare la probabilita di estrarre 20 euro da un sacco contenente 47monete da 1 centesimo e 53 da 2 euro estraendo (uniformemente) acaso 10 monete senza reinserirle

6 Un grammo di uranio emette mediamente 2152 particelle α ognimillisecondo Qual e con buona approssimazione la probabilita che ungrammo di uranio emetta al piu 2000 particelle α in un millisecondo

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 85 88

Esercizi - 4

7 Un uomo si risveglia in mezzo al deserto senza acqua Dopo ogniminuto ha una probabilita del 3 di perdere conoscenza per via dellecondizioni estreme Calcolare la probabilita che lrsquouomo perdaconoscenza dopo almeno due ore e la probabilita che lrsquouomo perdaconoscenza dopo esattamente un quarto drsquoora

8 Sia X una variabile aleatoria normale di parametri micro = 10 e σ = 36Calcola

1 P(X gt 5)2 P(4 le X le 16)3 P(X le 8)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 86 88

Esercizi - 5

9 Il numero di errori tipografici per pagina di una certa rivista segue unadistribuzione di Poisson Sapendo che mediamente sono presenti 02errori per pagina determinare la probabilita che una pagina contenga

1 nessun refuso2 piu refusi

10 Arrivi alla fermata dellrsquoautobus alle 1000 e sei certo che ne passerauno in un momento distribuito uniformemente tra le 1000 e le 1030

1 Qual e la probabilita che tu debba aspettare piu di 10 minuti2 Se alle 1015 lrsquoautobus non e ancora arrivato qual e la probabilita che

tu debba aspettare almeno altri 10 minuti

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 87 88

Esercizi - 6

11 Il signor Jones e convinto che il tempo di vita di una automobile (inmigliaia di chilometri percorse) sia una variabile aleatoria esponenzialedi parametro 120 Il signor Smith ha una macchina usata da vendereche ha percorso circa 10 000 chilometri

1 Se il signor Jones decide di comprarla che probabilita ha di farle farealmeno altri 20 000 chilometri prima che sia da buttare

2 Il modello assunto dal signor Jones e ragionevole

12 Sia X una variabile casuale binomiale di parametri n = 100 e p = 07

1 Tracciate la funzione di ripartizione di X2 Calcolate il primo quartile il quantile di ordine 09 e la mediana di X3 Calcolare la probabilita P(X le 60)4 Calcolare la probabilita P(X le 88)5 Trovare il piu piccolo valore x tale che P(X le x) ge 09

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 88 88

  • Lezione 1
    • Script in Python
    • Numpy
    • Esercizi
    • Pandas
    • Esercizi
      • Lezione 2
        • File csv
        • DataFrame
        • Accesso ai DataFrame
        • Frequenze
        • Esercizi
          • Lezione 3
            • Matplotlib
            • Grafici a Barre
            • Istogrammi
            • Cumulativa empirica
            • Boxplot
            • QQplot
            • Diagramma di Pareto
            • Esercizi
              • Lezione 4
                • Definizioni
                • Probabilitagrave condizionata
                • Indipendenza
                • Esercizi
                  • Lezione 5
                    • Variabili Aleatorie
                    • Funzione di Ripartizione
                    • Funzione di Densitagrave
                    • Valore Atteso
                    • Varianza
                    • Covarianza
                    • Esercizi
                      • Lezione 6
                        • Scipy - Variabili Discrete
                        • Scipy - Variabili continue
                        • Esercizi

Pandas - Series (2)

pandasSeries (data index dtype name )

data contiene i dati che si vuole inserire nella serie

index della stessa lunghezza di data contiene le etichette

dtype permette di specificare il tipo che i dati devono assumere

name permette di dare un nome alla Series

gtgtgt import pandas as pd

gtgtgt import numpy as np

gtgtgt oss = nparange(8)

gtgtgt etic = [rsquoarsquorsquobrsquorsquocrsquorsquodrsquorsquoersquorsquofrsquorsquogrsquorsquohrsquo]

gtgtgt pdSeries(data=oss index=etic name=rsquoserie di esempiorsquo

dtype=float)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 20 88

Accesso ai dati di una Series

Specificando un valore (o una lista di valori) per lrsquoetichetta

gtgtgt sloc[[rsquohrsquorsquoarsquo]]

h 70

a 00

Specificando un valore (o una lista di valori) per la posizione

gtgtgt s[[56]]

f 50

g 60

Usando lo slicing (come per gli array numpy) per la posizione

gtgtgt s[36]

d 30

e 40

f 50

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 21 88

Pandas Series - Utils

Seriesmin() Seriesmax() restituiscono rispettivamente il minimoed massimo tra i valori della Series

Seriessum() restituisce la somma dei valori della Series

Seriessort values() restituisce una copia della Series ordinata pervalore

Seriessort index() restituisce una copia della Series ordinata peretichette

Seriessample(n) restituisce una Series di n elementi sceltiuniformemente a caso allrsquointerno di quelli della Series

Seriesappend([s1s2]) concatena una o piu Series a quella dipartenza

Seriescount() restituisce il numero dei valori della Series che nonsiano il valore NaN

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 22 88

Il valore NaN

Nan un oggetto del modulo numpy che puo rappresentare in una Seriesun dato di cui non e stato possibile fare unrsquoosservazioneOperazioni con un valore Nan hanno come risultato il valore Nan

gtgtgt oss = range(5)

gtgtgt ossappend(None)

gtgtgt pandasSeries(oss)

0 00

1 10

2 20

3 30

4 40

5 NaN

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 23 88

Esercizi

Creare la Series gol in modo che le etichette siano numeri dallrsquo1 al 23 Idati raccolti siano numeri interi tra 0 e 30 scelti casualmente (scarica ilnotebook) La Series rappresenta i gol segnati da ciascun giocatore diuna societa calcistica nella stagione appena passata Lrsquoetichettacorrisponde al numero di maglia del giocatore Ottenere

1 I gol segnati dal capocannoniere2 Chi non ha mai fatto gol durante lrsquoanno3 La statistica del punto 2 per i soli titolari (numeri dallrsquo1 allrsquo11) e per

le sole riserve (dal 12 al 23)4 La statistica del punto 2 per i soli attaccanti (numeri dalrsquo9 allrsquo11)5 I gol segnati dai giocatori coi numeri di maglia 5 9 10 14 (somma)6 Chi ha segnato piu di 10 gol e chi ha segnato esattamente 10 gol7 Una copia della Series ordinata secondo i gol effettuati8 Una stampa dei primi 5 cannonieri e degli ultimi 59 Una copia della Series ordinata in modo discendente secondo il

numero di maglia

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 24 88

File csv

Il formato csv (comma-separated value) e un formato utilizzato perrappresentare una tabella di dati e favorirne lrsquoimportazione e lrsquoesportazioneUn file csv e scritto nella seguente forma

titolopaeseannoduratagenerevoto

Guerre StellariUSA1977121Fantascienza4

Lrsquoimpero colpisce ancoraUSA1980124Fantascienza4

Il ritorno dello JediUSA1983Fantascienza35

Profondo RossoITA1975Horror35

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 25 88

Leggere csv

La funzione read csv() di Pandas puo essere utilizzata per leggere unfile di formato csv Tra i vari parametri che passiamo in input unoparticolarmente importante e sep che indica il carattere utilizzato perseparare le colonne (default e rsquorsquo)

gtgtgt df film = pdread csv(rsquofilmcsvrsquo)

gtgtgt df film

titolo paese anno durata genere voto

Il padrino USA 19720 1750 Drammatico 45

Pulp Fiction USA 19940 1540 Drammatico 40

Fight Club USA 19990 1390 Thriller 40

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 26 88

DataFrame

In Pandas un DataFrame e una struttura dati tabulare con assi etichettatile cui colonne possono contenere dati eterogenei da colonna a colonna

gtgtgt dataframe

esempio

Nome Cognome Eta Citta

Tommaso Rossi 300 Milano

Sergio Bianchi 340 Roma

Pasquale Verdi 290 Palermo

Antonio Gialli 300 Roma

Il DataFrame puo essere visto come un insieme di serie aventi lo stessoindice accostate una allrsquoaltra

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 27 88

Accesso colonne DataFrame - 1

Per conoscere le colonne di un DataFrame possiamo invocare il comandodfcolumns dove df e la variabile in cui abbiamo instanziato ilDataFramePer accedere ad una colonna dobbiamo specificarne il nome nel seguentemodo

gtgtgt df film[rsquogenerersquo]

titolo

Il padrino Drammatico

Pulp Fiction Drammatico

Fight Club Thriller

Selezionando unrsquounica colonna in output viene restituita una Series

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 28 88

Accesso colonne DataFrame - 2

Possiamo accedere allo stesso tempo a piu colonne

gtgtgt df film[[rsquopaesersquorsquoannorsquo]]

titolo paese anno

Il padrino USA 19720

Pulp Fiction USA 19940

Fight Club USA 19990

Selezionando piu colonne in output viene restituito un DataFrame

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 29 88

Accesso righe DataFrame - 1

Per indice numerico

gtgtgt df film[1518]

titolo paese anno durata genere voto

Il padrino USA 19720 1750 Drammatico 45

Pulp Fiction USA 19940 1540 Drammatico 40

Fight Club USA 19990 1390 Thriller 40

Quasi Amici FRA 20110 1120 Commedia 35

Per valore dellrsquoindice (assumiamo che titolo sia lrsquoindice delDataFrame)

gtgtgt df film[rsquoIl padrinorsquorsquoFight Clubrsquo]

titolo paese anno durata genere voto

Il padrino USA 19720 1750 Drammatico 45

Pulp Fiction USA 19940 1540 Drammatico 40

Fight Club USA 19990 1390 Thriller 40

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 30 88

loc amp iloc

Cosı come per le Series anche con i DataFrame possiamo usare loc ediloc per lrsquoaccesso ai dati

loc[rsquonome indicersquo] permette lrsquoaccesso ad una riga o piu righetramite nome dellrsquoindice

iloc[rsquoposizionersquo] permette lrsquoaccesso ad una o piu righe tramitela loro posizione

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 31 88

Accesso tramite unrsquoespressione logica

gtgtgt df film[rsquoannorsquo gt 1998]

titolo

Il padrino False

Pulp Fiction False

Fight Club True

Quasi Amici True

gtgtgt df film[df film[rsquoannorsquo] gt 1998]

titolo paese anno durata genere voto

Fight Club USA 19990 1390 Thriller 40

Quasi Amici FRA 20110 1120 Commedia 35

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 32 88

Metodi dei DataFrame

La classe DataFrame ha diversi metodi Elenchiamo qui i piu importanti

DataFrameappend() permette di estendere il DataFrame

DataFramedrop duplicates() restituisce un DataFrame senza righeduplicate

DataFramedropna() Eliminare i valori Nan da un DataFrame

DataFramesort values() permette di ordinare il DataFrame

DataFramemax() DataFramemin() DataFramemean()DataFramemedian()

Per la completa documentazione si puo utilizzare il comandohelp(pdDataFrame) oppure andare al seguente linkhttpspandaspydataorgpandas-docsstablegenerated

pandasDataFramehtml

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 33 88

Frequenze

La frequenza assoluta indica il numero di volte che una dataosservazione occorre in un campione

La frequenza relativa e un valore tra 0 e 1 che permette di valutare inmaniera piu efficace la frequenza di un osservazione Si calcoladividendo la frequenza assoluta per il numero totale di casi

Per calcolare questa quantita in Pandas possiamo utilizzare la funzionevalue counts() che opera su una Series

In alternativa si puo utilizzare la funzione pdcrosstab che calcolaqueste frequenze in automatico restituendole in output in un DataFrame

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 34 88

Esercizi

Utilizzando il file dati-ospedalicsv dai csv del laboratorio

1 Leggere il file e visualizzarlo in un DataFrame

2 Calcolare le frequenze assolute e relative dellrsquoattributo Regioneusando crosstab

3 Ottenere la singola serie relativa allrsquoattributo Regione e calcolarne lafrequenza assoluta e relativa senza usare crosstab

4 Estrarre un sottodataframe contenente le colonne Nome (attributoDenominazione Str Pubblica New) e Numero di medici (attributoMedici SSN) degli ospedali aventi meno di 200 medici

5 Visualizzare il nome degli ospedali della regione Lombardia

6 Calcolare il numero medio di ingegneri (Ingegneri SSN) presenti negliospedali campani

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 35 88

Esercizi

7 Calcolare la varianza del numero di assistenti sociali (Assistenti socialiSSN) negli ospedali con piu di 400 medici

8 Qual e lrsquoospedale con meno medici

9 Visualizzare in ordine alfabetico il nome dei primi 10 ospedali pernumero di medici

10 Visualizzare il numero degli ospedali che hanno dichiarato il numerodi odontoiatri (per cui il valore e diverso da NaN) (OdontoiatriUniversitari)

11 Visualizzare il numero degli ospedali che hanno dichiarato il numerodi odontoiatri (Odontoiatri Universitari) e per cui questo numero emaggiore di 0

12 Calcolare le frequenze assolute per lrsquoattributo Odontoiatri SSNTrasformare questo risultato in frequenze relative

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 36 88

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) SAD 20182019 January 12 2019 37 88

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) SAD 20182019 January 12 2019 38 88

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) SAD 20182019 January 12 2019 39 88

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) SAD 20182019 January 12 2019 40 88

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) SAD 20182019 January 12 2019 41 88

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) SAD 20182019 January 12 2019 42 88

Grafici con le Series

In generale possiamo tracciare diversi tipi di grafici con le Series

rsquolinersquo line plot (default)

rsquobarrsquo vertical bar plot

rsquobarhrsquo horizontal bar plot

rsquohistrsquo histogram

rsquoboxrsquo boxplot

rsquokdersquo Kernel Density Estimation plot

rsquodensityrsquo same as rsquokdersquo

rsquoarearsquo area plot

rsquopiersquo pie plot

Per saperne di piu consultare questo link

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 43 88

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) SAD 20182019 January 12 2019 44 88

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) SAD 20182019 January 12 2019 45 88

Boxplot

Rappresenta la distribuzione di un vettore di numeri cerchiando gli outlier

gtgtgt weight = heroes[rsquoWeightrsquo]

gtgtgt weightplotbox()

gtgtgt pltshow()

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 46 88

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) SAD 20182019 January 12 2019 47 88

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) SAD 20182019 January 12 2019 48 88

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) SAD 20182019 January 12 2019 49 88

Esercizi - 1

Utilizzando il file capellicsv dai csv del laboratorio

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) SAD 20182019 January 12 2019 50 88

Esercizi - 2

Utilizzando il file dati-ospedalicsv dai csv del laboratorio

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 e canipdf

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 51 88

Sample space

Un esperimento e qualsiasi processo che produce una realizzazione (oosservazione) Lrsquoinsieme di tutte le possibili realizzazioni di un esperimentoviene detto sample space ed indicato con S

lancio di 2 monete

S = (T T ) (T C) (C T ) (C C)

gara di 3 cavalli (ab c)

S = tutti i possibili ordinamenti di(ab c)= (ab c) (a cb) (c b a)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 52 88

Eventi

lancio di 2 monete

S = (T T ) (T C) (C T ) (C C)

A = 2 monete uguali

A = (T T ) (C C)

B = 2 monete diverse

B = Ac = (T C) (C T )

gara di 3 cavalli

A = cavallo a vincente

A = (ab c) (a c b)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 53 88

Probabilita - 1

Consideriamo un esperimento con sample space S Supponiamo che adogni evento A sia associato un numero chiamato probabilita di A edindicato con P(A) che soddisfa le seguenti proprieta

1 Per ogni evento A la probabilita di A e un numero tra 0 e 1

0 le P(A) le 1

2 La probabilita del sample space S e 1

P(S) = 1

3 La probabilita dellrsquounione di eventi disgiunti e uguale alla somma delleprobabilita di tali eventi

P(A cupB) = P(A) + P(B)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 54 88

Probabilita - 2

In generale 2 eventi potrebbero non essere disgiunti

P(A cupB) = P(A) + P(B) minus P(A capB)

Esempio un certo negozio accetta pagamenti o con carte di credito VISAo Mastercard

1 22 dei clienti ha Mastercard

2 58 dei clienti ha VISA

3 14 dei clienti ha entrambe

Qual e la probabilita che un cliente ha almeno una delle 2 carte

P(A) = 022 P(B) = 058

P(A cupB) = P(A) + P(B) minus P(A capB) = 022 + 058 minus 014 = 066

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 55 88

Probabilita condizionata - 1

Se alcune informazioni riguardo lrsquoesito di un esperimento sono disponibiliparliamo di probabilita condizionata

Esempio lancio di 2 dadi

S = (11) (12) (65) (66)

Probabilita che la somma sia 10 (evento B) sapendo che il primo dadomostra 4 (evento A)

(41) (42) (43) (44) (45) (46)

P(B ∣A) = 16

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 56 88

Probabilita condizionata - 2

In generale

P(B ∣A) = P(A capB)P(A)

Supponiamo lrsquoesito sia in A

Per essere anche in B deve essere in entrambi A e B cioe in A capB

Sapendo che A e gia accaduto il nostro nuovo sample space diventa A

la probabilita di A capB viene calcolata rispetto ad A

Nel caso dei dadi

P(B ∣A) = P((46))P((41) (42) (43) (44) (45) (46)) = 136

16= 1

6

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 57 88

Indipendenza

In generale sapere che A e accaduto modifica le chance che B accadaNel caso cio non avvenga cioe se P(B ∣A) = P(B) allora i 2 eventi sidicono indipendenti In questo caso sapere che A e accaduto nonaggiunge alcuna informazione

SiccomeP(A capB) = P(B ∣A)P(A)

Abbiamo che B e indipendente da A se

P(A capB) = P(B)P(A)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 58 88

Esercizi - 1

1 Svolgere gli esercizi di combinatoria

2 Si consideri il seguente esperimento casuale rdquosi lancia tre volte unamonetardquo Qual e lo spazio degli esiti di questo esperimento casualeSi scriva esplicitamente lrsquoevento rdquosi ottengono piu teste che crocirdquo

3 Si consideri il seguente esperimento casuale rdquoSi tirano due dadirdquo Siconsiderino gli eventi E = rdquola somma dei punteggi e disparirdquo F = rdquoilprimo dado realizza un 1rdquo e G = rdquola somma dei punteggi e 5rdquo Sidescrivano gli eventi E cap F E cup F F capG E cap F c e E cap F capG

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 59 88

Esercizi - 2

4 Si consideri il seguente esperimento casuale rdquoUn sistema e compostoda 4 componenti ciascuno dei quali o funziona oppure e guasto Siosserva lo stato dei componenti ottenendo un vettore (x1 x2 x3 x4)dove xi e 1 oppure 0 a seconda che il componente i-esimo funzionioppure nordquo

1 Da quanti elementi e formato lo spazio degli esiti2 Il sistema nel suo insieme funziona fintantoche entrambi i componenti

1 e 2 oppure entrambi i componenti 3 e 4 funzionano Specifica tuttigli esiti dellrsquoevento il rdquosistema funzionardquo

3 Sia E lrsquoevento rdquoi componenti 1 e 3 sono guastirdquo Quanti esiti contiene

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 60 88

Esercizi - 3

5 Si dimostri che in uno spazio degli esiti Ω dotato di una probabilita Pper ogni evento E F sub Ω vale la disuguaglianza seguente

P(E cap F ) ge P(E) + P(F ) minus 1

6 Un gruppo di 5 bambini e 10 bambine e in fila in ordine casuale nelsenso che tutte le 15 possibili permutazioni si suppongonoequiprobabili

1 Qual e la probabilita che il quarto della fila sia un bambino2 E il dodicesimo3 Qual e la probabilita che un determinato bambino occupi la terza

posizione

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 61 88

Esercizi - 4

7 In un comune vi sono 5 alberghi Se 3 persone devono scegliere unalbergo in cui pernottare qual e la probabilita che finiscano tutte inalberghi differenti Che cosa stiamo assumendo senza dirloesplicitamente

8 La media del salario annuale di un gruppo di 100 lavoratori impiegatinellrsquoamministrazione di una grande azienda e di 130000 dollari conuna deviazione standard di 20000 dollari Se si prende una persona acaso da questo gruppo cosa possiamo dire sulla probabilita che il suosalario sia

1 tra i 90000 e i 170000 dollari2 superiore a 150000 dollari

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 62 88

Esercizi - 5

9 In una certa regione vi sono due ditte che producono forni amicroonde Quelli della fabbrica A sono difettosi con probabilita 005mentre quelli della fabbrica B con probabilita 001 Supponi di averacquistato due apparecchi prodotti dalla stessa ditta che puo essere laA o la B con probabilita del 50 Se il primo microonde e difettosoqual e la probabilita condizionata che sia difettoso anche il secondo

10 Hai chiesto ad un vicino di innaffiare una piantina delicata mentre seiin vacanza Pensi che senza acqua la piantina muoia con probabilita08 mentre se innaffiata questa probabilita si ridurrebbe a 015 Latua fiducia che il vicino si ricordi di innaffiarla e del 90

1 Qual e la probabilita che la pianta sia ancora viva al tuo ritorno2 Se fosse morta quale sarebbe la probabilita che il vicino si sia

dimenticato di innaffiarla

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 63 88

Esercizi - 6

11 Una compagnia di assicurazioni classifica i suoi clienti in tre fascebasso rischio medio rischio alto rischio Le sue statistiche indicanoche le probabilita che un cliente delle tre fasce abbia un incidenteentro un periodo di un anno sono rispettivamente 005 015 e 030Se il 20 dei clienti sono a basso rischio il 50 a medio rischio e il30 ad alto rischio che percentuale dei clienti avra mediamenteincidenti in un lasso di un anno Se un cliente non ha avuto incidentinel 1987 qual e la probabilita che appartenga a ciascuna delle trefasce

12 Se un votante scelto a caso e favorevole ad una certa riforma conprobabilita di 07 qual e la probabilita che su 10 votanti esattamente7 siano favorevoli

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 64 88

Variabili aleatorie

Una variabile aleatoria (o anche variabile aleatoria) e una variabile chepuo assumere valori diversi in dipendenza da qualche fenomeno aleatorio

fenomeno lancio di 2 dadivariabile aleatoria somma dei 2 dadi

fenomeno 3 lanci di una monetavariabile aleatoria numero di rdquotesterdquo complessivo

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 65 88

Funzione di Ripartizione

Sia X una variabile aleatoria Si chiama funzione di ripartizione di X lafunzione F che associa ad ogni numero reale a la probabilita che X siaminore o uguale ad a cioe P(X le a) = FX (a)

Nel caso della moneta (fair) lanciata 3 volte (X indica il numero di testecomplessivo)

FX (a) =

⎧⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎨⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎩

0 if a lt 0

18 per 0 le a lt 1

18 + 38 = 48 per 1 le a lt 2

48 + 38 = 78 per 2 le a lt 3

88 = 1 per a ge 3

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 66 88

Funzione di densita o di massa

Sia X una variabile aleatoria Si chiama funzione di densita di X lafunzione f che associa ad ogni numero reale a la probabilita che X siauguale ad a indicata con fX (a)

Nel caso della moneta (fair) lanciata 3 volte (X indica il numero di testecomplessivo)

fX (a) =

⎧⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎨⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎩

18 per a = 0

38 per a = 1

38 per a = 2

18 per a = 3

0 altrimenti

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 67 88

Valore Atteso

Chiamato anche media (expectation in inglese) e appunto una mediapesata dei possibili valori di una variabile aleatoria Il peso dato a ciascunvalore e la probabilita data a quello specifico valore

E[X ] =sumi

aiP(X = ai)

Esempio dado truccato

valore 6 con probabilita 712

valori da 1 a 5 con probabilita 112

La variabile aleatoria X indica la faccia risultante dal lancio di un dado

E[X ] = 1

12lowast 1 + 1

12lowast 2 + 1

12lowast 3 + 1

12lowast 4 + 1

12lowast 5 + 7

12lowast 6 = 475

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 68 88

Valore Atteso - Proprieta

Sia X una variabile aleatoria con valore atteso E[X ] Se c e una costanteallora anche cX e X + c sono variabili casuali In particolare valgono leseguenti proprieta

E[cX ] = cE[X ]E[X + c] = E[X ] + c

Sia Y una variabile aleatoria Allora

E[X +Y ] = E[X ] +E[Y ]se e solo se X e Y sono independenti

E[XY ] = E[X ]E[Y ]

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 69 88

Varianza

Ersquo il valore atteso del quadrato della differenza tra la variabile aleatoria e ilsuo valore atteso

Var(X ) = E[(X minusE[X ])2] = E[X 2] minus (E[X ])2

La radice quadrata viene detta deviazione standard di X

Esempio dado truccato

E[X 2] = 1

12lowast 12 + 1

12lowast 22 + 1

12lowast 32 + 1

12lowast 42 + 1

12lowast 52 + 7

12lowast 62 ≃ 255

Var(X ) = E[X 2] minus (E[X ])2 ≃ 255 minus 4752 ≃ 3

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 70 88

Varianza - proprieta

Sia X una variabile aleatoria e c una costante Allora valgono le seguentiproprieta

1 Var(cX ) = c2Var(X )

2 Var(X + c) = Var(X )

NOTA

Var(X +X ) ne Var(X ) +Var(X )

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 71 88

Covarianza

Siano X Y due variabili aleatorie con valore atteso rispettivamenteE[X ] = microX e E[Y ] = microY La covarianza e definita come segue

Cov(X Y ) = E[(X minus microX )(Y minus microY )] = = E[XY ] minus microXmicroY

Proprieta

1 Cov(X Y ) = Cov(Y X )2 Cov(X X ) = Var(X )3 Sia a una costante allora

Cov(aX Y ) = aCov(X Y )

4 Sia Z una variabile aleatoria allora

Cov(X + Z Y ) = Cov(X Y ) + Cov(Z Y )

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 72 88

Esercizi - 1

1 Consideriamo una variabile aleatoria X che puo assumere i valori 12o 3 Se sappiamo che

fX (1) = 1

3 fX (2) = 3

7

1 Quanto vale fX (3)2 Disegnare il grafico di questa funzione di massa3 Disegnare il grafico della relativa funzione di ripartizione

2 Dimostrare che se X1 e X2 hanno la stessa distribuzione allora

Cov(X1 +X2X1 minusX2) = 0

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 73 88

Esercizi - 2

3 La funzione di ripartizione di X e definita come segue

FX (x) =

⎧⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎨⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎩

0 per x le 0

x2 per 0 le x lt 1

23 per 1 le x lt 2

1112 per 2 le x lt 3

1 per x ge 3

Se ne tracci il graficoQuanto vale P(X gt 12)Quanto vale P(2 le X le 4)Quanto vale P(X le 3)Quanto vale P(X = 1)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 74 88

Esercizi - 3

4 Un tipo di prodotti vengono classificati a seconda dei loro difetti edella fabbrica che li ha prodotti Sia X1 il numero (1 o 2) dellafabbrica e sia X2 il numero di difetti per pezzo (che possono essere da0 a 3) di un prodotto scelto a caso tra la totalita di quelli esistentiLa tabella seguente riporta la funzione di massa di probabilitacongiunta per queste due variabili aleatorie discrete Le righe siriferiscono alla variabile X1 mentre le colonne alla variabile X2

Trova le distribuzioni marginali di X1 e X2Calcola media e varianza di X2

0 1 2 31 18 116 316 182 116 116 18 14

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 75 88

Scipy

Scipy e un modulo che permette di utilizzare varie distribuzioni diprobabilita sia di tipo discreto che continuo

La sintassi generale e la seguente Scipystatsltnome distribuzionegt

rvs(size=z) restituisce un vettore di numeri casuali estrattisecondo la distribuzione di lunghezza z

pdf(x) restituisce il vettore della densita della distribuzionevalutata nei valori del vettore di input x (pmf per le discrete)

cdf(x) restituisce il vettore della funzione di ripartizione (ocumulativa) della distribuzione valutata nei valori del vettore di inputx

ppf(q) restituisce il vettore dei quantili della distribuzione valutatanei valori del vettore di input q

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 76 88

Variabili aleatorie discrete Binomiale

gtgtgt from scipystats import binom

gtgtgt rv = binom(n p)

rvrvs(x) restituisce un vettore di x numeri estratti secondo unadistribuzione Binomiale di parametri n p

rvpmf(x) restituisce la probabilita di ottenere esattamente x

successi in un esperimento dicotomico (01) ripetuto n volte con unaprobabilita di successo p (x puo essere un vettore)

rvcdf(q) restituisce il valore della funzione di ripartizione in q (qpuo essere un vettore)

rvppf(p) restituisce il valore del quantile di ordine p

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 77 88

Variabili aleatorie discrete Ipergeometrica

Supponiamo di avere M = 20 animali di cui n = 7 cani Se vogliamosapere la probabilita di trovare un dato numero di cani se scegliamoN = 12 dei 20 animali in maniera casuale possiamo usare una distribuzioneipergeometrica in questo modo

gtgtgt from scipystats import hypergeom

gtgtgt [M n N] = [20 7 12]

gtgtgt rv = hypergeom(M n N)

rvpmf(x) restituisce la probabilita di estrarre esattamente x cani

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 78 88

Variabili aleatorie discrete Geometrica

gtgtgt from scipystats import geom

gtgtgt rv = geom(p)

rvpmf(x) restituisce la probabilita di avere un successo dopoesattamente x insuccessi in una successione di esperimenti dicotomici(esito 01) con una probabilita di successo p (x puo essere un vettore)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 79 88

Variabili aleatorie discrete Poisson

La distribuzione di Poisson viene usata spesso come modello per il numerodi volte per cui un evento avviene in un dato intervallo di tempo (ospazio) Ad esempio si puo utilizzare per misurare il numero di chiamatericevute da un call center in una mattinata

gtgtgt from scipystats import poisson

gtgtgt mu = 2

gtgtgt rv = poisson(mu)

rvpmf(x) restituisce il seguente valore

f (x) = exp(minusmicro)microx

x

In questo caso x rappresenta il numero di eventi per cui si vuole calcolarela probabilita sapendo che in media ne accadono micro

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 80 88

Variabili aleatorie continue Uniforme

In Scipy la funzione uniforme e soltanto continua Questo significa chenella generazione di numeri casuali otterro dati di tipo float Possiamotuttavia simulare una variabile discreta estraendo la parte intera delrisultato ottenuto

gtgtgt from scipystats import uniform

gtgtgt rv = uniform()

Il comando uniform() crea una distribuzione uniforme nellrsquointervallo[01] Possiamo creare una distribuzione uniforme qualsiasi usandouniform(x y - x) per lrsquointervallo [x y]

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 81 88

Variabili aleatorie continue

norm(mu sigma) variabile Gaussiana (o Normale) di media micro edeviazione standard σ

expon(scale = 1 lambda) variabile Esponenziale di parametroλ

Altre distribuzioni (con relativa documentazione) disponibili suhttpsdocsscipyorgdocscipyreferencestatshtml

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 82 88

Esercizi - 1

1 Unrsquourna contiene 10 palline di cui 4 bianche e 6 nere Si eseguono 5estrazioni con reimmissione

1 Tracciare grafico della funzione massa di probabilita della variabilecasuale X = rdquonumero di palline bianche estratterdquo

2 Calcolare la probabilita di estrarre 2 palline bianche3 Calcolare la probabilita di estrarre al piu 2 palline bianche4 Calcolare la probabilita di estrarre almeno 2 palline bianche5 Qual e il numero minimo x tale che la probabilita di estrarre al piu x

palline bianche sia almeno 08

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 83 88

Esercizi - 2

2 Si eseguono 10 estrazioni senza reimmissione da unrsquourna

1 Tracciare il grafico della funzione massa di probabilita della variabilecasuale X = rdquonumero di palline bianche estratterdquo nei seguenti casi

1 lrsquourna contiene 100 palline di cui 20 bianche e le restanti nere2 lrsquourna contiene 100 palline di cui 2 bianche e le restanti nere

2 Tracciare il grafico della funzione massa di probabilita della variabilecasuale X nel caso dellrsquourna 1 se si eseguono 25 estrazioni

3 Consideriamo lrsquourna 1 e N = 10 estrazioni Si aumenti il numero totaleM di palline nellrsquourna mantenendo uguale a 02 la frazione di pallinebianche Per ciascun valore di M confrontare graficamente ladistribuzione di probabilita del numero di palline bianche estratte nelcaso di estrazioni con e senza reimmissione Provare con 20 40 e 200palline bianche

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 84 88

Esercizi - 3

3 Calcolare la probabilita di ottenere piu teste che croci lanciando 7volte una moneta truccata con probabilita di avere croce pari a 045

4 Calcolare la probabilita di avere almeno 3 sei lanciando 5 dadi a 12facce

5 Calcolare la probabilita di estrarre 20 euro da un sacco contenente 47monete da 1 centesimo e 53 da 2 euro estraendo (uniformemente) acaso 10 monete senza reinserirle

6 Un grammo di uranio emette mediamente 2152 particelle α ognimillisecondo Qual e con buona approssimazione la probabilita che ungrammo di uranio emetta al piu 2000 particelle α in un millisecondo

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 85 88

Esercizi - 4

7 Un uomo si risveglia in mezzo al deserto senza acqua Dopo ogniminuto ha una probabilita del 3 di perdere conoscenza per via dellecondizioni estreme Calcolare la probabilita che lrsquouomo perdaconoscenza dopo almeno due ore e la probabilita che lrsquouomo perdaconoscenza dopo esattamente un quarto drsquoora

8 Sia X una variabile aleatoria normale di parametri micro = 10 e σ = 36Calcola

1 P(X gt 5)2 P(4 le X le 16)3 P(X le 8)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 86 88

Esercizi - 5

9 Il numero di errori tipografici per pagina di una certa rivista segue unadistribuzione di Poisson Sapendo che mediamente sono presenti 02errori per pagina determinare la probabilita che una pagina contenga

1 nessun refuso2 piu refusi

10 Arrivi alla fermata dellrsquoautobus alle 1000 e sei certo che ne passerauno in un momento distribuito uniformemente tra le 1000 e le 1030

1 Qual e la probabilita che tu debba aspettare piu di 10 minuti2 Se alle 1015 lrsquoautobus non e ancora arrivato qual e la probabilita che

tu debba aspettare almeno altri 10 minuti

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 87 88

Esercizi - 6

11 Il signor Jones e convinto che il tempo di vita di una automobile (inmigliaia di chilometri percorse) sia una variabile aleatoria esponenzialedi parametro 120 Il signor Smith ha una macchina usata da vendereche ha percorso circa 10 000 chilometri

1 Se il signor Jones decide di comprarla che probabilita ha di farle farealmeno altri 20 000 chilometri prima che sia da buttare

2 Il modello assunto dal signor Jones e ragionevole

12 Sia X una variabile casuale binomiale di parametri n = 100 e p = 07

1 Tracciate la funzione di ripartizione di X2 Calcolate il primo quartile il quantile di ordine 09 e la mediana di X3 Calcolare la probabilita P(X le 60)4 Calcolare la probabilita P(X le 88)5 Trovare il piu piccolo valore x tale che P(X le x) ge 09

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 88 88

  • Lezione 1
    • Script in Python
    • Numpy
    • Esercizi
    • Pandas
    • Esercizi
      • Lezione 2
        • File csv
        • DataFrame
        • Accesso ai DataFrame
        • Frequenze
        • Esercizi
          • Lezione 3
            • Matplotlib
            • Grafici a Barre
            • Istogrammi
            • Cumulativa empirica
            • Boxplot
            • QQplot
            • Diagramma di Pareto
            • Esercizi
              • Lezione 4
                • Definizioni
                • Probabilitagrave condizionata
                • Indipendenza
                • Esercizi
                  • Lezione 5
                    • Variabili Aleatorie
                    • Funzione di Ripartizione
                    • Funzione di Densitagrave
                    • Valore Atteso
                    • Varianza
                    • Covarianza
                    • Esercizi
                      • Lezione 6
                        • Scipy - Variabili Discrete
                        • Scipy - Variabili continue
                        • Esercizi

Accesso ai dati di una Series

Specificando un valore (o una lista di valori) per lrsquoetichetta

gtgtgt sloc[[rsquohrsquorsquoarsquo]]

h 70

a 00

Specificando un valore (o una lista di valori) per la posizione

gtgtgt s[[56]]

f 50

g 60

Usando lo slicing (come per gli array numpy) per la posizione

gtgtgt s[36]

d 30

e 40

f 50

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 21 88

Pandas Series - Utils

Seriesmin() Seriesmax() restituiscono rispettivamente il minimoed massimo tra i valori della Series

Seriessum() restituisce la somma dei valori della Series

Seriessort values() restituisce una copia della Series ordinata pervalore

Seriessort index() restituisce una copia della Series ordinata peretichette

Seriessample(n) restituisce una Series di n elementi sceltiuniformemente a caso allrsquointerno di quelli della Series

Seriesappend([s1s2]) concatena una o piu Series a quella dipartenza

Seriescount() restituisce il numero dei valori della Series che nonsiano il valore NaN

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 22 88

Il valore NaN

Nan un oggetto del modulo numpy che puo rappresentare in una Seriesun dato di cui non e stato possibile fare unrsquoosservazioneOperazioni con un valore Nan hanno come risultato il valore Nan

gtgtgt oss = range(5)

gtgtgt ossappend(None)

gtgtgt pandasSeries(oss)

0 00

1 10

2 20

3 30

4 40

5 NaN

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 23 88

Esercizi

Creare la Series gol in modo che le etichette siano numeri dallrsquo1 al 23 Idati raccolti siano numeri interi tra 0 e 30 scelti casualmente (scarica ilnotebook) La Series rappresenta i gol segnati da ciascun giocatore diuna societa calcistica nella stagione appena passata Lrsquoetichettacorrisponde al numero di maglia del giocatore Ottenere

1 I gol segnati dal capocannoniere2 Chi non ha mai fatto gol durante lrsquoanno3 La statistica del punto 2 per i soli titolari (numeri dallrsquo1 allrsquo11) e per

le sole riserve (dal 12 al 23)4 La statistica del punto 2 per i soli attaccanti (numeri dalrsquo9 allrsquo11)5 I gol segnati dai giocatori coi numeri di maglia 5 9 10 14 (somma)6 Chi ha segnato piu di 10 gol e chi ha segnato esattamente 10 gol7 Una copia della Series ordinata secondo i gol effettuati8 Una stampa dei primi 5 cannonieri e degli ultimi 59 Una copia della Series ordinata in modo discendente secondo il

numero di maglia

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 24 88

File csv

Il formato csv (comma-separated value) e un formato utilizzato perrappresentare una tabella di dati e favorirne lrsquoimportazione e lrsquoesportazioneUn file csv e scritto nella seguente forma

titolopaeseannoduratagenerevoto

Guerre StellariUSA1977121Fantascienza4

Lrsquoimpero colpisce ancoraUSA1980124Fantascienza4

Il ritorno dello JediUSA1983Fantascienza35

Profondo RossoITA1975Horror35

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 25 88

Leggere csv

La funzione read csv() di Pandas puo essere utilizzata per leggere unfile di formato csv Tra i vari parametri che passiamo in input unoparticolarmente importante e sep che indica il carattere utilizzato perseparare le colonne (default e rsquorsquo)

gtgtgt df film = pdread csv(rsquofilmcsvrsquo)

gtgtgt df film

titolo paese anno durata genere voto

Il padrino USA 19720 1750 Drammatico 45

Pulp Fiction USA 19940 1540 Drammatico 40

Fight Club USA 19990 1390 Thriller 40

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 26 88

DataFrame

In Pandas un DataFrame e una struttura dati tabulare con assi etichettatile cui colonne possono contenere dati eterogenei da colonna a colonna

gtgtgt dataframe

esempio

Nome Cognome Eta Citta

Tommaso Rossi 300 Milano

Sergio Bianchi 340 Roma

Pasquale Verdi 290 Palermo

Antonio Gialli 300 Roma

Il DataFrame puo essere visto come un insieme di serie aventi lo stessoindice accostate una allrsquoaltra

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 27 88

Accesso colonne DataFrame - 1

Per conoscere le colonne di un DataFrame possiamo invocare il comandodfcolumns dove df e la variabile in cui abbiamo instanziato ilDataFramePer accedere ad una colonna dobbiamo specificarne il nome nel seguentemodo

gtgtgt df film[rsquogenerersquo]

titolo

Il padrino Drammatico

Pulp Fiction Drammatico

Fight Club Thriller

Selezionando unrsquounica colonna in output viene restituita una Series

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 28 88

Accesso colonne DataFrame - 2

Possiamo accedere allo stesso tempo a piu colonne

gtgtgt df film[[rsquopaesersquorsquoannorsquo]]

titolo paese anno

Il padrino USA 19720

Pulp Fiction USA 19940

Fight Club USA 19990

Selezionando piu colonne in output viene restituito un DataFrame

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 29 88

Accesso righe DataFrame - 1

Per indice numerico

gtgtgt df film[1518]

titolo paese anno durata genere voto

Il padrino USA 19720 1750 Drammatico 45

Pulp Fiction USA 19940 1540 Drammatico 40

Fight Club USA 19990 1390 Thriller 40

Quasi Amici FRA 20110 1120 Commedia 35

Per valore dellrsquoindice (assumiamo che titolo sia lrsquoindice delDataFrame)

gtgtgt df film[rsquoIl padrinorsquorsquoFight Clubrsquo]

titolo paese anno durata genere voto

Il padrino USA 19720 1750 Drammatico 45

Pulp Fiction USA 19940 1540 Drammatico 40

Fight Club USA 19990 1390 Thriller 40

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 30 88

loc amp iloc

Cosı come per le Series anche con i DataFrame possiamo usare loc ediloc per lrsquoaccesso ai dati

loc[rsquonome indicersquo] permette lrsquoaccesso ad una riga o piu righetramite nome dellrsquoindice

iloc[rsquoposizionersquo] permette lrsquoaccesso ad una o piu righe tramitela loro posizione

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 31 88

Accesso tramite unrsquoespressione logica

gtgtgt df film[rsquoannorsquo gt 1998]

titolo

Il padrino False

Pulp Fiction False

Fight Club True

Quasi Amici True

gtgtgt df film[df film[rsquoannorsquo] gt 1998]

titolo paese anno durata genere voto

Fight Club USA 19990 1390 Thriller 40

Quasi Amici FRA 20110 1120 Commedia 35

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 32 88

Metodi dei DataFrame

La classe DataFrame ha diversi metodi Elenchiamo qui i piu importanti

DataFrameappend() permette di estendere il DataFrame

DataFramedrop duplicates() restituisce un DataFrame senza righeduplicate

DataFramedropna() Eliminare i valori Nan da un DataFrame

DataFramesort values() permette di ordinare il DataFrame

DataFramemax() DataFramemin() DataFramemean()DataFramemedian()

Per la completa documentazione si puo utilizzare il comandohelp(pdDataFrame) oppure andare al seguente linkhttpspandaspydataorgpandas-docsstablegenerated

pandasDataFramehtml

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 33 88

Frequenze

La frequenza assoluta indica il numero di volte che una dataosservazione occorre in un campione

La frequenza relativa e un valore tra 0 e 1 che permette di valutare inmaniera piu efficace la frequenza di un osservazione Si calcoladividendo la frequenza assoluta per il numero totale di casi

Per calcolare questa quantita in Pandas possiamo utilizzare la funzionevalue counts() che opera su una Series

In alternativa si puo utilizzare la funzione pdcrosstab che calcolaqueste frequenze in automatico restituendole in output in un DataFrame

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 34 88

Esercizi

Utilizzando il file dati-ospedalicsv dai csv del laboratorio

1 Leggere il file e visualizzarlo in un DataFrame

2 Calcolare le frequenze assolute e relative dellrsquoattributo Regioneusando crosstab

3 Ottenere la singola serie relativa allrsquoattributo Regione e calcolarne lafrequenza assoluta e relativa senza usare crosstab

4 Estrarre un sottodataframe contenente le colonne Nome (attributoDenominazione Str Pubblica New) e Numero di medici (attributoMedici SSN) degli ospedali aventi meno di 200 medici

5 Visualizzare il nome degli ospedali della regione Lombardia

6 Calcolare il numero medio di ingegneri (Ingegneri SSN) presenti negliospedali campani

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 35 88

Esercizi

7 Calcolare la varianza del numero di assistenti sociali (Assistenti socialiSSN) negli ospedali con piu di 400 medici

8 Qual e lrsquoospedale con meno medici

9 Visualizzare in ordine alfabetico il nome dei primi 10 ospedali pernumero di medici

10 Visualizzare il numero degli ospedali che hanno dichiarato il numerodi odontoiatri (per cui il valore e diverso da NaN) (OdontoiatriUniversitari)

11 Visualizzare il numero degli ospedali che hanno dichiarato il numerodi odontoiatri (Odontoiatri Universitari) e per cui questo numero emaggiore di 0

12 Calcolare le frequenze assolute per lrsquoattributo Odontoiatri SSNTrasformare questo risultato in frequenze relative

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 36 88

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) SAD 20182019 January 12 2019 37 88

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) SAD 20182019 January 12 2019 38 88

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) SAD 20182019 January 12 2019 39 88

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) SAD 20182019 January 12 2019 40 88

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) SAD 20182019 January 12 2019 41 88

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) SAD 20182019 January 12 2019 42 88

Grafici con le Series

In generale possiamo tracciare diversi tipi di grafici con le Series

rsquolinersquo line plot (default)

rsquobarrsquo vertical bar plot

rsquobarhrsquo horizontal bar plot

rsquohistrsquo histogram

rsquoboxrsquo boxplot

rsquokdersquo Kernel Density Estimation plot

rsquodensityrsquo same as rsquokdersquo

rsquoarearsquo area plot

rsquopiersquo pie plot

Per saperne di piu consultare questo link

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 43 88

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) SAD 20182019 January 12 2019 44 88

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) SAD 20182019 January 12 2019 45 88

Boxplot

Rappresenta la distribuzione di un vettore di numeri cerchiando gli outlier

gtgtgt weight = heroes[rsquoWeightrsquo]

gtgtgt weightplotbox()

gtgtgt pltshow()

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 46 88

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) SAD 20182019 January 12 2019 47 88

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) SAD 20182019 January 12 2019 48 88

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) SAD 20182019 January 12 2019 49 88

Esercizi - 1

Utilizzando il file capellicsv dai csv del laboratorio

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) SAD 20182019 January 12 2019 50 88

Esercizi - 2

Utilizzando il file dati-ospedalicsv dai csv del laboratorio

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 e canipdf

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 51 88

Sample space

Un esperimento e qualsiasi processo che produce una realizzazione (oosservazione) Lrsquoinsieme di tutte le possibili realizzazioni di un esperimentoviene detto sample space ed indicato con S

lancio di 2 monete

S = (T T ) (T C) (C T ) (C C)

gara di 3 cavalli (ab c)

S = tutti i possibili ordinamenti di(ab c)= (ab c) (a cb) (c b a)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 52 88

Eventi

lancio di 2 monete

S = (T T ) (T C) (C T ) (C C)

A = 2 monete uguali

A = (T T ) (C C)

B = 2 monete diverse

B = Ac = (T C) (C T )

gara di 3 cavalli

A = cavallo a vincente

A = (ab c) (a c b)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 53 88

Probabilita - 1

Consideriamo un esperimento con sample space S Supponiamo che adogni evento A sia associato un numero chiamato probabilita di A edindicato con P(A) che soddisfa le seguenti proprieta

1 Per ogni evento A la probabilita di A e un numero tra 0 e 1

0 le P(A) le 1

2 La probabilita del sample space S e 1

P(S) = 1

3 La probabilita dellrsquounione di eventi disgiunti e uguale alla somma delleprobabilita di tali eventi

P(A cupB) = P(A) + P(B)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 54 88

Probabilita - 2

In generale 2 eventi potrebbero non essere disgiunti

P(A cupB) = P(A) + P(B) minus P(A capB)

Esempio un certo negozio accetta pagamenti o con carte di credito VISAo Mastercard

1 22 dei clienti ha Mastercard

2 58 dei clienti ha VISA

3 14 dei clienti ha entrambe

Qual e la probabilita che un cliente ha almeno una delle 2 carte

P(A) = 022 P(B) = 058

P(A cupB) = P(A) + P(B) minus P(A capB) = 022 + 058 minus 014 = 066

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 55 88

Probabilita condizionata - 1

Se alcune informazioni riguardo lrsquoesito di un esperimento sono disponibiliparliamo di probabilita condizionata

Esempio lancio di 2 dadi

S = (11) (12) (65) (66)

Probabilita che la somma sia 10 (evento B) sapendo che il primo dadomostra 4 (evento A)

(41) (42) (43) (44) (45) (46)

P(B ∣A) = 16

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 56 88

Probabilita condizionata - 2

In generale

P(B ∣A) = P(A capB)P(A)

Supponiamo lrsquoesito sia in A

Per essere anche in B deve essere in entrambi A e B cioe in A capB

Sapendo che A e gia accaduto il nostro nuovo sample space diventa A

la probabilita di A capB viene calcolata rispetto ad A

Nel caso dei dadi

P(B ∣A) = P((46))P((41) (42) (43) (44) (45) (46)) = 136

16= 1

6

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 57 88

Indipendenza

In generale sapere che A e accaduto modifica le chance che B accadaNel caso cio non avvenga cioe se P(B ∣A) = P(B) allora i 2 eventi sidicono indipendenti In questo caso sapere che A e accaduto nonaggiunge alcuna informazione

SiccomeP(A capB) = P(B ∣A)P(A)

Abbiamo che B e indipendente da A se

P(A capB) = P(B)P(A)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 58 88

Esercizi - 1

1 Svolgere gli esercizi di combinatoria

2 Si consideri il seguente esperimento casuale rdquosi lancia tre volte unamonetardquo Qual e lo spazio degli esiti di questo esperimento casualeSi scriva esplicitamente lrsquoevento rdquosi ottengono piu teste che crocirdquo

3 Si consideri il seguente esperimento casuale rdquoSi tirano due dadirdquo Siconsiderino gli eventi E = rdquola somma dei punteggi e disparirdquo F = rdquoilprimo dado realizza un 1rdquo e G = rdquola somma dei punteggi e 5rdquo Sidescrivano gli eventi E cap F E cup F F capG E cap F c e E cap F capG

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 59 88

Esercizi - 2

4 Si consideri il seguente esperimento casuale rdquoUn sistema e compostoda 4 componenti ciascuno dei quali o funziona oppure e guasto Siosserva lo stato dei componenti ottenendo un vettore (x1 x2 x3 x4)dove xi e 1 oppure 0 a seconda che il componente i-esimo funzionioppure nordquo

1 Da quanti elementi e formato lo spazio degli esiti2 Il sistema nel suo insieme funziona fintantoche entrambi i componenti

1 e 2 oppure entrambi i componenti 3 e 4 funzionano Specifica tuttigli esiti dellrsquoevento il rdquosistema funzionardquo

3 Sia E lrsquoevento rdquoi componenti 1 e 3 sono guastirdquo Quanti esiti contiene

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 60 88

Esercizi - 3

5 Si dimostri che in uno spazio degli esiti Ω dotato di una probabilita Pper ogni evento E F sub Ω vale la disuguaglianza seguente

P(E cap F ) ge P(E) + P(F ) minus 1

6 Un gruppo di 5 bambini e 10 bambine e in fila in ordine casuale nelsenso che tutte le 15 possibili permutazioni si suppongonoequiprobabili

1 Qual e la probabilita che il quarto della fila sia un bambino2 E il dodicesimo3 Qual e la probabilita che un determinato bambino occupi la terza

posizione

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 61 88

Esercizi - 4

7 In un comune vi sono 5 alberghi Se 3 persone devono scegliere unalbergo in cui pernottare qual e la probabilita che finiscano tutte inalberghi differenti Che cosa stiamo assumendo senza dirloesplicitamente

8 La media del salario annuale di un gruppo di 100 lavoratori impiegatinellrsquoamministrazione di una grande azienda e di 130000 dollari conuna deviazione standard di 20000 dollari Se si prende una persona acaso da questo gruppo cosa possiamo dire sulla probabilita che il suosalario sia

1 tra i 90000 e i 170000 dollari2 superiore a 150000 dollari

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 62 88

Esercizi - 5

9 In una certa regione vi sono due ditte che producono forni amicroonde Quelli della fabbrica A sono difettosi con probabilita 005mentre quelli della fabbrica B con probabilita 001 Supponi di averacquistato due apparecchi prodotti dalla stessa ditta che puo essere laA o la B con probabilita del 50 Se il primo microonde e difettosoqual e la probabilita condizionata che sia difettoso anche il secondo

10 Hai chiesto ad un vicino di innaffiare una piantina delicata mentre seiin vacanza Pensi che senza acqua la piantina muoia con probabilita08 mentre se innaffiata questa probabilita si ridurrebbe a 015 Latua fiducia che il vicino si ricordi di innaffiarla e del 90

1 Qual e la probabilita che la pianta sia ancora viva al tuo ritorno2 Se fosse morta quale sarebbe la probabilita che il vicino si sia

dimenticato di innaffiarla

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 63 88

Esercizi - 6

11 Una compagnia di assicurazioni classifica i suoi clienti in tre fascebasso rischio medio rischio alto rischio Le sue statistiche indicanoche le probabilita che un cliente delle tre fasce abbia un incidenteentro un periodo di un anno sono rispettivamente 005 015 e 030Se il 20 dei clienti sono a basso rischio il 50 a medio rischio e il30 ad alto rischio che percentuale dei clienti avra mediamenteincidenti in un lasso di un anno Se un cliente non ha avuto incidentinel 1987 qual e la probabilita che appartenga a ciascuna delle trefasce

12 Se un votante scelto a caso e favorevole ad una certa riforma conprobabilita di 07 qual e la probabilita che su 10 votanti esattamente7 siano favorevoli

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 64 88

Variabili aleatorie

Una variabile aleatoria (o anche variabile aleatoria) e una variabile chepuo assumere valori diversi in dipendenza da qualche fenomeno aleatorio

fenomeno lancio di 2 dadivariabile aleatoria somma dei 2 dadi

fenomeno 3 lanci di una monetavariabile aleatoria numero di rdquotesterdquo complessivo

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 65 88

Funzione di Ripartizione

Sia X una variabile aleatoria Si chiama funzione di ripartizione di X lafunzione F che associa ad ogni numero reale a la probabilita che X siaminore o uguale ad a cioe P(X le a) = FX (a)

Nel caso della moneta (fair) lanciata 3 volte (X indica il numero di testecomplessivo)

FX (a) =

⎧⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎨⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎩

0 if a lt 0

18 per 0 le a lt 1

18 + 38 = 48 per 1 le a lt 2

48 + 38 = 78 per 2 le a lt 3

88 = 1 per a ge 3

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 66 88

Funzione di densita o di massa

Sia X una variabile aleatoria Si chiama funzione di densita di X lafunzione f che associa ad ogni numero reale a la probabilita che X siauguale ad a indicata con fX (a)

Nel caso della moneta (fair) lanciata 3 volte (X indica il numero di testecomplessivo)

fX (a) =

⎧⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎨⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎩

18 per a = 0

38 per a = 1

38 per a = 2

18 per a = 3

0 altrimenti

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 67 88

Valore Atteso

Chiamato anche media (expectation in inglese) e appunto una mediapesata dei possibili valori di una variabile aleatoria Il peso dato a ciascunvalore e la probabilita data a quello specifico valore

E[X ] =sumi

aiP(X = ai)

Esempio dado truccato

valore 6 con probabilita 712

valori da 1 a 5 con probabilita 112

La variabile aleatoria X indica la faccia risultante dal lancio di un dado

E[X ] = 1

12lowast 1 + 1

12lowast 2 + 1

12lowast 3 + 1

12lowast 4 + 1

12lowast 5 + 7

12lowast 6 = 475

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 68 88

Valore Atteso - Proprieta

Sia X una variabile aleatoria con valore atteso E[X ] Se c e una costanteallora anche cX e X + c sono variabili casuali In particolare valgono leseguenti proprieta

E[cX ] = cE[X ]E[X + c] = E[X ] + c

Sia Y una variabile aleatoria Allora

E[X +Y ] = E[X ] +E[Y ]se e solo se X e Y sono independenti

E[XY ] = E[X ]E[Y ]

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 69 88

Varianza

Ersquo il valore atteso del quadrato della differenza tra la variabile aleatoria e ilsuo valore atteso

Var(X ) = E[(X minusE[X ])2] = E[X 2] minus (E[X ])2

La radice quadrata viene detta deviazione standard di X

Esempio dado truccato

E[X 2] = 1

12lowast 12 + 1

12lowast 22 + 1

12lowast 32 + 1

12lowast 42 + 1

12lowast 52 + 7

12lowast 62 ≃ 255

Var(X ) = E[X 2] minus (E[X ])2 ≃ 255 minus 4752 ≃ 3

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 70 88

Varianza - proprieta

Sia X una variabile aleatoria e c una costante Allora valgono le seguentiproprieta

1 Var(cX ) = c2Var(X )

2 Var(X + c) = Var(X )

NOTA

Var(X +X ) ne Var(X ) +Var(X )

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 71 88

Covarianza

Siano X Y due variabili aleatorie con valore atteso rispettivamenteE[X ] = microX e E[Y ] = microY La covarianza e definita come segue

Cov(X Y ) = E[(X minus microX )(Y minus microY )] = = E[XY ] minus microXmicroY

Proprieta

1 Cov(X Y ) = Cov(Y X )2 Cov(X X ) = Var(X )3 Sia a una costante allora

Cov(aX Y ) = aCov(X Y )

4 Sia Z una variabile aleatoria allora

Cov(X + Z Y ) = Cov(X Y ) + Cov(Z Y )

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 72 88

Esercizi - 1

1 Consideriamo una variabile aleatoria X che puo assumere i valori 12o 3 Se sappiamo che

fX (1) = 1

3 fX (2) = 3

7

1 Quanto vale fX (3)2 Disegnare il grafico di questa funzione di massa3 Disegnare il grafico della relativa funzione di ripartizione

2 Dimostrare che se X1 e X2 hanno la stessa distribuzione allora

Cov(X1 +X2X1 minusX2) = 0

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 73 88

Esercizi - 2

3 La funzione di ripartizione di X e definita come segue

FX (x) =

⎧⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎨⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎩

0 per x le 0

x2 per 0 le x lt 1

23 per 1 le x lt 2

1112 per 2 le x lt 3

1 per x ge 3

Se ne tracci il graficoQuanto vale P(X gt 12)Quanto vale P(2 le X le 4)Quanto vale P(X le 3)Quanto vale P(X = 1)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 74 88

Esercizi - 3

4 Un tipo di prodotti vengono classificati a seconda dei loro difetti edella fabbrica che li ha prodotti Sia X1 il numero (1 o 2) dellafabbrica e sia X2 il numero di difetti per pezzo (che possono essere da0 a 3) di un prodotto scelto a caso tra la totalita di quelli esistentiLa tabella seguente riporta la funzione di massa di probabilitacongiunta per queste due variabili aleatorie discrete Le righe siriferiscono alla variabile X1 mentre le colonne alla variabile X2

Trova le distribuzioni marginali di X1 e X2Calcola media e varianza di X2

0 1 2 31 18 116 316 182 116 116 18 14

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 75 88

Scipy

Scipy e un modulo che permette di utilizzare varie distribuzioni diprobabilita sia di tipo discreto che continuo

La sintassi generale e la seguente Scipystatsltnome distribuzionegt

rvs(size=z) restituisce un vettore di numeri casuali estrattisecondo la distribuzione di lunghezza z

pdf(x) restituisce il vettore della densita della distribuzionevalutata nei valori del vettore di input x (pmf per le discrete)

cdf(x) restituisce il vettore della funzione di ripartizione (ocumulativa) della distribuzione valutata nei valori del vettore di inputx

ppf(q) restituisce il vettore dei quantili della distribuzione valutatanei valori del vettore di input q

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 76 88

Variabili aleatorie discrete Binomiale

gtgtgt from scipystats import binom

gtgtgt rv = binom(n p)

rvrvs(x) restituisce un vettore di x numeri estratti secondo unadistribuzione Binomiale di parametri n p

rvpmf(x) restituisce la probabilita di ottenere esattamente x

successi in un esperimento dicotomico (01) ripetuto n volte con unaprobabilita di successo p (x puo essere un vettore)

rvcdf(q) restituisce il valore della funzione di ripartizione in q (qpuo essere un vettore)

rvppf(p) restituisce il valore del quantile di ordine p

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 77 88

Variabili aleatorie discrete Ipergeometrica

Supponiamo di avere M = 20 animali di cui n = 7 cani Se vogliamosapere la probabilita di trovare un dato numero di cani se scegliamoN = 12 dei 20 animali in maniera casuale possiamo usare una distribuzioneipergeometrica in questo modo

gtgtgt from scipystats import hypergeom

gtgtgt [M n N] = [20 7 12]

gtgtgt rv = hypergeom(M n N)

rvpmf(x) restituisce la probabilita di estrarre esattamente x cani

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 78 88

Variabili aleatorie discrete Geometrica

gtgtgt from scipystats import geom

gtgtgt rv = geom(p)

rvpmf(x) restituisce la probabilita di avere un successo dopoesattamente x insuccessi in una successione di esperimenti dicotomici(esito 01) con una probabilita di successo p (x puo essere un vettore)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 79 88

Variabili aleatorie discrete Poisson

La distribuzione di Poisson viene usata spesso come modello per il numerodi volte per cui un evento avviene in un dato intervallo di tempo (ospazio) Ad esempio si puo utilizzare per misurare il numero di chiamatericevute da un call center in una mattinata

gtgtgt from scipystats import poisson

gtgtgt mu = 2

gtgtgt rv = poisson(mu)

rvpmf(x) restituisce il seguente valore

f (x) = exp(minusmicro)microx

x

In questo caso x rappresenta il numero di eventi per cui si vuole calcolarela probabilita sapendo che in media ne accadono micro

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 80 88

Variabili aleatorie continue Uniforme

In Scipy la funzione uniforme e soltanto continua Questo significa chenella generazione di numeri casuali otterro dati di tipo float Possiamotuttavia simulare una variabile discreta estraendo la parte intera delrisultato ottenuto

gtgtgt from scipystats import uniform

gtgtgt rv = uniform()

Il comando uniform() crea una distribuzione uniforme nellrsquointervallo[01] Possiamo creare una distribuzione uniforme qualsiasi usandouniform(x y - x) per lrsquointervallo [x y]

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 81 88

Variabili aleatorie continue

norm(mu sigma) variabile Gaussiana (o Normale) di media micro edeviazione standard σ

expon(scale = 1 lambda) variabile Esponenziale di parametroλ

Altre distribuzioni (con relativa documentazione) disponibili suhttpsdocsscipyorgdocscipyreferencestatshtml

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 82 88

Esercizi - 1

1 Unrsquourna contiene 10 palline di cui 4 bianche e 6 nere Si eseguono 5estrazioni con reimmissione

1 Tracciare grafico della funzione massa di probabilita della variabilecasuale X = rdquonumero di palline bianche estratterdquo

2 Calcolare la probabilita di estrarre 2 palline bianche3 Calcolare la probabilita di estrarre al piu 2 palline bianche4 Calcolare la probabilita di estrarre almeno 2 palline bianche5 Qual e il numero minimo x tale che la probabilita di estrarre al piu x

palline bianche sia almeno 08

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 83 88

Esercizi - 2

2 Si eseguono 10 estrazioni senza reimmissione da unrsquourna

1 Tracciare il grafico della funzione massa di probabilita della variabilecasuale X = rdquonumero di palline bianche estratterdquo nei seguenti casi

1 lrsquourna contiene 100 palline di cui 20 bianche e le restanti nere2 lrsquourna contiene 100 palline di cui 2 bianche e le restanti nere

2 Tracciare il grafico della funzione massa di probabilita della variabilecasuale X nel caso dellrsquourna 1 se si eseguono 25 estrazioni

3 Consideriamo lrsquourna 1 e N = 10 estrazioni Si aumenti il numero totaleM di palline nellrsquourna mantenendo uguale a 02 la frazione di pallinebianche Per ciascun valore di M confrontare graficamente ladistribuzione di probabilita del numero di palline bianche estratte nelcaso di estrazioni con e senza reimmissione Provare con 20 40 e 200palline bianche

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 84 88

Esercizi - 3

3 Calcolare la probabilita di ottenere piu teste che croci lanciando 7volte una moneta truccata con probabilita di avere croce pari a 045

4 Calcolare la probabilita di avere almeno 3 sei lanciando 5 dadi a 12facce

5 Calcolare la probabilita di estrarre 20 euro da un sacco contenente 47monete da 1 centesimo e 53 da 2 euro estraendo (uniformemente) acaso 10 monete senza reinserirle

6 Un grammo di uranio emette mediamente 2152 particelle α ognimillisecondo Qual e con buona approssimazione la probabilita che ungrammo di uranio emetta al piu 2000 particelle α in un millisecondo

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 85 88

Esercizi - 4

7 Un uomo si risveglia in mezzo al deserto senza acqua Dopo ogniminuto ha una probabilita del 3 di perdere conoscenza per via dellecondizioni estreme Calcolare la probabilita che lrsquouomo perdaconoscenza dopo almeno due ore e la probabilita che lrsquouomo perdaconoscenza dopo esattamente un quarto drsquoora

8 Sia X una variabile aleatoria normale di parametri micro = 10 e σ = 36Calcola

1 P(X gt 5)2 P(4 le X le 16)3 P(X le 8)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 86 88

Esercizi - 5

9 Il numero di errori tipografici per pagina di una certa rivista segue unadistribuzione di Poisson Sapendo che mediamente sono presenti 02errori per pagina determinare la probabilita che una pagina contenga

1 nessun refuso2 piu refusi

10 Arrivi alla fermata dellrsquoautobus alle 1000 e sei certo che ne passerauno in un momento distribuito uniformemente tra le 1000 e le 1030

1 Qual e la probabilita che tu debba aspettare piu di 10 minuti2 Se alle 1015 lrsquoautobus non e ancora arrivato qual e la probabilita che

tu debba aspettare almeno altri 10 minuti

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 87 88

Esercizi - 6

11 Il signor Jones e convinto che il tempo di vita di una automobile (inmigliaia di chilometri percorse) sia una variabile aleatoria esponenzialedi parametro 120 Il signor Smith ha una macchina usata da vendereche ha percorso circa 10 000 chilometri

1 Se il signor Jones decide di comprarla che probabilita ha di farle farealmeno altri 20 000 chilometri prima che sia da buttare

2 Il modello assunto dal signor Jones e ragionevole

12 Sia X una variabile casuale binomiale di parametri n = 100 e p = 07

1 Tracciate la funzione di ripartizione di X2 Calcolate il primo quartile il quantile di ordine 09 e la mediana di X3 Calcolare la probabilita P(X le 60)4 Calcolare la probabilita P(X le 88)5 Trovare il piu piccolo valore x tale che P(X le x) ge 09

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 88 88

  • Lezione 1
    • Script in Python
    • Numpy
    • Esercizi
    • Pandas
    • Esercizi
      • Lezione 2
        • File csv
        • DataFrame
        • Accesso ai DataFrame
        • Frequenze
        • Esercizi
          • Lezione 3
            • Matplotlib
            • Grafici a Barre
            • Istogrammi
            • Cumulativa empirica
            • Boxplot
            • QQplot
            • Diagramma di Pareto
            • Esercizi
              • Lezione 4
                • Definizioni
                • Probabilitagrave condizionata
                • Indipendenza
                • Esercizi
                  • Lezione 5
                    • Variabili Aleatorie
                    • Funzione di Ripartizione
                    • Funzione di Densitagrave
                    • Valore Atteso
                    • Varianza
                    • Covarianza
                    • Esercizi
                      • Lezione 6
                        • Scipy - Variabili Discrete
                        • Scipy - Variabili continue
                        • Esercizi

Pandas Series - Utils

Seriesmin() Seriesmax() restituiscono rispettivamente il minimoed massimo tra i valori della Series

Seriessum() restituisce la somma dei valori della Series

Seriessort values() restituisce una copia della Series ordinata pervalore

Seriessort index() restituisce una copia della Series ordinata peretichette

Seriessample(n) restituisce una Series di n elementi sceltiuniformemente a caso allrsquointerno di quelli della Series

Seriesappend([s1s2]) concatena una o piu Series a quella dipartenza

Seriescount() restituisce il numero dei valori della Series che nonsiano il valore NaN

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 22 88

Il valore NaN

Nan un oggetto del modulo numpy che puo rappresentare in una Seriesun dato di cui non e stato possibile fare unrsquoosservazioneOperazioni con un valore Nan hanno come risultato il valore Nan

gtgtgt oss = range(5)

gtgtgt ossappend(None)

gtgtgt pandasSeries(oss)

0 00

1 10

2 20

3 30

4 40

5 NaN

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 23 88

Esercizi

Creare la Series gol in modo che le etichette siano numeri dallrsquo1 al 23 Idati raccolti siano numeri interi tra 0 e 30 scelti casualmente (scarica ilnotebook) La Series rappresenta i gol segnati da ciascun giocatore diuna societa calcistica nella stagione appena passata Lrsquoetichettacorrisponde al numero di maglia del giocatore Ottenere

1 I gol segnati dal capocannoniere2 Chi non ha mai fatto gol durante lrsquoanno3 La statistica del punto 2 per i soli titolari (numeri dallrsquo1 allrsquo11) e per

le sole riserve (dal 12 al 23)4 La statistica del punto 2 per i soli attaccanti (numeri dalrsquo9 allrsquo11)5 I gol segnati dai giocatori coi numeri di maglia 5 9 10 14 (somma)6 Chi ha segnato piu di 10 gol e chi ha segnato esattamente 10 gol7 Una copia della Series ordinata secondo i gol effettuati8 Una stampa dei primi 5 cannonieri e degli ultimi 59 Una copia della Series ordinata in modo discendente secondo il

numero di maglia

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 24 88

File csv

Il formato csv (comma-separated value) e un formato utilizzato perrappresentare una tabella di dati e favorirne lrsquoimportazione e lrsquoesportazioneUn file csv e scritto nella seguente forma

titolopaeseannoduratagenerevoto

Guerre StellariUSA1977121Fantascienza4

Lrsquoimpero colpisce ancoraUSA1980124Fantascienza4

Il ritorno dello JediUSA1983Fantascienza35

Profondo RossoITA1975Horror35

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 25 88

Leggere csv

La funzione read csv() di Pandas puo essere utilizzata per leggere unfile di formato csv Tra i vari parametri che passiamo in input unoparticolarmente importante e sep che indica il carattere utilizzato perseparare le colonne (default e rsquorsquo)

gtgtgt df film = pdread csv(rsquofilmcsvrsquo)

gtgtgt df film

titolo paese anno durata genere voto

Il padrino USA 19720 1750 Drammatico 45

Pulp Fiction USA 19940 1540 Drammatico 40

Fight Club USA 19990 1390 Thriller 40

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 26 88

DataFrame

In Pandas un DataFrame e una struttura dati tabulare con assi etichettatile cui colonne possono contenere dati eterogenei da colonna a colonna

gtgtgt dataframe

esempio

Nome Cognome Eta Citta

Tommaso Rossi 300 Milano

Sergio Bianchi 340 Roma

Pasquale Verdi 290 Palermo

Antonio Gialli 300 Roma

Il DataFrame puo essere visto come un insieme di serie aventi lo stessoindice accostate una allrsquoaltra

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 27 88

Accesso colonne DataFrame - 1

Per conoscere le colonne di un DataFrame possiamo invocare il comandodfcolumns dove df e la variabile in cui abbiamo instanziato ilDataFramePer accedere ad una colonna dobbiamo specificarne il nome nel seguentemodo

gtgtgt df film[rsquogenerersquo]

titolo

Il padrino Drammatico

Pulp Fiction Drammatico

Fight Club Thriller

Selezionando unrsquounica colonna in output viene restituita una Series

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 28 88

Accesso colonne DataFrame - 2

Possiamo accedere allo stesso tempo a piu colonne

gtgtgt df film[[rsquopaesersquorsquoannorsquo]]

titolo paese anno

Il padrino USA 19720

Pulp Fiction USA 19940

Fight Club USA 19990

Selezionando piu colonne in output viene restituito un DataFrame

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 29 88

Accesso righe DataFrame - 1

Per indice numerico

gtgtgt df film[1518]

titolo paese anno durata genere voto

Il padrino USA 19720 1750 Drammatico 45

Pulp Fiction USA 19940 1540 Drammatico 40

Fight Club USA 19990 1390 Thriller 40

Quasi Amici FRA 20110 1120 Commedia 35

Per valore dellrsquoindice (assumiamo che titolo sia lrsquoindice delDataFrame)

gtgtgt df film[rsquoIl padrinorsquorsquoFight Clubrsquo]

titolo paese anno durata genere voto

Il padrino USA 19720 1750 Drammatico 45

Pulp Fiction USA 19940 1540 Drammatico 40

Fight Club USA 19990 1390 Thriller 40

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 30 88

loc amp iloc

Cosı come per le Series anche con i DataFrame possiamo usare loc ediloc per lrsquoaccesso ai dati

loc[rsquonome indicersquo] permette lrsquoaccesso ad una riga o piu righetramite nome dellrsquoindice

iloc[rsquoposizionersquo] permette lrsquoaccesso ad una o piu righe tramitela loro posizione

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 31 88

Accesso tramite unrsquoespressione logica

gtgtgt df film[rsquoannorsquo gt 1998]

titolo

Il padrino False

Pulp Fiction False

Fight Club True

Quasi Amici True

gtgtgt df film[df film[rsquoannorsquo] gt 1998]

titolo paese anno durata genere voto

Fight Club USA 19990 1390 Thriller 40

Quasi Amici FRA 20110 1120 Commedia 35

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 32 88

Metodi dei DataFrame

La classe DataFrame ha diversi metodi Elenchiamo qui i piu importanti

DataFrameappend() permette di estendere il DataFrame

DataFramedrop duplicates() restituisce un DataFrame senza righeduplicate

DataFramedropna() Eliminare i valori Nan da un DataFrame

DataFramesort values() permette di ordinare il DataFrame

DataFramemax() DataFramemin() DataFramemean()DataFramemedian()

Per la completa documentazione si puo utilizzare il comandohelp(pdDataFrame) oppure andare al seguente linkhttpspandaspydataorgpandas-docsstablegenerated

pandasDataFramehtml

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 33 88

Frequenze

La frequenza assoluta indica il numero di volte che una dataosservazione occorre in un campione

La frequenza relativa e un valore tra 0 e 1 che permette di valutare inmaniera piu efficace la frequenza di un osservazione Si calcoladividendo la frequenza assoluta per il numero totale di casi

Per calcolare questa quantita in Pandas possiamo utilizzare la funzionevalue counts() che opera su una Series

In alternativa si puo utilizzare la funzione pdcrosstab che calcolaqueste frequenze in automatico restituendole in output in un DataFrame

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 34 88

Esercizi

Utilizzando il file dati-ospedalicsv dai csv del laboratorio

1 Leggere il file e visualizzarlo in un DataFrame

2 Calcolare le frequenze assolute e relative dellrsquoattributo Regioneusando crosstab

3 Ottenere la singola serie relativa allrsquoattributo Regione e calcolarne lafrequenza assoluta e relativa senza usare crosstab

4 Estrarre un sottodataframe contenente le colonne Nome (attributoDenominazione Str Pubblica New) e Numero di medici (attributoMedici SSN) degli ospedali aventi meno di 200 medici

5 Visualizzare il nome degli ospedali della regione Lombardia

6 Calcolare il numero medio di ingegneri (Ingegneri SSN) presenti negliospedali campani

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 35 88

Esercizi

7 Calcolare la varianza del numero di assistenti sociali (Assistenti socialiSSN) negli ospedali con piu di 400 medici

8 Qual e lrsquoospedale con meno medici

9 Visualizzare in ordine alfabetico il nome dei primi 10 ospedali pernumero di medici

10 Visualizzare il numero degli ospedali che hanno dichiarato il numerodi odontoiatri (per cui il valore e diverso da NaN) (OdontoiatriUniversitari)

11 Visualizzare il numero degli ospedali che hanno dichiarato il numerodi odontoiatri (Odontoiatri Universitari) e per cui questo numero emaggiore di 0

12 Calcolare le frequenze assolute per lrsquoattributo Odontoiatri SSNTrasformare questo risultato in frequenze relative

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 36 88

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) SAD 20182019 January 12 2019 37 88

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) SAD 20182019 January 12 2019 38 88

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) SAD 20182019 January 12 2019 39 88

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) SAD 20182019 January 12 2019 40 88

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) SAD 20182019 January 12 2019 41 88

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) SAD 20182019 January 12 2019 42 88

Grafici con le Series

In generale possiamo tracciare diversi tipi di grafici con le Series

rsquolinersquo line plot (default)

rsquobarrsquo vertical bar plot

rsquobarhrsquo horizontal bar plot

rsquohistrsquo histogram

rsquoboxrsquo boxplot

rsquokdersquo Kernel Density Estimation plot

rsquodensityrsquo same as rsquokdersquo

rsquoarearsquo area plot

rsquopiersquo pie plot

Per saperne di piu consultare questo link

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 43 88

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) SAD 20182019 January 12 2019 44 88

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) SAD 20182019 January 12 2019 45 88

Boxplot

Rappresenta la distribuzione di un vettore di numeri cerchiando gli outlier

gtgtgt weight = heroes[rsquoWeightrsquo]

gtgtgt weightplotbox()

gtgtgt pltshow()

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 46 88

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) SAD 20182019 January 12 2019 47 88

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) SAD 20182019 January 12 2019 48 88

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) SAD 20182019 January 12 2019 49 88

Esercizi - 1

Utilizzando il file capellicsv dai csv del laboratorio

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) SAD 20182019 January 12 2019 50 88

Esercizi - 2

Utilizzando il file dati-ospedalicsv dai csv del laboratorio

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 e canipdf

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 51 88

Sample space

Un esperimento e qualsiasi processo che produce una realizzazione (oosservazione) Lrsquoinsieme di tutte le possibili realizzazioni di un esperimentoviene detto sample space ed indicato con S

lancio di 2 monete

S = (T T ) (T C) (C T ) (C C)

gara di 3 cavalli (ab c)

S = tutti i possibili ordinamenti di(ab c)= (ab c) (a cb) (c b a)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 52 88

Eventi

lancio di 2 monete

S = (T T ) (T C) (C T ) (C C)

A = 2 monete uguali

A = (T T ) (C C)

B = 2 monete diverse

B = Ac = (T C) (C T )

gara di 3 cavalli

A = cavallo a vincente

A = (ab c) (a c b)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 53 88

Probabilita - 1

Consideriamo un esperimento con sample space S Supponiamo che adogni evento A sia associato un numero chiamato probabilita di A edindicato con P(A) che soddisfa le seguenti proprieta

1 Per ogni evento A la probabilita di A e un numero tra 0 e 1

0 le P(A) le 1

2 La probabilita del sample space S e 1

P(S) = 1

3 La probabilita dellrsquounione di eventi disgiunti e uguale alla somma delleprobabilita di tali eventi

P(A cupB) = P(A) + P(B)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 54 88

Probabilita - 2

In generale 2 eventi potrebbero non essere disgiunti

P(A cupB) = P(A) + P(B) minus P(A capB)

Esempio un certo negozio accetta pagamenti o con carte di credito VISAo Mastercard

1 22 dei clienti ha Mastercard

2 58 dei clienti ha VISA

3 14 dei clienti ha entrambe

Qual e la probabilita che un cliente ha almeno una delle 2 carte

P(A) = 022 P(B) = 058

P(A cupB) = P(A) + P(B) minus P(A capB) = 022 + 058 minus 014 = 066

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 55 88

Probabilita condizionata - 1

Se alcune informazioni riguardo lrsquoesito di un esperimento sono disponibiliparliamo di probabilita condizionata

Esempio lancio di 2 dadi

S = (11) (12) (65) (66)

Probabilita che la somma sia 10 (evento B) sapendo che il primo dadomostra 4 (evento A)

(41) (42) (43) (44) (45) (46)

P(B ∣A) = 16

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 56 88

Probabilita condizionata - 2

In generale

P(B ∣A) = P(A capB)P(A)

Supponiamo lrsquoesito sia in A

Per essere anche in B deve essere in entrambi A e B cioe in A capB

Sapendo che A e gia accaduto il nostro nuovo sample space diventa A

la probabilita di A capB viene calcolata rispetto ad A

Nel caso dei dadi

P(B ∣A) = P((46))P((41) (42) (43) (44) (45) (46)) = 136

16= 1

6

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 57 88

Indipendenza

In generale sapere che A e accaduto modifica le chance che B accadaNel caso cio non avvenga cioe se P(B ∣A) = P(B) allora i 2 eventi sidicono indipendenti In questo caso sapere che A e accaduto nonaggiunge alcuna informazione

SiccomeP(A capB) = P(B ∣A)P(A)

Abbiamo che B e indipendente da A se

P(A capB) = P(B)P(A)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 58 88

Esercizi - 1

1 Svolgere gli esercizi di combinatoria

2 Si consideri il seguente esperimento casuale rdquosi lancia tre volte unamonetardquo Qual e lo spazio degli esiti di questo esperimento casualeSi scriva esplicitamente lrsquoevento rdquosi ottengono piu teste che crocirdquo

3 Si consideri il seguente esperimento casuale rdquoSi tirano due dadirdquo Siconsiderino gli eventi E = rdquola somma dei punteggi e disparirdquo F = rdquoilprimo dado realizza un 1rdquo e G = rdquola somma dei punteggi e 5rdquo Sidescrivano gli eventi E cap F E cup F F capG E cap F c e E cap F capG

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 59 88

Esercizi - 2

4 Si consideri il seguente esperimento casuale rdquoUn sistema e compostoda 4 componenti ciascuno dei quali o funziona oppure e guasto Siosserva lo stato dei componenti ottenendo un vettore (x1 x2 x3 x4)dove xi e 1 oppure 0 a seconda che il componente i-esimo funzionioppure nordquo

1 Da quanti elementi e formato lo spazio degli esiti2 Il sistema nel suo insieme funziona fintantoche entrambi i componenti

1 e 2 oppure entrambi i componenti 3 e 4 funzionano Specifica tuttigli esiti dellrsquoevento il rdquosistema funzionardquo

3 Sia E lrsquoevento rdquoi componenti 1 e 3 sono guastirdquo Quanti esiti contiene

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 60 88

Esercizi - 3

5 Si dimostri che in uno spazio degli esiti Ω dotato di una probabilita Pper ogni evento E F sub Ω vale la disuguaglianza seguente

P(E cap F ) ge P(E) + P(F ) minus 1

6 Un gruppo di 5 bambini e 10 bambine e in fila in ordine casuale nelsenso che tutte le 15 possibili permutazioni si suppongonoequiprobabili

1 Qual e la probabilita che il quarto della fila sia un bambino2 E il dodicesimo3 Qual e la probabilita che un determinato bambino occupi la terza

posizione

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 61 88

Esercizi - 4

7 In un comune vi sono 5 alberghi Se 3 persone devono scegliere unalbergo in cui pernottare qual e la probabilita che finiscano tutte inalberghi differenti Che cosa stiamo assumendo senza dirloesplicitamente

8 La media del salario annuale di un gruppo di 100 lavoratori impiegatinellrsquoamministrazione di una grande azienda e di 130000 dollari conuna deviazione standard di 20000 dollari Se si prende una persona acaso da questo gruppo cosa possiamo dire sulla probabilita che il suosalario sia

1 tra i 90000 e i 170000 dollari2 superiore a 150000 dollari

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 62 88

Esercizi - 5

9 In una certa regione vi sono due ditte che producono forni amicroonde Quelli della fabbrica A sono difettosi con probabilita 005mentre quelli della fabbrica B con probabilita 001 Supponi di averacquistato due apparecchi prodotti dalla stessa ditta che puo essere laA o la B con probabilita del 50 Se il primo microonde e difettosoqual e la probabilita condizionata che sia difettoso anche il secondo

10 Hai chiesto ad un vicino di innaffiare una piantina delicata mentre seiin vacanza Pensi che senza acqua la piantina muoia con probabilita08 mentre se innaffiata questa probabilita si ridurrebbe a 015 Latua fiducia che il vicino si ricordi di innaffiarla e del 90

1 Qual e la probabilita che la pianta sia ancora viva al tuo ritorno2 Se fosse morta quale sarebbe la probabilita che il vicino si sia

dimenticato di innaffiarla

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 63 88

Esercizi - 6

11 Una compagnia di assicurazioni classifica i suoi clienti in tre fascebasso rischio medio rischio alto rischio Le sue statistiche indicanoche le probabilita che un cliente delle tre fasce abbia un incidenteentro un periodo di un anno sono rispettivamente 005 015 e 030Se il 20 dei clienti sono a basso rischio il 50 a medio rischio e il30 ad alto rischio che percentuale dei clienti avra mediamenteincidenti in un lasso di un anno Se un cliente non ha avuto incidentinel 1987 qual e la probabilita che appartenga a ciascuna delle trefasce

12 Se un votante scelto a caso e favorevole ad una certa riforma conprobabilita di 07 qual e la probabilita che su 10 votanti esattamente7 siano favorevoli

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 64 88

Variabili aleatorie

Una variabile aleatoria (o anche variabile aleatoria) e una variabile chepuo assumere valori diversi in dipendenza da qualche fenomeno aleatorio

fenomeno lancio di 2 dadivariabile aleatoria somma dei 2 dadi

fenomeno 3 lanci di una monetavariabile aleatoria numero di rdquotesterdquo complessivo

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 65 88

Funzione di Ripartizione

Sia X una variabile aleatoria Si chiama funzione di ripartizione di X lafunzione F che associa ad ogni numero reale a la probabilita che X siaminore o uguale ad a cioe P(X le a) = FX (a)

Nel caso della moneta (fair) lanciata 3 volte (X indica il numero di testecomplessivo)

FX (a) =

⎧⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎨⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎩

0 if a lt 0

18 per 0 le a lt 1

18 + 38 = 48 per 1 le a lt 2

48 + 38 = 78 per 2 le a lt 3

88 = 1 per a ge 3

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 66 88

Funzione di densita o di massa

Sia X una variabile aleatoria Si chiama funzione di densita di X lafunzione f che associa ad ogni numero reale a la probabilita che X siauguale ad a indicata con fX (a)

Nel caso della moneta (fair) lanciata 3 volte (X indica il numero di testecomplessivo)

fX (a) =

⎧⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎨⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎩

18 per a = 0

38 per a = 1

38 per a = 2

18 per a = 3

0 altrimenti

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 67 88

Valore Atteso

Chiamato anche media (expectation in inglese) e appunto una mediapesata dei possibili valori di una variabile aleatoria Il peso dato a ciascunvalore e la probabilita data a quello specifico valore

E[X ] =sumi

aiP(X = ai)

Esempio dado truccato

valore 6 con probabilita 712

valori da 1 a 5 con probabilita 112

La variabile aleatoria X indica la faccia risultante dal lancio di un dado

E[X ] = 1

12lowast 1 + 1

12lowast 2 + 1

12lowast 3 + 1

12lowast 4 + 1

12lowast 5 + 7

12lowast 6 = 475

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 68 88

Valore Atteso - Proprieta

Sia X una variabile aleatoria con valore atteso E[X ] Se c e una costanteallora anche cX e X + c sono variabili casuali In particolare valgono leseguenti proprieta

E[cX ] = cE[X ]E[X + c] = E[X ] + c

Sia Y una variabile aleatoria Allora

E[X +Y ] = E[X ] +E[Y ]se e solo se X e Y sono independenti

E[XY ] = E[X ]E[Y ]

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 69 88

Varianza

Ersquo il valore atteso del quadrato della differenza tra la variabile aleatoria e ilsuo valore atteso

Var(X ) = E[(X minusE[X ])2] = E[X 2] minus (E[X ])2

La radice quadrata viene detta deviazione standard di X

Esempio dado truccato

E[X 2] = 1

12lowast 12 + 1

12lowast 22 + 1

12lowast 32 + 1

12lowast 42 + 1

12lowast 52 + 7

12lowast 62 ≃ 255

Var(X ) = E[X 2] minus (E[X ])2 ≃ 255 minus 4752 ≃ 3

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 70 88

Varianza - proprieta

Sia X una variabile aleatoria e c una costante Allora valgono le seguentiproprieta

1 Var(cX ) = c2Var(X )

2 Var(X + c) = Var(X )

NOTA

Var(X +X ) ne Var(X ) +Var(X )

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 71 88

Covarianza

Siano X Y due variabili aleatorie con valore atteso rispettivamenteE[X ] = microX e E[Y ] = microY La covarianza e definita come segue

Cov(X Y ) = E[(X minus microX )(Y minus microY )] = = E[XY ] minus microXmicroY

Proprieta

1 Cov(X Y ) = Cov(Y X )2 Cov(X X ) = Var(X )3 Sia a una costante allora

Cov(aX Y ) = aCov(X Y )

4 Sia Z una variabile aleatoria allora

Cov(X + Z Y ) = Cov(X Y ) + Cov(Z Y )

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 72 88

Esercizi - 1

1 Consideriamo una variabile aleatoria X che puo assumere i valori 12o 3 Se sappiamo che

fX (1) = 1

3 fX (2) = 3

7

1 Quanto vale fX (3)2 Disegnare il grafico di questa funzione di massa3 Disegnare il grafico della relativa funzione di ripartizione

2 Dimostrare che se X1 e X2 hanno la stessa distribuzione allora

Cov(X1 +X2X1 minusX2) = 0

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 73 88

Esercizi - 2

3 La funzione di ripartizione di X e definita come segue

FX (x) =

⎧⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎨⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎩

0 per x le 0

x2 per 0 le x lt 1

23 per 1 le x lt 2

1112 per 2 le x lt 3

1 per x ge 3

Se ne tracci il graficoQuanto vale P(X gt 12)Quanto vale P(2 le X le 4)Quanto vale P(X le 3)Quanto vale P(X = 1)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 74 88

Esercizi - 3

4 Un tipo di prodotti vengono classificati a seconda dei loro difetti edella fabbrica che li ha prodotti Sia X1 il numero (1 o 2) dellafabbrica e sia X2 il numero di difetti per pezzo (che possono essere da0 a 3) di un prodotto scelto a caso tra la totalita di quelli esistentiLa tabella seguente riporta la funzione di massa di probabilitacongiunta per queste due variabili aleatorie discrete Le righe siriferiscono alla variabile X1 mentre le colonne alla variabile X2

Trova le distribuzioni marginali di X1 e X2Calcola media e varianza di X2

0 1 2 31 18 116 316 182 116 116 18 14

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 75 88

Scipy

Scipy e un modulo che permette di utilizzare varie distribuzioni diprobabilita sia di tipo discreto che continuo

La sintassi generale e la seguente Scipystatsltnome distribuzionegt

rvs(size=z) restituisce un vettore di numeri casuali estrattisecondo la distribuzione di lunghezza z

pdf(x) restituisce il vettore della densita della distribuzionevalutata nei valori del vettore di input x (pmf per le discrete)

cdf(x) restituisce il vettore della funzione di ripartizione (ocumulativa) della distribuzione valutata nei valori del vettore di inputx

ppf(q) restituisce il vettore dei quantili della distribuzione valutatanei valori del vettore di input q

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 76 88

Variabili aleatorie discrete Binomiale

gtgtgt from scipystats import binom

gtgtgt rv = binom(n p)

rvrvs(x) restituisce un vettore di x numeri estratti secondo unadistribuzione Binomiale di parametri n p

rvpmf(x) restituisce la probabilita di ottenere esattamente x

successi in un esperimento dicotomico (01) ripetuto n volte con unaprobabilita di successo p (x puo essere un vettore)

rvcdf(q) restituisce il valore della funzione di ripartizione in q (qpuo essere un vettore)

rvppf(p) restituisce il valore del quantile di ordine p

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 77 88

Variabili aleatorie discrete Ipergeometrica

Supponiamo di avere M = 20 animali di cui n = 7 cani Se vogliamosapere la probabilita di trovare un dato numero di cani se scegliamoN = 12 dei 20 animali in maniera casuale possiamo usare una distribuzioneipergeometrica in questo modo

gtgtgt from scipystats import hypergeom

gtgtgt [M n N] = [20 7 12]

gtgtgt rv = hypergeom(M n N)

rvpmf(x) restituisce la probabilita di estrarre esattamente x cani

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 78 88

Variabili aleatorie discrete Geometrica

gtgtgt from scipystats import geom

gtgtgt rv = geom(p)

rvpmf(x) restituisce la probabilita di avere un successo dopoesattamente x insuccessi in una successione di esperimenti dicotomici(esito 01) con una probabilita di successo p (x puo essere un vettore)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 79 88

Variabili aleatorie discrete Poisson

La distribuzione di Poisson viene usata spesso come modello per il numerodi volte per cui un evento avviene in un dato intervallo di tempo (ospazio) Ad esempio si puo utilizzare per misurare il numero di chiamatericevute da un call center in una mattinata

gtgtgt from scipystats import poisson

gtgtgt mu = 2

gtgtgt rv = poisson(mu)

rvpmf(x) restituisce il seguente valore

f (x) = exp(minusmicro)microx

x

In questo caso x rappresenta il numero di eventi per cui si vuole calcolarela probabilita sapendo che in media ne accadono micro

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 80 88

Variabili aleatorie continue Uniforme

In Scipy la funzione uniforme e soltanto continua Questo significa chenella generazione di numeri casuali otterro dati di tipo float Possiamotuttavia simulare una variabile discreta estraendo la parte intera delrisultato ottenuto

gtgtgt from scipystats import uniform

gtgtgt rv = uniform()

Il comando uniform() crea una distribuzione uniforme nellrsquointervallo[01] Possiamo creare una distribuzione uniforme qualsiasi usandouniform(x y - x) per lrsquointervallo [x y]

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 81 88

Variabili aleatorie continue

norm(mu sigma) variabile Gaussiana (o Normale) di media micro edeviazione standard σ

expon(scale = 1 lambda) variabile Esponenziale di parametroλ

Altre distribuzioni (con relativa documentazione) disponibili suhttpsdocsscipyorgdocscipyreferencestatshtml

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 82 88

Esercizi - 1

1 Unrsquourna contiene 10 palline di cui 4 bianche e 6 nere Si eseguono 5estrazioni con reimmissione

1 Tracciare grafico della funzione massa di probabilita della variabilecasuale X = rdquonumero di palline bianche estratterdquo

2 Calcolare la probabilita di estrarre 2 palline bianche3 Calcolare la probabilita di estrarre al piu 2 palline bianche4 Calcolare la probabilita di estrarre almeno 2 palline bianche5 Qual e il numero minimo x tale che la probabilita di estrarre al piu x

palline bianche sia almeno 08

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 83 88

Esercizi - 2

2 Si eseguono 10 estrazioni senza reimmissione da unrsquourna

1 Tracciare il grafico della funzione massa di probabilita della variabilecasuale X = rdquonumero di palline bianche estratterdquo nei seguenti casi

1 lrsquourna contiene 100 palline di cui 20 bianche e le restanti nere2 lrsquourna contiene 100 palline di cui 2 bianche e le restanti nere

2 Tracciare il grafico della funzione massa di probabilita della variabilecasuale X nel caso dellrsquourna 1 se si eseguono 25 estrazioni

3 Consideriamo lrsquourna 1 e N = 10 estrazioni Si aumenti il numero totaleM di palline nellrsquourna mantenendo uguale a 02 la frazione di pallinebianche Per ciascun valore di M confrontare graficamente ladistribuzione di probabilita del numero di palline bianche estratte nelcaso di estrazioni con e senza reimmissione Provare con 20 40 e 200palline bianche

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 84 88

Esercizi - 3

3 Calcolare la probabilita di ottenere piu teste che croci lanciando 7volte una moneta truccata con probabilita di avere croce pari a 045

4 Calcolare la probabilita di avere almeno 3 sei lanciando 5 dadi a 12facce

5 Calcolare la probabilita di estrarre 20 euro da un sacco contenente 47monete da 1 centesimo e 53 da 2 euro estraendo (uniformemente) acaso 10 monete senza reinserirle

6 Un grammo di uranio emette mediamente 2152 particelle α ognimillisecondo Qual e con buona approssimazione la probabilita che ungrammo di uranio emetta al piu 2000 particelle α in un millisecondo

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 85 88

Esercizi - 4

7 Un uomo si risveglia in mezzo al deserto senza acqua Dopo ogniminuto ha una probabilita del 3 di perdere conoscenza per via dellecondizioni estreme Calcolare la probabilita che lrsquouomo perdaconoscenza dopo almeno due ore e la probabilita che lrsquouomo perdaconoscenza dopo esattamente un quarto drsquoora

8 Sia X una variabile aleatoria normale di parametri micro = 10 e σ = 36Calcola

1 P(X gt 5)2 P(4 le X le 16)3 P(X le 8)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 86 88

Esercizi - 5

9 Il numero di errori tipografici per pagina di una certa rivista segue unadistribuzione di Poisson Sapendo che mediamente sono presenti 02errori per pagina determinare la probabilita che una pagina contenga

1 nessun refuso2 piu refusi

10 Arrivi alla fermata dellrsquoautobus alle 1000 e sei certo che ne passerauno in un momento distribuito uniformemente tra le 1000 e le 1030

1 Qual e la probabilita che tu debba aspettare piu di 10 minuti2 Se alle 1015 lrsquoautobus non e ancora arrivato qual e la probabilita che

tu debba aspettare almeno altri 10 minuti

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 87 88

Esercizi - 6

11 Il signor Jones e convinto che il tempo di vita di una automobile (inmigliaia di chilometri percorse) sia una variabile aleatoria esponenzialedi parametro 120 Il signor Smith ha una macchina usata da vendereche ha percorso circa 10 000 chilometri

1 Se il signor Jones decide di comprarla che probabilita ha di farle farealmeno altri 20 000 chilometri prima che sia da buttare

2 Il modello assunto dal signor Jones e ragionevole

12 Sia X una variabile casuale binomiale di parametri n = 100 e p = 07

1 Tracciate la funzione di ripartizione di X2 Calcolate il primo quartile il quantile di ordine 09 e la mediana di X3 Calcolare la probabilita P(X le 60)4 Calcolare la probabilita P(X le 88)5 Trovare il piu piccolo valore x tale che P(X le x) ge 09

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 88 88

  • Lezione 1
    • Script in Python
    • Numpy
    • Esercizi
    • Pandas
    • Esercizi
      • Lezione 2
        • File csv
        • DataFrame
        • Accesso ai DataFrame
        • Frequenze
        • Esercizi
          • Lezione 3
            • Matplotlib
            • Grafici a Barre
            • Istogrammi
            • Cumulativa empirica
            • Boxplot
            • QQplot
            • Diagramma di Pareto
            • Esercizi
              • Lezione 4
                • Definizioni
                • Probabilitagrave condizionata
                • Indipendenza
                • Esercizi
                  • Lezione 5
                    • Variabili Aleatorie
                    • Funzione di Ripartizione
                    • Funzione di Densitagrave
                    • Valore Atteso
                    • Varianza
                    • Covarianza
                    • Esercizi
                      • Lezione 6
                        • Scipy - Variabili Discrete
                        • Scipy - Variabili continue
                        • Esercizi

Il valore NaN

Nan un oggetto del modulo numpy che puo rappresentare in una Seriesun dato di cui non e stato possibile fare unrsquoosservazioneOperazioni con un valore Nan hanno come risultato il valore Nan

gtgtgt oss = range(5)

gtgtgt ossappend(None)

gtgtgt pandasSeries(oss)

0 00

1 10

2 20

3 30

4 40

5 NaN

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 23 88

Esercizi

Creare la Series gol in modo che le etichette siano numeri dallrsquo1 al 23 Idati raccolti siano numeri interi tra 0 e 30 scelti casualmente (scarica ilnotebook) La Series rappresenta i gol segnati da ciascun giocatore diuna societa calcistica nella stagione appena passata Lrsquoetichettacorrisponde al numero di maglia del giocatore Ottenere

1 I gol segnati dal capocannoniere2 Chi non ha mai fatto gol durante lrsquoanno3 La statistica del punto 2 per i soli titolari (numeri dallrsquo1 allrsquo11) e per

le sole riserve (dal 12 al 23)4 La statistica del punto 2 per i soli attaccanti (numeri dalrsquo9 allrsquo11)5 I gol segnati dai giocatori coi numeri di maglia 5 9 10 14 (somma)6 Chi ha segnato piu di 10 gol e chi ha segnato esattamente 10 gol7 Una copia della Series ordinata secondo i gol effettuati8 Una stampa dei primi 5 cannonieri e degli ultimi 59 Una copia della Series ordinata in modo discendente secondo il

numero di maglia

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 24 88

File csv

Il formato csv (comma-separated value) e un formato utilizzato perrappresentare una tabella di dati e favorirne lrsquoimportazione e lrsquoesportazioneUn file csv e scritto nella seguente forma

titolopaeseannoduratagenerevoto

Guerre StellariUSA1977121Fantascienza4

Lrsquoimpero colpisce ancoraUSA1980124Fantascienza4

Il ritorno dello JediUSA1983Fantascienza35

Profondo RossoITA1975Horror35

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 25 88

Leggere csv

La funzione read csv() di Pandas puo essere utilizzata per leggere unfile di formato csv Tra i vari parametri che passiamo in input unoparticolarmente importante e sep che indica il carattere utilizzato perseparare le colonne (default e rsquorsquo)

gtgtgt df film = pdread csv(rsquofilmcsvrsquo)

gtgtgt df film

titolo paese anno durata genere voto

Il padrino USA 19720 1750 Drammatico 45

Pulp Fiction USA 19940 1540 Drammatico 40

Fight Club USA 19990 1390 Thriller 40

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 26 88

DataFrame

In Pandas un DataFrame e una struttura dati tabulare con assi etichettatile cui colonne possono contenere dati eterogenei da colonna a colonna

gtgtgt dataframe

esempio

Nome Cognome Eta Citta

Tommaso Rossi 300 Milano

Sergio Bianchi 340 Roma

Pasquale Verdi 290 Palermo

Antonio Gialli 300 Roma

Il DataFrame puo essere visto come un insieme di serie aventi lo stessoindice accostate una allrsquoaltra

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 27 88

Accesso colonne DataFrame - 1

Per conoscere le colonne di un DataFrame possiamo invocare il comandodfcolumns dove df e la variabile in cui abbiamo instanziato ilDataFramePer accedere ad una colonna dobbiamo specificarne il nome nel seguentemodo

gtgtgt df film[rsquogenerersquo]

titolo

Il padrino Drammatico

Pulp Fiction Drammatico

Fight Club Thriller

Selezionando unrsquounica colonna in output viene restituita una Series

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 28 88

Accesso colonne DataFrame - 2

Possiamo accedere allo stesso tempo a piu colonne

gtgtgt df film[[rsquopaesersquorsquoannorsquo]]

titolo paese anno

Il padrino USA 19720

Pulp Fiction USA 19940

Fight Club USA 19990

Selezionando piu colonne in output viene restituito un DataFrame

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 29 88

Accesso righe DataFrame - 1

Per indice numerico

gtgtgt df film[1518]

titolo paese anno durata genere voto

Il padrino USA 19720 1750 Drammatico 45

Pulp Fiction USA 19940 1540 Drammatico 40

Fight Club USA 19990 1390 Thriller 40

Quasi Amici FRA 20110 1120 Commedia 35

Per valore dellrsquoindice (assumiamo che titolo sia lrsquoindice delDataFrame)

gtgtgt df film[rsquoIl padrinorsquorsquoFight Clubrsquo]

titolo paese anno durata genere voto

Il padrino USA 19720 1750 Drammatico 45

Pulp Fiction USA 19940 1540 Drammatico 40

Fight Club USA 19990 1390 Thriller 40

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 30 88

loc amp iloc

Cosı come per le Series anche con i DataFrame possiamo usare loc ediloc per lrsquoaccesso ai dati

loc[rsquonome indicersquo] permette lrsquoaccesso ad una riga o piu righetramite nome dellrsquoindice

iloc[rsquoposizionersquo] permette lrsquoaccesso ad una o piu righe tramitela loro posizione

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 31 88

Accesso tramite unrsquoespressione logica

gtgtgt df film[rsquoannorsquo gt 1998]

titolo

Il padrino False

Pulp Fiction False

Fight Club True

Quasi Amici True

gtgtgt df film[df film[rsquoannorsquo] gt 1998]

titolo paese anno durata genere voto

Fight Club USA 19990 1390 Thriller 40

Quasi Amici FRA 20110 1120 Commedia 35

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 32 88

Metodi dei DataFrame

La classe DataFrame ha diversi metodi Elenchiamo qui i piu importanti

DataFrameappend() permette di estendere il DataFrame

DataFramedrop duplicates() restituisce un DataFrame senza righeduplicate

DataFramedropna() Eliminare i valori Nan da un DataFrame

DataFramesort values() permette di ordinare il DataFrame

DataFramemax() DataFramemin() DataFramemean()DataFramemedian()

Per la completa documentazione si puo utilizzare il comandohelp(pdDataFrame) oppure andare al seguente linkhttpspandaspydataorgpandas-docsstablegenerated

pandasDataFramehtml

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 33 88

Frequenze

La frequenza assoluta indica il numero di volte che una dataosservazione occorre in un campione

La frequenza relativa e un valore tra 0 e 1 che permette di valutare inmaniera piu efficace la frequenza di un osservazione Si calcoladividendo la frequenza assoluta per il numero totale di casi

Per calcolare questa quantita in Pandas possiamo utilizzare la funzionevalue counts() che opera su una Series

In alternativa si puo utilizzare la funzione pdcrosstab che calcolaqueste frequenze in automatico restituendole in output in un DataFrame

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 34 88

Esercizi

Utilizzando il file dati-ospedalicsv dai csv del laboratorio

1 Leggere il file e visualizzarlo in un DataFrame

2 Calcolare le frequenze assolute e relative dellrsquoattributo Regioneusando crosstab

3 Ottenere la singola serie relativa allrsquoattributo Regione e calcolarne lafrequenza assoluta e relativa senza usare crosstab

4 Estrarre un sottodataframe contenente le colonne Nome (attributoDenominazione Str Pubblica New) e Numero di medici (attributoMedici SSN) degli ospedali aventi meno di 200 medici

5 Visualizzare il nome degli ospedali della regione Lombardia

6 Calcolare il numero medio di ingegneri (Ingegneri SSN) presenti negliospedali campani

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 35 88

Esercizi

7 Calcolare la varianza del numero di assistenti sociali (Assistenti socialiSSN) negli ospedali con piu di 400 medici

8 Qual e lrsquoospedale con meno medici

9 Visualizzare in ordine alfabetico il nome dei primi 10 ospedali pernumero di medici

10 Visualizzare il numero degli ospedali che hanno dichiarato il numerodi odontoiatri (per cui il valore e diverso da NaN) (OdontoiatriUniversitari)

11 Visualizzare il numero degli ospedali che hanno dichiarato il numerodi odontoiatri (Odontoiatri Universitari) e per cui questo numero emaggiore di 0

12 Calcolare le frequenze assolute per lrsquoattributo Odontoiatri SSNTrasformare questo risultato in frequenze relative

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 36 88

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) SAD 20182019 January 12 2019 37 88

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) SAD 20182019 January 12 2019 38 88

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) SAD 20182019 January 12 2019 39 88

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) SAD 20182019 January 12 2019 40 88

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) SAD 20182019 January 12 2019 41 88

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) SAD 20182019 January 12 2019 42 88

Grafici con le Series

In generale possiamo tracciare diversi tipi di grafici con le Series

rsquolinersquo line plot (default)

rsquobarrsquo vertical bar plot

rsquobarhrsquo horizontal bar plot

rsquohistrsquo histogram

rsquoboxrsquo boxplot

rsquokdersquo Kernel Density Estimation plot

rsquodensityrsquo same as rsquokdersquo

rsquoarearsquo area plot

rsquopiersquo pie plot

Per saperne di piu consultare questo link

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 43 88

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) SAD 20182019 January 12 2019 44 88

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) SAD 20182019 January 12 2019 45 88

Boxplot

Rappresenta la distribuzione di un vettore di numeri cerchiando gli outlier

gtgtgt weight = heroes[rsquoWeightrsquo]

gtgtgt weightplotbox()

gtgtgt pltshow()

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 46 88

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) SAD 20182019 January 12 2019 47 88

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) SAD 20182019 January 12 2019 48 88

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) SAD 20182019 January 12 2019 49 88

Esercizi - 1

Utilizzando il file capellicsv dai csv del laboratorio

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) SAD 20182019 January 12 2019 50 88

Esercizi - 2

Utilizzando il file dati-ospedalicsv dai csv del laboratorio

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 e canipdf

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 51 88

Sample space

Un esperimento e qualsiasi processo che produce una realizzazione (oosservazione) Lrsquoinsieme di tutte le possibili realizzazioni di un esperimentoviene detto sample space ed indicato con S

lancio di 2 monete

S = (T T ) (T C) (C T ) (C C)

gara di 3 cavalli (ab c)

S = tutti i possibili ordinamenti di(ab c)= (ab c) (a cb) (c b a)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 52 88

Eventi

lancio di 2 monete

S = (T T ) (T C) (C T ) (C C)

A = 2 monete uguali

A = (T T ) (C C)

B = 2 monete diverse

B = Ac = (T C) (C T )

gara di 3 cavalli

A = cavallo a vincente

A = (ab c) (a c b)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 53 88

Probabilita - 1

Consideriamo un esperimento con sample space S Supponiamo che adogni evento A sia associato un numero chiamato probabilita di A edindicato con P(A) che soddisfa le seguenti proprieta

1 Per ogni evento A la probabilita di A e un numero tra 0 e 1

0 le P(A) le 1

2 La probabilita del sample space S e 1

P(S) = 1

3 La probabilita dellrsquounione di eventi disgiunti e uguale alla somma delleprobabilita di tali eventi

P(A cupB) = P(A) + P(B)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 54 88

Probabilita - 2

In generale 2 eventi potrebbero non essere disgiunti

P(A cupB) = P(A) + P(B) minus P(A capB)

Esempio un certo negozio accetta pagamenti o con carte di credito VISAo Mastercard

1 22 dei clienti ha Mastercard

2 58 dei clienti ha VISA

3 14 dei clienti ha entrambe

Qual e la probabilita che un cliente ha almeno una delle 2 carte

P(A) = 022 P(B) = 058

P(A cupB) = P(A) + P(B) minus P(A capB) = 022 + 058 minus 014 = 066

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 55 88

Probabilita condizionata - 1

Se alcune informazioni riguardo lrsquoesito di un esperimento sono disponibiliparliamo di probabilita condizionata

Esempio lancio di 2 dadi

S = (11) (12) (65) (66)

Probabilita che la somma sia 10 (evento B) sapendo che il primo dadomostra 4 (evento A)

(41) (42) (43) (44) (45) (46)

P(B ∣A) = 16

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 56 88

Probabilita condizionata - 2

In generale

P(B ∣A) = P(A capB)P(A)

Supponiamo lrsquoesito sia in A

Per essere anche in B deve essere in entrambi A e B cioe in A capB

Sapendo che A e gia accaduto il nostro nuovo sample space diventa A

la probabilita di A capB viene calcolata rispetto ad A

Nel caso dei dadi

P(B ∣A) = P((46))P((41) (42) (43) (44) (45) (46)) = 136

16= 1

6

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 57 88

Indipendenza

In generale sapere che A e accaduto modifica le chance che B accadaNel caso cio non avvenga cioe se P(B ∣A) = P(B) allora i 2 eventi sidicono indipendenti In questo caso sapere che A e accaduto nonaggiunge alcuna informazione

SiccomeP(A capB) = P(B ∣A)P(A)

Abbiamo che B e indipendente da A se

P(A capB) = P(B)P(A)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 58 88

Esercizi - 1

1 Svolgere gli esercizi di combinatoria

2 Si consideri il seguente esperimento casuale rdquosi lancia tre volte unamonetardquo Qual e lo spazio degli esiti di questo esperimento casualeSi scriva esplicitamente lrsquoevento rdquosi ottengono piu teste che crocirdquo

3 Si consideri il seguente esperimento casuale rdquoSi tirano due dadirdquo Siconsiderino gli eventi E = rdquola somma dei punteggi e disparirdquo F = rdquoilprimo dado realizza un 1rdquo e G = rdquola somma dei punteggi e 5rdquo Sidescrivano gli eventi E cap F E cup F F capG E cap F c e E cap F capG

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 59 88

Esercizi - 2

4 Si consideri il seguente esperimento casuale rdquoUn sistema e compostoda 4 componenti ciascuno dei quali o funziona oppure e guasto Siosserva lo stato dei componenti ottenendo un vettore (x1 x2 x3 x4)dove xi e 1 oppure 0 a seconda che il componente i-esimo funzionioppure nordquo

1 Da quanti elementi e formato lo spazio degli esiti2 Il sistema nel suo insieme funziona fintantoche entrambi i componenti

1 e 2 oppure entrambi i componenti 3 e 4 funzionano Specifica tuttigli esiti dellrsquoevento il rdquosistema funzionardquo

3 Sia E lrsquoevento rdquoi componenti 1 e 3 sono guastirdquo Quanti esiti contiene

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 60 88

Esercizi - 3

5 Si dimostri che in uno spazio degli esiti Ω dotato di una probabilita Pper ogni evento E F sub Ω vale la disuguaglianza seguente

P(E cap F ) ge P(E) + P(F ) minus 1

6 Un gruppo di 5 bambini e 10 bambine e in fila in ordine casuale nelsenso che tutte le 15 possibili permutazioni si suppongonoequiprobabili

1 Qual e la probabilita che il quarto della fila sia un bambino2 E il dodicesimo3 Qual e la probabilita che un determinato bambino occupi la terza

posizione

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 61 88

Esercizi - 4

7 In un comune vi sono 5 alberghi Se 3 persone devono scegliere unalbergo in cui pernottare qual e la probabilita che finiscano tutte inalberghi differenti Che cosa stiamo assumendo senza dirloesplicitamente

8 La media del salario annuale di un gruppo di 100 lavoratori impiegatinellrsquoamministrazione di una grande azienda e di 130000 dollari conuna deviazione standard di 20000 dollari Se si prende una persona acaso da questo gruppo cosa possiamo dire sulla probabilita che il suosalario sia

1 tra i 90000 e i 170000 dollari2 superiore a 150000 dollari

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 62 88

Esercizi - 5

9 In una certa regione vi sono due ditte che producono forni amicroonde Quelli della fabbrica A sono difettosi con probabilita 005mentre quelli della fabbrica B con probabilita 001 Supponi di averacquistato due apparecchi prodotti dalla stessa ditta che puo essere laA o la B con probabilita del 50 Se il primo microonde e difettosoqual e la probabilita condizionata che sia difettoso anche il secondo

10 Hai chiesto ad un vicino di innaffiare una piantina delicata mentre seiin vacanza Pensi che senza acqua la piantina muoia con probabilita08 mentre se innaffiata questa probabilita si ridurrebbe a 015 Latua fiducia che il vicino si ricordi di innaffiarla e del 90

1 Qual e la probabilita che la pianta sia ancora viva al tuo ritorno2 Se fosse morta quale sarebbe la probabilita che il vicino si sia

dimenticato di innaffiarla

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 63 88

Esercizi - 6

11 Una compagnia di assicurazioni classifica i suoi clienti in tre fascebasso rischio medio rischio alto rischio Le sue statistiche indicanoche le probabilita che un cliente delle tre fasce abbia un incidenteentro un periodo di un anno sono rispettivamente 005 015 e 030Se il 20 dei clienti sono a basso rischio il 50 a medio rischio e il30 ad alto rischio che percentuale dei clienti avra mediamenteincidenti in un lasso di un anno Se un cliente non ha avuto incidentinel 1987 qual e la probabilita che appartenga a ciascuna delle trefasce

12 Se un votante scelto a caso e favorevole ad una certa riforma conprobabilita di 07 qual e la probabilita che su 10 votanti esattamente7 siano favorevoli

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 64 88

Variabili aleatorie

Una variabile aleatoria (o anche variabile aleatoria) e una variabile chepuo assumere valori diversi in dipendenza da qualche fenomeno aleatorio

fenomeno lancio di 2 dadivariabile aleatoria somma dei 2 dadi

fenomeno 3 lanci di una monetavariabile aleatoria numero di rdquotesterdquo complessivo

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 65 88

Funzione di Ripartizione

Sia X una variabile aleatoria Si chiama funzione di ripartizione di X lafunzione F che associa ad ogni numero reale a la probabilita che X siaminore o uguale ad a cioe P(X le a) = FX (a)

Nel caso della moneta (fair) lanciata 3 volte (X indica il numero di testecomplessivo)

FX (a) =

⎧⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎨⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎩

0 if a lt 0

18 per 0 le a lt 1

18 + 38 = 48 per 1 le a lt 2

48 + 38 = 78 per 2 le a lt 3

88 = 1 per a ge 3

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 66 88

Funzione di densita o di massa

Sia X una variabile aleatoria Si chiama funzione di densita di X lafunzione f che associa ad ogni numero reale a la probabilita che X siauguale ad a indicata con fX (a)

Nel caso della moneta (fair) lanciata 3 volte (X indica il numero di testecomplessivo)

fX (a) =

⎧⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎨⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎩

18 per a = 0

38 per a = 1

38 per a = 2

18 per a = 3

0 altrimenti

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 67 88

Valore Atteso

Chiamato anche media (expectation in inglese) e appunto una mediapesata dei possibili valori di una variabile aleatoria Il peso dato a ciascunvalore e la probabilita data a quello specifico valore

E[X ] =sumi

aiP(X = ai)

Esempio dado truccato

valore 6 con probabilita 712

valori da 1 a 5 con probabilita 112

La variabile aleatoria X indica la faccia risultante dal lancio di un dado

E[X ] = 1

12lowast 1 + 1

12lowast 2 + 1

12lowast 3 + 1

12lowast 4 + 1

12lowast 5 + 7

12lowast 6 = 475

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 68 88

Valore Atteso - Proprieta

Sia X una variabile aleatoria con valore atteso E[X ] Se c e una costanteallora anche cX e X + c sono variabili casuali In particolare valgono leseguenti proprieta

E[cX ] = cE[X ]E[X + c] = E[X ] + c

Sia Y una variabile aleatoria Allora

E[X +Y ] = E[X ] +E[Y ]se e solo se X e Y sono independenti

E[XY ] = E[X ]E[Y ]

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 69 88

Varianza

Ersquo il valore atteso del quadrato della differenza tra la variabile aleatoria e ilsuo valore atteso

Var(X ) = E[(X minusE[X ])2] = E[X 2] minus (E[X ])2

La radice quadrata viene detta deviazione standard di X

Esempio dado truccato

E[X 2] = 1

12lowast 12 + 1

12lowast 22 + 1

12lowast 32 + 1

12lowast 42 + 1

12lowast 52 + 7

12lowast 62 ≃ 255

Var(X ) = E[X 2] minus (E[X ])2 ≃ 255 minus 4752 ≃ 3

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 70 88

Varianza - proprieta

Sia X una variabile aleatoria e c una costante Allora valgono le seguentiproprieta

1 Var(cX ) = c2Var(X )

2 Var(X + c) = Var(X )

NOTA

Var(X +X ) ne Var(X ) +Var(X )

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 71 88

Covarianza

Siano X Y due variabili aleatorie con valore atteso rispettivamenteE[X ] = microX e E[Y ] = microY La covarianza e definita come segue

Cov(X Y ) = E[(X minus microX )(Y minus microY )] = = E[XY ] minus microXmicroY

Proprieta

1 Cov(X Y ) = Cov(Y X )2 Cov(X X ) = Var(X )3 Sia a una costante allora

Cov(aX Y ) = aCov(X Y )

4 Sia Z una variabile aleatoria allora

Cov(X + Z Y ) = Cov(X Y ) + Cov(Z Y )

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 72 88

Esercizi - 1

1 Consideriamo una variabile aleatoria X che puo assumere i valori 12o 3 Se sappiamo che

fX (1) = 1

3 fX (2) = 3

7

1 Quanto vale fX (3)2 Disegnare il grafico di questa funzione di massa3 Disegnare il grafico della relativa funzione di ripartizione

2 Dimostrare che se X1 e X2 hanno la stessa distribuzione allora

Cov(X1 +X2X1 minusX2) = 0

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 73 88

Esercizi - 2

3 La funzione di ripartizione di X e definita come segue

FX (x) =

⎧⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎨⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎩

0 per x le 0

x2 per 0 le x lt 1

23 per 1 le x lt 2

1112 per 2 le x lt 3

1 per x ge 3

Se ne tracci il graficoQuanto vale P(X gt 12)Quanto vale P(2 le X le 4)Quanto vale P(X le 3)Quanto vale P(X = 1)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 74 88

Esercizi - 3

4 Un tipo di prodotti vengono classificati a seconda dei loro difetti edella fabbrica che li ha prodotti Sia X1 il numero (1 o 2) dellafabbrica e sia X2 il numero di difetti per pezzo (che possono essere da0 a 3) di un prodotto scelto a caso tra la totalita di quelli esistentiLa tabella seguente riporta la funzione di massa di probabilitacongiunta per queste due variabili aleatorie discrete Le righe siriferiscono alla variabile X1 mentre le colonne alla variabile X2

Trova le distribuzioni marginali di X1 e X2Calcola media e varianza di X2

0 1 2 31 18 116 316 182 116 116 18 14

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 75 88

Scipy

Scipy e un modulo che permette di utilizzare varie distribuzioni diprobabilita sia di tipo discreto che continuo

La sintassi generale e la seguente Scipystatsltnome distribuzionegt

rvs(size=z) restituisce un vettore di numeri casuali estrattisecondo la distribuzione di lunghezza z

pdf(x) restituisce il vettore della densita della distribuzionevalutata nei valori del vettore di input x (pmf per le discrete)

cdf(x) restituisce il vettore della funzione di ripartizione (ocumulativa) della distribuzione valutata nei valori del vettore di inputx

ppf(q) restituisce il vettore dei quantili della distribuzione valutatanei valori del vettore di input q

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 76 88

Variabili aleatorie discrete Binomiale

gtgtgt from scipystats import binom

gtgtgt rv = binom(n p)

rvrvs(x) restituisce un vettore di x numeri estratti secondo unadistribuzione Binomiale di parametri n p

rvpmf(x) restituisce la probabilita di ottenere esattamente x

successi in un esperimento dicotomico (01) ripetuto n volte con unaprobabilita di successo p (x puo essere un vettore)

rvcdf(q) restituisce il valore della funzione di ripartizione in q (qpuo essere un vettore)

rvppf(p) restituisce il valore del quantile di ordine p

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 77 88

Variabili aleatorie discrete Ipergeometrica

Supponiamo di avere M = 20 animali di cui n = 7 cani Se vogliamosapere la probabilita di trovare un dato numero di cani se scegliamoN = 12 dei 20 animali in maniera casuale possiamo usare una distribuzioneipergeometrica in questo modo

gtgtgt from scipystats import hypergeom

gtgtgt [M n N] = [20 7 12]

gtgtgt rv = hypergeom(M n N)

rvpmf(x) restituisce la probabilita di estrarre esattamente x cani

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 78 88

Variabili aleatorie discrete Geometrica

gtgtgt from scipystats import geom

gtgtgt rv = geom(p)

rvpmf(x) restituisce la probabilita di avere un successo dopoesattamente x insuccessi in una successione di esperimenti dicotomici(esito 01) con una probabilita di successo p (x puo essere un vettore)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 79 88

Variabili aleatorie discrete Poisson

La distribuzione di Poisson viene usata spesso come modello per il numerodi volte per cui un evento avviene in un dato intervallo di tempo (ospazio) Ad esempio si puo utilizzare per misurare il numero di chiamatericevute da un call center in una mattinata

gtgtgt from scipystats import poisson

gtgtgt mu = 2

gtgtgt rv = poisson(mu)

rvpmf(x) restituisce il seguente valore

f (x) = exp(minusmicro)microx

x

In questo caso x rappresenta il numero di eventi per cui si vuole calcolarela probabilita sapendo che in media ne accadono micro

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 80 88

Variabili aleatorie continue Uniforme

In Scipy la funzione uniforme e soltanto continua Questo significa chenella generazione di numeri casuali otterro dati di tipo float Possiamotuttavia simulare una variabile discreta estraendo la parte intera delrisultato ottenuto

gtgtgt from scipystats import uniform

gtgtgt rv = uniform()

Il comando uniform() crea una distribuzione uniforme nellrsquointervallo[01] Possiamo creare una distribuzione uniforme qualsiasi usandouniform(x y - x) per lrsquointervallo [x y]

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 81 88

Variabili aleatorie continue

norm(mu sigma) variabile Gaussiana (o Normale) di media micro edeviazione standard σ

expon(scale = 1 lambda) variabile Esponenziale di parametroλ

Altre distribuzioni (con relativa documentazione) disponibili suhttpsdocsscipyorgdocscipyreferencestatshtml

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 82 88

Esercizi - 1

1 Unrsquourna contiene 10 palline di cui 4 bianche e 6 nere Si eseguono 5estrazioni con reimmissione

1 Tracciare grafico della funzione massa di probabilita della variabilecasuale X = rdquonumero di palline bianche estratterdquo

2 Calcolare la probabilita di estrarre 2 palline bianche3 Calcolare la probabilita di estrarre al piu 2 palline bianche4 Calcolare la probabilita di estrarre almeno 2 palline bianche5 Qual e il numero minimo x tale che la probabilita di estrarre al piu x

palline bianche sia almeno 08

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 83 88

Esercizi - 2

2 Si eseguono 10 estrazioni senza reimmissione da unrsquourna

1 Tracciare il grafico della funzione massa di probabilita della variabilecasuale X = rdquonumero di palline bianche estratterdquo nei seguenti casi

1 lrsquourna contiene 100 palline di cui 20 bianche e le restanti nere2 lrsquourna contiene 100 palline di cui 2 bianche e le restanti nere

2 Tracciare il grafico della funzione massa di probabilita della variabilecasuale X nel caso dellrsquourna 1 se si eseguono 25 estrazioni

3 Consideriamo lrsquourna 1 e N = 10 estrazioni Si aumenti il numero totaleM di palline nellrsquourna mantenendo uguale a 02 la frazione di pallinebianche Per ciascun valore di M confrontare graficamente ladistribuzione di probabilita del numero di palline bianche estratte nelcaso di estrazioni con e senza reimmissione Provare con 20 40 e 200palline bianche

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 84 88

Esercizi - 3

3 Calcolare la probabilita di ottenere piu teste che croci lanciando 7volte una moneta truccata con probabilita di avere croce pari a 045

4 Calcolare la probabilita di avere almeno 3 sei lanciando 5 dadi a 12facce

5 Calcolare la probabilita di estrarre 20 euro da un sacco contenente 47monete da 1 centesimo e 53 da 2 euro estraendo (uniformemente) acaso 10 monete senza reinserirle

6 Un grammo di uranio emette mediamente 2152 particelle α ognimillisecondo Qual e con buona approssimazione la probabilita che ungrammo di uranio emetta al piu 2000 particelle α in un millisecondo

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 85 88

Esercizi - 4

7 Un uomo si risveglia in mezzo al deserto senza acqua Dopo ogniminuto ha una probabilita del 3 di perdere conoscenza per via dellecondizioni estreme Calcolare la probabilita che lrsquouomo perdaconoscenza dopo almeno due ore e la probabilita che lrsquouomo perdaconoscenza dopo esattamente un quarto drsquoora

8 Sia X una variabile aleatoria normale di parametri micro = 10 e σ = 36Calcola

1 P(X gt 5)2 P(4 le X le 16)3 P(X le 8)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 86 88

Esercizi - 5

9 Il numero di errori tipografici per pagina di una certa rivista segue unadistribuzione di Poisson Sapendo che mediamente sono presenti 02errori per pagina determinare la probabilita che una pagina contenga

1 nessun refuso2 piu refusi

10 Arrivi alla fermata dellrsquoautobus alle 1000 e sei certo che ne passerauno in un momento distribuito uniformemente tra le 1000 e le 1030

1 Qual e la probabilita che tu debba aspettare piu di 10 minuti2 Se alle 1015 lrsquoautobus non e ancora arrivato qual e la probabilita che

tu debba aspettare almeno altri 10 minuti

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 87 88

Esercizi - 6

11 Il signor Jones e convinto che il tempo di vita di una automobile (inmigliaia di chilometri percorse) sia una variabile aleatoria esponenzialedi parametro 120 Il signor Smith ha una macchina usata da vendereche ha percorso circa 10 000 chilometri

1 Se il signor Jones decide di comprarla che probabilita ha di farle farealmeno altri 20 000 chilometri prima che sia da buttare

2 Il modello assunto dal signor Jones e ragionevole

12 Sia X una variabile casuale binomiale di parametri n = 100 e p = 07

1 Tracciate la funzione di ripartizione di X2 Calcolate il primo quartile il quantile di ordine 09 e la mediana di X3 Calcolare la probabilita P(X le 60)4 Calcolare la probabilita P(X le 88)5 Trovare il piu piccolo valore x tale che P(X le x) ge 09

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 88 88

  • Lezione 1
    • Script in Python
    • Numpy
    • Esercizi
    • Pandas
    • Esercizi
      • Lezione 2
        • File csv
        • DataFrame
        • Accesso ai DataFrame
        • Frequenze
        • Esercizi
          • Lezione 3
            • Matplotlib
            • Grafici a Barre
            • Istogrammi
            • Cumulativa empirica
            • Boxplot
            • QQplot
            • Diagramma di Pareto
            • Esercizi
              • Lezione 4
                • Definizioni
                • Probabilitagrave condizionata
                • Indipendenza
                • Esercizi
                  • Lezione 5
                    • Variabili Aleatorie
                    • Funzione di Ripartizione
                    • Funzione di Densitagrave
                    • Valore Atteso
                    • Varianza
                    • Covarianza
                    • Esercizi
                      • Lezione 6
                        • Scipy - Variabili Discrete
                        • Scipy - Variabili continue
                        • Esercizi

Esercizi

Creare la Series gol in modo che le etichette siano numeri dallrsquo1 al 23 Idati raccolti siano numeri interi tra 0 e 30 scelti casualmente (scarica ilnotebook) La Series rappresenta i gol segnati da ciascun giocatore diuna societa calcistica nella stagione appena passata Lrsquoetichettacorrisponde al numero di maglia del giocatore Ottenere

1 I gol segnati dal capocannoniere2 Chi non ha mai fatto gol durante lrsquoanno3 La statistica del punto 2 per i soli titolari (numeri dallrsquo1 allrsquo11) e per

le sole riserve (dal 12 al 23)4 La statistica del punto 2 per i soli attaccanti (numeri dalrsquo9 allrsquo11)5 I gol segnati dai giocatori coi numeri di maglia 5 9 10 14 (somma)6 Chi ha segnato piu di 10 gol e chi ha segnato esattamente 10 gol7 Una copia della Series ordinata secondo i gol effettuati8 Una stampa dei primi 5 cannonieri e degli ultimi 59 Una copia della Series ordinata in modo discendente secondo il

numero di maglia

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 24 88

File csv

Il formato csv (comma-separated value) e un formato utilizzato perrappresentare una tabella di dati e favorirne lrsquoimportazione e lrsquoesportazioneUn file csv e scritto nella seguente forma

titolopaeseannoduratagenerevoto

Guerre StellariUSA1977121Fantascienza4

Lrsquoimpero colpisce ancoraUSA1980124Fantascienza4

Il ritorno dello JediUSA1983Fantascienza35

Profondo RossoITA1975Horror35

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 25 88

Leggere csv

La funzione read csv() di Pandas puo essere utilizzata per leggere unfile di formato csv Tra i vari parametri che passiamo in input unoparticolarmente importante e sep che indica il carattere utilizzato perseparare le colonne (default e rsquorsquo)

gtgtgt df film = pdread csv(rsquofilmcsvrsquo)

gtgtgt df film

titolo paese anno durata genere voto

Il padrino USA 19720 1750 Drammatico 45

Pulp Fiction USA 19940 1540 Drammatico 40

Fight Club USA 19990 1390 Thriller 40

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 26 88

DataFrame

In Pandas un DataFrame e una struttura dati tabulare con assi etichettatile cui colonne possono contenere dati eterogenei da colonna a colonna

gtgtgt dataframe

esempio

Nome Cognome Eta Citta

Tommaso Rossi 300 Milano

Sergio Bianchi 340 Roma

Pasquale Verdi 290 Palermo

Antonio Gialli 300 Roma

Il DataFrame puo essere visto come un insieme di serie aventi lo stessoindice accostate una allrsquoaltra

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 27 88

Accesso colonne DataFrame - 1

Per conoscere le colonne di un DataFrame possiamo invocare il comandodfcolumns dove df e la variabile in cui abbiamo instanziato ilDataFramePer accedere ad una colonna dobbiamo specificarne il nome nel seguentemodo

gtgtgt df film[rsquogenerersquo]

titolo

Il padrino Drammatico

Pulp Fiction Drammatico

Fight Club Thriller

Selezionando unrsquounica colonna in output viene restituita una Series

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 28 88

Accesso colonne DataFrame - 2

Possiamo accedere allo stesso tempo a piu colonne

gtgtgt df film[[rsquopaesersquorsquoannorsquo]]

titolo paese anno

Il padrino USA 19720

Pulp Fiction USA 19940

Fight Club USA 19990

Selezionando piu colonne in output viene restituito un DataFrame

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 29 88

Accesso righe DataFrame - 1

Per indice numerico

gtgtgt df film[1518]

titolo paese anno durata genere voto

Il padrino USA 19720 1750 Drammatico 45

Pulp Fiction USA 19940 1540 Drammatico 40

Fight Club USA 19990 1390 Thriller 40

Quasi Amici FRA 20110 1120 Commedia 35

Per valore dellrsquoindice (assumiamo che titolo sia lrsquoindice delDataFrame)

gtgtgt df film[rsquoIl padrinorsquorsquoFight Clubrsquo]

titolo paese anno durata genere voto

Il padrino USA 19720 1750 Drammatico 45

Pulp Fiction USA 19940 1540 Drammatico 40

Fight Club USA 19990 1390 Thriller 40

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 30 88

loc amp iloc

Cosı come per le Series anche con i DataFrame possiamo usare loc ediloc per lrsquoaccesso ai dati

loc[rsquonome indicersquo] permette lrsquoaccesso ad una riga o piu righetramite nome dellrsquoindice

iloc[rsquoposizionersquo] permette lrsquoaccesso ad una o piu righe tramitela loro posizione

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 31 88

Accesso tramite unrsquoespressione logica

gtgtgt df film[rsquoannorsquo gt 1998]

titolo

Il padrino False

Pulp Fiction False

Fight Club True

Quasi Amici True

gtgtgt df film[df film[rsquoannorsquo] gt 1998]

titolo paese anno durata genere voto

Fight Club USA 19990 1390 Thriller 40

Quasi Amici FRA 20110 1120 Commedia 35

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 32 88

Metodi dei DataFrame

La classe DataFrame ha diversi metodi Elenchiamo qui i piu importanti

DataFrameappend() permette di estendere il DataFrame

DataFramedrop duplicates() restituisce un DataFrame senza righeduplicate

DataFramedropna() Eliminare i valori Nan da un DataFrame

DataFramesort values() permette di ordinare il DataFrame

DataFramemax() DataFramemin() DataFramemean()DataFramemedian()

Per la completa documentazione si puo utilizzare il comandohelp(pdDataFrame) oppure andare al seguente linkhttpspandaspydataorgpandas-docsstablegenerated

pandasDataFramehtml

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 33 88

Frequenze

La frequenza assoluta indica il numero di volte che una dataosservazione occorre in un campione

La frequenza relativa e un valore tra 0 e 1 che permette di valutare inmaniera piu efficace la frequenza di un osservazione Si calcoladividendo la frequenza assoluta per il numero totale di casi

Per calcolare questa quantita in Pandas possiamo utilizzare la funzionevalue counts() che opera su una Series

In alternativa si puo utilizzare la funzione pdcrosstab che calcolaqueste frequenze in automatico restituendole in output in un DataFrame

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 34 88

Esercizi

Utilizzando il file dati-ospedalicsv dai csv del laboratorio

1 Leggere il file e visualizzarlo in un DataFrame

2 Calcolare le frequenze assolute e relative dellrsquoattributo Regioneusando crosstab

3 Ottenere la singola serie relativa allrsquoattributo Regione e calcolarne lafrequenza assoluta e relativa senza usare crosstab

4 Estrarre un sottodataframe contenente le colonne Nome (attributoDenominazione Str Pubblica New) e Numero di medici (attributoMedici SSN) degli ospedali aventi meno di 200 medici

5 Visualizzare il nome degli ospedali della regione Lombardia

6 Calcolare il numero medio di ingegneri (Ingegneri SSN) presenti negliospedali campani

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 35 88

Esercizi

7 Calcolare la varianza del numero di assistenti sociali (Assistenti socialiSSN) negli ospedali con piu di 400 medici

8 Qual e lrsquoospedale con meno medici

9 Visualizzare in ordine alfabetico il nome dei primi 10 ospedali pernumero di medici

10 Visualizzare il numero degli ospedali che hanno dichiarato il numerodi odontoiatri (per cui il valore e diverso da NaN) (OdontoiatriUniversitari)

11 Visualizzare il numero degli ospedali che hanno dichiarato il numerodi odontoiatri (Odontoiatri Universitari) e per cui questo numero emaggiore di 0

12 Calcolare le frequenze assolute per lrsquoattributo Odontoiatri SSNTrasformare questo risultato in frequenze relative

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 36 88

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) SAD 20182019 January 12 2019 37 88

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) SAD 20182019 January 12 2019 38 88

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) SAD 20182019 January 12 2019 39 88

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) SAD 20182019 January 12 2019 40 88

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) SAD 20182019 January 12 2019 41 88

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) SAD 20182019 January 12 2019 42 88

Grafici con le Series

In generale possiamo tracciare diversi tipi di grafici con le Series

rsquolinersquo line plot (default)

rsquobarrsquo vertical bar plot

rsquobarhrsquo horizontal bar plot

rsquohistrsquo histogram

rsquoboxrsquo boxplot

rsquokdersquo Kernel Density Estimation plot

rsquodensityrsquo same as rsquokdersquo

rsquoarearsquo area plot

rsquopiersquo pie plot

Per saperne di piu consultare questo link

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 43 88

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) SAD 20182019 January 12 2019 44 88

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) SAD 20182019 January 12 2019 45 88

Boxplot

Rappresenta la distribuzione di un vettore di numeri cerchiando gli outlier

gtgtgt weight = heroes[rsquoWeightrsquo]

gtgtgt weightplotbox()

gtgtgt pltshow()

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 46 88

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) SAD 20182019 January 12 2019 47 88

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) SAD 20182019 January 12 2019 48 88

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) SAD 20182019 January 12 2019 49 88

Esercizi - 1

Utilizzando il file capellicsv dai csv del laboratorio

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) SAD 20182019 January 12 2019 50 88

Esercizi - 2

Utilizzando il file dati-ospedalicsv dai csv del laboratorio

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 e canipdf

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 51 88

Sample space

Un esperimento e qualsiasi processo che produce una realizzazione (oosservazione) Lrsquoinsieme di tutte le possibili realizzazioni di un esperimentoviene detto sample space ed indicato con S

lancio di 2 monete

S = (T T ) (T C) (C T ) (C C)

gara di 3 cavalli (ab c)

S = tutti i possibili ordinamenti di(ab c)= (ab c) (a cb) (c b a)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 52 88

Eventi

lancio di 2 monete

S = (T T ) (T C) (C T ) (C C)

A = 2 monete uguali

A = (T T ) (C C)

B = 2 monete diverse

B = Ac = (T C) (C T )

gara di 3 cavalli

A = cavallo a vincente

A = (ab c) (a c b)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 53 88

Probabilita - 1

Consideriamo un esperimento con sample space S Supponiamo che adogni evento A sia associato un numero chiamato probabilita di A edindicato con P(A) che soddisfa le seguenti proprieta

1 Per ogni evento A la probabilita di A e un numero tra 0 e 1

0 le P(A) le 1

2 La probabilita del sample space S e 1

P(S) = 1

3 La probabilita dellrsquounione di eventi disgiunti e uguale alla somma delleprobabilita di tali eventi

P(A cupB) = P(A) + P(B)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 54 88

Probabilita - 2

In generale 2 eventi potrebbero non essere disgiunti

P(A cupB) = P(A) + P(B) minus P(A capB)

Esempio un certo negozio accetta pagamenti o con carte di credito VISAo Mastercard

1 22 dei clienti ha Mastercard

2 58 dei clienti ha VISA

3 14 dei clienti ha entrambe

Qual e la probabilita che un cliente ha almeno una delle 2 carte

P(A) = 022 P(B) = 058

P(A cupB) = P(A) + P(B) minus P(A capB) = 022 + 058 minus 014 = 066

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 55 88

Probabilita condizionata - 1

Se alcune informazioni riguardo lrsquoesito di un esperimento sono disponibiliparliamo di probabilita condizionata

Esempio lancio di 2 dadi

S = (11) (12) (65) (66)

Probabilita che la somma sia 10 (evento B) sapendo che il primo dadomostra 4 (evento A)

(41) (42) (43) (44) (45) (46)

P(B ∣A) = 16

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 56 88

Probabilita condizionata - 2

In generale

P(B ∣A) = P(A capB)P(A)

Supponiamo lrsquoesito sia in A

Per essere anche in B deve essere in entrambi A e B cioe in A capB

Sapendo che A e gia accaduto il nostro nuovo sample space diventa A

la probabilita di A capB viene calcolata rispetto ad A

Nel caso dei dadi

P(B ∣A) = P((46))P((41) (42) (43) (44) (45) (46)) = 136

16= 1

6

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 57 88

Indipendenza

In generale sapere che A e accaduto modifica le chance che B accadaNel caso cio non avvenga cioe se P(B ∣A) = P(B) allora i 2 eventi sidicono indipendenti In questo caso sapere che A e accaduto nonaggiunge alcuna informazione

SiccomeP(A capB) = P(B ∣A)P(A)

Abbiamo che B e indipendente da A se

P(A capB) = P(B)P(A)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 58 88

Esercizi - 1

1 Svolgere gli esercizi di combinatoria

2 Si consideri il seguente esperimento casuale rdquosi lancia tre volte unamonetardquo Qual e lo spazio degli esiti di questo esperimento casualeSi scriva esplicitamente lrsquoevento rdquosi ottengono piu teste che crocirdquo

3 Si consideri il seguente esperimento casuale rdquoSi tirano due dadirdquo Siconsiderino gli eventi E = rdquola somma dei punteggi e disparirdquo F = rdquoilprimo dado realizza un 1rdquo e G = rdquola somma dei punteggi e 5rdquo Sidescrivano gli eventi E cap F E cup F F capG E cap F c e E cap F capG

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 59 88

Esercizi - 2

4 Si consideri il seguente esperimento casuale rdquoUn sistema e compostoda 4 componenti ciascuno dei quali o funziona oppure e guasto Siosserva lo stato dei componenti ottenendo un vettore (x1 x2 x3 x4)dove xi e 1 oppure 0 a seconda che il componente i-esimo funzionioppure nordquo

1 Da quanti elementi e formato lo spazio degli esiti2 Il sistema nel suo insieme funziona fintantoche entrambi i componenti

1 e 2 oppure entrambi i componenti 3 e 4 funzionano Specifica tuttigli esiti dellrsquoevento il rdquosistema funzionardquo

3 Sia E lrsquoevento rdquoi componenti 1 e 3 sono guastirdquo Quanti esiti contiene

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 60 88

Esercizi - 3

5 Si dimostri che in uno spazio degli esiti Ω dotato di una probabilita Pper ogni evento E F sub Ω vale la disuguaglianza seguente

P(E cap F ) ge P(E) + P(F ) minus 1

6 Un gruppo di 5 bambini e 10 bambine e in fila in ordine casuale nelsenso che tutte le 15 possibili permutazioni si suppongonoequiprobabili

1 Qual e la probabilita che il quarto della fila sia un bambino2 E il dodicesimo3 Qual e la probabilita che un determinato bambino occupi la terza

posizione

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 61 88

Esercizi - 4

7 In un comune vi sono 5 alberghi Se 3 persone devono scegliere unalbergo in cui pernottare qual e la probabilita che finiscano tutte inalberghi differenti Che cosa stiamo assumendo senza dirloesplicitamente

8 La media del salario annuale di un gruppo di 100 lavoratori impiegatinellrsquoamministrazione di una grande azienda e di 130000 dollari conuna deviazione standard di 20000 dollari Se si prende una persona acaso da questo gruppo cosa possiamo dire sulla probabilita che il suosalario sia

1 tra i 90000 e i 170000 dollari2 superiore a 150000 dollari

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 62 88

Esercizi - 5

9 In una certa regione vi sono due ditte che producono forni amicroonde Quelli della fabbrica A sono difettosi con probabilita 005mentre quelli della fabbrica B con probabilita 001 Supponi di averacquistato due apparecchi prodotti dalla stessa ditta che puo essere laA o la B con probabilita del 50 Se il primo microonde e difettosoqual e la probabilita condizionata che sia difettoso anche il secondo

10 Hai chiesto ad un vicino di innaffiare una piantina delicata mentre seiin vacanza Pensi che senza acqua la piantina muoia con probabilita08 mentre se innaffiata questa probabilita si ridurrebbe a 015 Latua fiducia che il vicino si ricordi di innaffiarla e del 90

1 Qual e la probabilita che la pianta sia ancora viva al tuo ritorno2 Se fosse morta quale sarebbe la probabilita che il vicino si sia

dimenticato di innaffiarla

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 63 88

Esercizi - 6

11 Una compagnia di assicurazioni classifica i suoi clienti in tre fascebasso rischio medio rischio alto rischio Le sue statistiche indicanoche le probabilita che un cliente delle tre fasce abbia un incidenteentro un periodo di un anno sono rispettivamente 005 015 e 030Se il 20 dei clienti sono a basso rischio il 50 a medio rischio e il30 ad alto rischio che percentuale dei clienti avra mediamenteincidenti in un lasso di un anno Se un cliente non ha avuto incidentinel 1987 qual e la probabilita che appartenga a ciascuna delle trefasce

12 Se un votante scelto a caso e favorevole ad una certa riforma conprobabilita di 07 qual e la probabilita che su 10 votanti esattamente7 siano favorevoli

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 64 88

Variabili aleatorie

Una variabile aleatoria (o anche variabile aleatoria) e una variabile chepuo assumere valori diversi in dipendenza da qualche fenomeno aleatorio

fenomeno lancio di 2 dadivariabile aleatoria somma dei 2 dadi

fenomeno 3 lanci di una monetavariabile aleatoria numero di rdquotesterdquo complessivo

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 65 88

Funzione di Ripartizione

Sia X una variabile aleatoria Si chiama funzione di ripartizione di X lafunzione F che associa ad ogni numero reale a la probabilita che X siaminore o uguale ad a cioe P(X le a) = FX (a)

Nel caso della moneta (fair) lanciata 3 volte (X indica il numero di testecomplessivo)

FX (a) =

⎧⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎨⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎩

0 if a lt 0

18 per 0 le a lt 1

18 + 38 = 48 per 1 le a lt 2

48 + 38 = 78 per 2 le a lt 3

88 = 1 per a ge 3

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 66 88

Funzione di densita o di massa

Sia X una variabile aleatoria Si chiama funzione di densita di X lafunzione f che associa ad ogni numero reale a la probabilita che X siauguale ad a indicata con fX (a)

Nel caso della moneta (fair) lanciata 3 volte (X indica il numero di testecomplessivo)

fX (a) =

⎧⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎨⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎩

18 per a = 0

38 per a = 1

38 per a = 2

18 per a = 3

0 altrimenti

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 67 88

Valore Atteso

Chiamato anche media (expectation in inglese) e appunto una mediapesata dei possibili valori di una variabile aleatoria Il peso dato a ciascunvalore e la probabilita data a quello specifico valore

E[X ] =sumi

aiP(X = ai)

Esempio dado truccato

valore 6 con probabilita 712

valori da 1 a 5 con probabilita 112

La variabile aleatoria X indica la faccia risultante dal lancio di un dado

E[X ] = 1

12lowast 1 + 1

12lowast 2 + 1

12lowast 3 + 1

12lowast 4 + 1

12lowast 5 + 7

12lowast 6 = 475

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 68 88

Valore Atteso - Proprieta

Sia X una variabile aleatoria con valore atteso E[X ] Se c e una costanteallora anche cX e X + c sono variabili casuali In particolare valgono leseguenti proprieta

E[cX ] = cE[X ]E[X + c] = E[X ] + c

Sia Y una variabile aleatoria Allora

E[X +Y ] = E[X ] +E[Y ]se e solo se X e Y sono independenti

E[XY ] = E[X ]E[Y ]

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 69 88

Varianza

Ersquo il valore atteso del quadrato della differenza tra la variabile aleatoria e ilsuo valore atteso

Var(X ) = E[(X minusE[X ])2] = E[X 2] minus (E[X ])2

La radice quadrata viene detta deviazione standard di X

Esempio dado truccato

E[X 2] = 1

12lowast 12 + 1

12lowast 22 + 1

12lowast 32 + 1

12lowast 42 + 1

12lowast 52 + 7

12lowast 62 ≃ 255

Var(X ) = E[X 2] minus (E[X ])2 ≃ 255 minus 4752 ≃ 3

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 70 88

Varianza - proprieta

Sia X una variabile aleatoria e c una costante Allora valgono le seguentiproprieta

1 Var(cX ) = c2Var(X )

2 Var(X + c) = Var(X )

NOTA

Var(X +X ) ne Var(X ) +Var(X )

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 71 88

Covarianza

Siano X Y due variabili aleatorie con valore atteso rispettivamenteE[X ] = microX e E[Y ] = microY La covarianza e definita come segue

Cov(X Y ) = E[(X minus microX )(Y minus microY )] = = E[XY ] minus microXmicroY

Proprieta

1 Cov(X Y ) = Cov(Y X )2 Cov(X X ) = Var(X )3 Sia a una costante allora

Cov(aX Y ) = aCov(X Y )

4 Sia Z una variabile aleatoria allora

Cov(X + Z Y ) = Cov(X Y ) + Cov(Z Y )

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 72 88

Esercizi - 1

1 Consideriamo una variabile aleatoria X che puo assumere i valori 12o 3 Se sappiamo che

fX (1) = 1

3 fX (2) = 3

7

1 Quanto vale fX (3)2 Disegnare il grafico di questa funzione di massa3 Disegnare il grafico della relativa funzione di ripartizione

2 Dimostrare che se X1 e X2 hanno la stessa distribuzione allora

Cov(X1 +X2X1 minusX2) = 0

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 73 88

Esercizi - 2

3 La funzione di ripartizione di X e definita come segue

FX (x) =

⎧⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎨⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎩

0 per x le 0

x2 per 0 le x lt 1

23 per 1 le x lt 2

1112 per 2 le x lt 3

1 per x ge 3

Se ne tracci il graficoQuanto vale P(X gt 12)Quanto vale P(2 le X le 4)Quanto vale P(X le 3)Quanto vale P(X = 1)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 74 88

Esercizi - 3

4 Un tipo di prodotti vengono classificati a seconda dei loro difetti edella fabbrica che li ha prodotti Sia X1 il numero (1 o 2) dellafabbrica e sia X2 il numero di difetti per pezzo (che possono essere da0 a 3) di un prodotto scelto a caso tra la totalita di quelli esistentiLa tabella seguente riporta la funzione di massa di probabilitacongiunta per queste due variabili aleatorie discrete Le righe siriferiscono alla variabile X1 mentre le colonne alla variabile X2

Trova le distribuzioni marginali di X1 e X2Calcola media e varianza di X2

0 1 2 31 18 116 316 182 116 116 18 14

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 75 88

Scipy

Scipy e un modulo che permette di utilizzare varie distribuzioni diprobabilita sia di tipo discreto che continuo

La sintassi generale e la seguente Scipystatsltnome distribuzionegt

rvs(size=z) restituisce un vettore di numeri casuali estrattisecondo la distribuzione di lunghezza z

pdf(x) restituisce il vettore della densita della distribuzionevalutata nei valori del vettore di input x (pmf per le discrete)

cdf(x) restituisce il vettore della funzione di ripartizione (ocumulativa) della distribuzione valutata nei valori del vettore di inputx

ppf(q) restituisce il vettore dei quantili della distribuzione valutatanei valori del vettore di input q

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 76 88

Variabili aleatorie discrete Binomiale

gtgtgt from scipystats import binom

gtgtgt rv = binom(n p)

rvrvs(x) restituisce un vettore di x numeri estratti secondo unadistribuzione Binomiale di parametri n p

rvpmf(x) restituisce la probabilita di ottenere esattamente x

successi in un esperimento dicotomico (01) ripetuto n volte con unaprobabilita di successo p (x puo essere un vettore)

rvcdf(q) restituisce il valore della funzione di ripartizione in q (qpuo essere un vettore)

rvppf(p) restituisce il valore del quantile di ordine p

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 77 88

Variabili aleatorie discrete Ipergeometrica

Supponiamo di avere M = 20 animali di cui n = 7 cani Se vogliamosapere la probabilita di trovare un dato numero di cani se scegliamoN = 12 dei 20 animali in maniera casuale possiamo usare una distribuzioneipergeometrica in questo modo

gtgtgt from scipystats import hypergeom

gtgtgt [M n N] = [20 7 12]

gtgtgt rv = hypergeom(M n N)

rvpmf(x) restituisce la probabilita di estrarre esattamente x cani

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 78 88

Variabili aleatorie discrete Geometrica

gtgtgt from scipystats import geom

gtgtgt rv = geom(p)

rvpmf(x) restituisce la probabilita di avere un successo dopoesattamente x insuccessi in una successione di esperimenti dicotomici(esito 01) con una probabilita di successo p (x puo essere un vettore)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 79 88

Variabili aleatorie discrete Poisson

La distribuzione di Poisson viene usata spesso come modello per il numerodi volte per cui un evento avviene in un dato intervallo di tempo (ospazio) Ad esempio si puo utilizzare per misurare il numero di chiamatericevute da un call center in una mattinata

gtgtgt from scipystats import poisson

gtgtgt mu = 2

gtgtgt rv = poisson(mu)

rvpmf(x) restituisce il seguente valore

f (x) = exp(minusmicro)microx

x

In questo caso x rappresenta il numero di eventi per cui si vuole calcolarela probabilita sapendo che in media ne accadono micro

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 80 88

Variabili aleatorie continue Uniforme

In Scipy la funzione uniforme e soltanto continua Questo significa chenella generazione di numeri casuali otterro dati di tipo float Possiamotuttavia simulare una variabile discreta estraendo la parte intera delrisultato ottenuto

gtgtgt from scipystats import uniform

gtgtgt rv = uniform()

Il comando uniform() crea una distribuzione uniforme nellrsquointervallo[01] Possiamo creare una distribuzione uniforme qualsiasi usandouniform(x y - x) per lrsquointervallo [x y]

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 81 88

Variabili aleatorie continue

norm(mu sigma) variabile Gaussiana (o Normale) di media micro edeviazione standard σ

expon(scale = 1 lambda) variabile Esponenziale di parametroλ

Altre distribuzioni (con relativa documentazione) disponibili suhttpsdocsscipyorgdocscipyreferencestatshtml

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 82 88

Esercizi - 1

1 Unrsquourna contiene 10 palline di cui 4 bianche e 6 nere Si eseguono 5estrazioni con reimmissione

1 Tracciare grafico della funzione massa di probabilita della variabilecasuale X = rdquonumero di palline bianche estratterdquo

2 Calcolare la probabilita di estrarre 2 palline bianche3 Calcolare la probabilita di estrarre al piu 2 palline bianche4 Calcolare la probabilita di estrarre almeno 2 palline bianche5 Qual e il numero minimo x tale che la probabilita di estrarre al piu x

palline bianche sia almeno 08

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 83 88

Esercizi - 2

2 Si eseguono 10 estrazioni senza reimmissione da unrsquourna

1 Tracciare il grafico della funzione massa di probabilita della variabilecasuale X = rdquonumero di palline bianche estratterdquo nei seguenti casi

1 lrsquourna contiene 100 palline di cui 20 bianche e le restanti nere2 lrsquourna contiene 100 palline di cui 2 bianche e le restanti nere

2 Tracciare il grafico della funzione massa di probabilita della variabilecasuale X nel caso dellrsquourna 1 se si eseguono 25 estrazioni

3 Consideriamo lrsquourna 1 e N = 10 estrazioni Si aumenti il numero totaleM di palline nellrsquourna mantenendo uguale a 02 la frazione di pallinebianche Per ciascun valore di M confrontare graficamente ladistribuzione di probabilita del numero di palline bianche estratte nelcaso di estrazioni con e senza reimmissione Provare con 20 40 e 200palline bianche

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 84 88

Esercizi - 3

3 Calcolare la probabilita di ottenere piu teste che croci lanciando 7volte una moneta truccata con probabilita di avere croce pari a 045

4 Calcolare la probabilita di avere almeno 3 sei lanciando 5 dadi a 12facce

5 Calcolare la probabilita di estrarre 20 euro da un sacco contenente 47monete da 1 centesimo e 53 da 2 euro estraendo (uniformemente) acaso 10 monete senza reinserirle

6 Un grammo di uranio emette mediamente 2152 particelle α ognimillisecondo Qual e con buona approssimazione la probabilita che ungrammo di uranio emetta al piu 2000 particelle α in un millisecondo

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 85 88

Esercizi - 4

7 Un uomo si risveglia in mezzo al deserto senza acqua Dopo ogniminuto ha una probabilita del 3 di perdere conoscenza per via dellecondizioni estreme Calcolare la probabilita che lrsquouomo perdaconoscenza dopo almeno due ore e la probabilita che lrsquouomo perdaconoscenza dopo esattamente un quarto drsquoora

8 Sia X una variabile aleatoria normale di parametri micro = 10 e σ = 36Calcola

1 P(X gt 5)2 P(4 le X le 16)3 P(X le 8)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 86 88

Esercizi - 5

9 Il numero di errori tipografici per pagina di una certa rivista segue unadistribuzione di Poisson Sapendo che mediamente sono presenti 02errori per pagina determinare la probabilita che una pagina contenga

1 nessun refuso2 piu refusi

10 Arrivi alla fermata dellrsquoautobus alle 1000 e sei certo che ne passerauno in un momento distribuito uniformemente tra le 1000 e le 1030

1 Qual e la probabilita che tu debba aspettare piu di 10 minuti2 Se alle 1015 lrsquoautobus non e ancora arrivato qual e la probabilita che

tu debba aspettare almeno altri 10 minuti

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 87 88

Esercizi - 6

11 Il signor Jones e convinto che il tempo di vita di una automobile (inmigliaia di chilometri percorse) sia una variabile aleatoria esponenzialedi parametro 120 Il signor Smith ha una macchina usata da vendereche ha percorso circa 10 000 chilometri

1 Se il signor Jones decide di comprarla che probabilita ha di farle farealmeno altri 20 000 chilometri prima che sia da buttare

2 Il modello assunto dal signor Jones e ragionevole

12 Sia X una variabile casuale binomiale di parametri n = 100 e p = 07

1 Tracciate la funzione di ripartizione di X2 Calcolate il primo quartile il quantile di ordine 09 e la mediana di X3 Calcolare la probabilita P(X le 60)4 Calcolare la probabilita P(X le 88)5 Trovare il piu piccolo valore x tale che P(X le x) ge 09

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 88 88

  • Lezione 1
    • Script in Python
    • Numpy
    • Esercizi
    • Pandas
    • Esercizi
      • Lezione 2
        • File csv
        • DataFrame
        • Accesso ai DataFrame
        • Frequenze
        • Esercizi
          • Lezione 3
            • Matplotlib
            • Grafici a Barre
            • Istogrammi
            • Cumulativa empirica
            • Boxplot
            • QQplot
            • Diagramma di Pareto
            • Esercizi
              • Lezione 4
                • Definizioni
                • Probabilitagrave condizionata
                • Indipendenza
                • Esercizi
                  • Lezione 5
                    • Variabili Aleatorie
                    • Funzione di Ripartizione
                    • Funzione di Densitagrave
                    • Valore Atteso
                    • Varianza
                    • Covarianza
                    • Esercizi
                      • Lezione 6
                        • Scipy - Variabili Discrete
                        • Scipy - Variabili continue
                        • Esercizi

File csv

Il formato csv (comma-separated value) e un formato utilizzato perrappresentare una tabella di dati e favorirne lrsquoimportazione e lrsquoesportazioneUn file csv e scritto nella seguente forma

titolopaeseannoduratagenerevoto

Guerre StellariUSA1977121Fantascienza4

Lrsquoimpero colpisce ancoraUSA1980124Fantascienza4

Il ritorno dello JediUSA1983Fantascienza35

Profondo RossoITA1975Horror35

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 25 88

Leggere csv

La funzione read csv() di Pandas puo essere utilizzata per leggere unfile di formato csv Tra i vari parametri che passiamo in input unoparticolarmente importante e sep che indica il carattere utilizzato perseparare le colonne (default e rsquorsquo)

gtgtgt df film = pdread csv(rsquofilmcsvrsquo)

gtgtgt df film

titolo paese anno durata genere voto

Il padrino USA 19720 1750 Drammatico 45

Pulp Fiction USA 19940 1540 Drammatico 40

Fight Club USA 19990 1390 Thriller 40

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 26 88

DataFrame

In Pandas un DataFrame e una struttura dati tabulare con assi etichettatile cui colonne possono contenere dati eterogenei da colonna a colonna

gtgtgt dataframe

esempio

Nome Cognome Eta Citta

Tommaso Rossi 300 Milano

Sergio Bianchi 340 Roma

Pasquale Verdi 290 Palermo

Antonio Gialli 300 Roma

Il DataFrame puo essere visto come un insieme di serie aventi lo stessoindice accostate una allrsquoaltra

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 27 88

Accesso colonne DataFrame - 1

Per conoscere le colonne di un DataFrame possiamo invocare il comandodfcolumns dove df e la variabile in cui abbiamo instanziato ilDataFramePer accedere ad una colonna dobbiamo specificarne il nome nel seguentemodo

gtgtgt df film[rsquogenerersquo]

titolo

Il padrino Drammatico

Pulp Fiction Drammatico

Fight Club Thriller

Selezionando unrsquounica colonna in output viene restituita una Series

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 28 88

Accesso colonne DataFrame - 2

Possiamo accedere allo stesso tempo a piu colonne

gtgtgt df film[[rsquopaesersquorsquoannorsquo]]

titolo paese anno

Il padrino USA 19720

Pulp Fiction USA 19940

Fight Club USA 19990

Selezionando piu colonne in output viene restituito un DataFrame

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 29 88

Accesso righe DataFrame - 1

Per indice numerico

gtgtgt df film[1518]

titolo paese anno durata genere voto

Il padrino USA 19720 1750 Drammatico 45

Pulp Fiction USA 19940 1540 Drammatico 40

Fight Club USA 19990 1390 Thriller 40

Quasi Amici FRA 20110 1120 Commedia 35

Per valore dellrsquoindice (assumiamo che titolo sia lrsquoindice delDataFrame)

gtgtgt df film[rsquoIl padrinorsquorsquoFight Clubrsquo]

titolo paese anno durata genere voto

Il padrino USA 19720 1750 Drammatico 45

Pulp Fiction USA 19940 1540 Drammatico 40

Fight Club USA 19990 1390 Thriller 40

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 30 88

loc amp iloc

Cosı come per le Series anche con i DataFrame possiamo usare loc ediloc per lrsquoaccesso ai dati

loc[rsquonome indicersquo] permette lrsquoaccesso ad una riga o piu righetramite nome dellrsquoindice

iloc[rsquoposizionersquo] permette lrsquoaccesso ad una o piu righe tramitela loro posizione

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 31 88

Accesso tramite unrsquoespressione logica

gtgtgt df film[rsquoannorsquo gt 1998]

titolo

Il padrino False

Pulp Fiction False

Fight Club True

Quasi Amici True

gtgtgt df film[df film[rsquoannorsquo] gt 1998]

titolo paese anno durata genere voto

Fight Club USA 19990 1390 Thriller 40

Quasi Amici FRA 20110 1120 Commedia 35

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 32 88

Metodi dei DataFrame

La classe DataFrame ha diversi metodi Elenchiamo qui i piu importanti

DataFrameappend() permette di estendere il DataFrame

DataFramedrop duplicates() restituisce un DataFrame senza righeduplicate

DataFramedropna() Eliminare i valori Nan da un DataFrame

DataFramesort values() permette di ordinare il DataFrame

DataFramemax() DataFramemin() DataFramemean()DataFramemedian()

Per la completa documentazione si puo utilizzare il comandohelp(pdDataFrame) oppure andare al seguente linkhttpspandaspydataorgpandas-docsstablegenerated

pandasDataFramehtml

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 33 88

Frequenze

La frequenza assoluta indica il numero di volte che una dataosservazione occorre in un campione

La frequenza relativa e un valore tra 0 e 1 che permette di valutare inmaniera piu efficace la frequenza di un osservazione Si calcoladividendo la frequenza assoluta per il numero totale di casi

Per calcolare questa quantita in Pandas possiamo utilizzare la funzionevalue counts() che opera su una Series

In alternativa si puo utilizzare la funzione pdcrosstab che calcolaqueste frequenze in automatico restituendole in output in un DataFrame

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 34 88

Esercizi

Utilizzando il file dati-ospedalicsv dai csv del laboratorio

1 Leggere il file e visualizzarlo in un DataFrame

2 Calcolare le frequenze assolute e relative dellrsquoattributo Regioneusando crosstab

3 Ottenere la singola serie relativa allrsquoattributo Regione e calcolarne lafrequenza assoluta e relativa senza usare crosstab

4 Estrarre un sottodataframe contenente le colonne Nome (attributoDenominazione Str Pubblica New) e Numero di medici (attributoMedici SSN) degli ospedali aventi meno di 200 medici

5 Visualizzare il nome degli ospedali della regione Lombardia

6 Calcolare il numero medio di ingegneri (Ingegneri SSN) presenti negliospedali campani

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 35 88

Esercizi

7 Calcolare la varianza del numero di assistenti sociali (Assistenti socialiSSN) negli ospedali con piu di 400 medici

8 Qual e lrsquoospedale con meno medici

9 Visualizzare in ordine alfabetico il nome dei primi 10 ospedali pernumero di medici

10 Visualizzare il numero degli ospedali che hanno dichiarato il numerodi odontoiatri (per cui il valore e diverso da NaN) (OdontoiatriUniversitari)

11 Visualizzare il numero degli ospedali che hanno dichiarato il numerodi odontoiatri (Odontoiatri Universitari) e per cui questo numero emaggiore di 0

12 Calcolare le frequenze assolute per lrsquoattributo Odontoiatri SSNTrasformare questo risultato in frequenze relative

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 36 88

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) SAD 20182019 January 12 2019 37 88

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) SAD 20182019 January 12 2019 38 88

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) SAD 20182019 January 12 2019 39 88

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) SAD 20182019 January 12 2019 40 88

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) SAD 20182019 January 12 2019 41 88

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) SAD 20182019 January 12 2019 42 88

Grafici con le Series

In generale possiamo tracciare diversi tipi di grafici con le Series

rsquolinersquo line plot (default)

rsquobarrsquo vertical bar plot

rsquobarhrsquo horizontal bar plot

rsquohistrsquo histogram

rsquoboxrsquo boxplot

rsquokdersquo Kernel Density Estimation plot

rsquodensityrsquo same as rsquokdersquo

rsquoarearsquo area plot

rsquopiersquo pie plot

Per saperne di piu consultare questo link

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 43 88

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) SAD 20182019 January 12 2019 44 88

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) SAD 20182019 January 12 2019 45 88

Boxplot

Rappresenta la distribuzione di un vettore di numeri cerchiando gli outlier

gtgtgt weight = heroes[rsquoWeightrsquo]

gtgtgt weightplotbox()

gtgtgt pltshow()

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 46 88

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) SAD 20182019 January 12 2019 47 88

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) SAD 20182019 January 12 2019 48 88

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) SAD 20182019 January 12 2019 49 88

Esercizi - 1

Utilizzando il file capellicsv dai csv del laboratorio

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) SAD 20182019 January 12 2019 50 88

Esercizi - 2

Utilizzando il file dati-ospedalicsv dai csv del laboratorio

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 e canipdf

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 51 88

Sample space

Un esperimento e qualsiasi processo che produce una realizzazione (oosservazione) Lrsquoinsieme di tutte le possibili realizzazioni di un esperimentoviene detto sample space ed indicato con S

lancio di 2 monete

S = (T T ) (T C) (C T ) (C C)

gara di 3 cavalli (ab c)

S = tutti i possibili ordinamenti di(ab c)= (ab c) (a cb) (c b a)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 52 88

Eventi

lancio di 2 monete

S = (T T ) (T C) (C T ) (C C)

A = 2 monete uguali

A = (T T ) (C C)

B = 2 monete diverse

B = Ac = (T C) (C T )

gara di 3 cavalli

A = cavallo a vincente

A = (ab c) (a c b)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 53 88

Probabilita - 1

Consideriamo un esperimento con sample space S Supponiamo che adogni evento A sia associato un numero chiamato probabilita di A edindicato con P(A) che soddisfa le seguenti proprieta

1 Per ogni evento A la probabilita di A e un numero tra 0 e 1

0 le P(A) le 1

2 La probabilita del sample space S e 1

P(S) = 1

3 La probabilita dellrsquounione di eventi disgiunti e uguale alla somma delleprobabilita di tali eventi

P(A cupB) = P(A) + P(B)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 54 88

Probabilita - 2

In generale 2 eventi potrebbero non essere disgiunti

P(A cupB) = P(A) + P(B) minus P(A capB)

Esempio un certo negozio accetta pagamenti o con carte di credito VISAo Mastercard

1 22 dei clienti ha Mastercard

2 58 dei clienti ha VISA

3 14 dei clienti ha entrambe

Qual e la probabilita che un cliente ha almeno una delle 2 carte

P(A) = 022 P(B) = 058

P(A cupB) = P(A) + P(B) minus P(A capB) = 022 + 058 minus 014 = 066

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 55 88

Probabilita condizionata - 1

Se alcune informazioni riguardo lrsquoesito di un esperimento sono disponibiliparliamo di probabilita condizionata

Esempio lancio di 2 dadi

S = (11) (12) (65) (66)

Probabilita che la somma sia 10 (evento B) sapendo che il primo dadomostra 4 (evento A)

(41) (42) (43) (44) (45) (46)

P(B ∣A) = 16

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 56 88

Probabilita condizionata - 2

In generale

P(B ∣A) = P(A capB)P(A)

Supponiamo lrsquoesito sia in A

Per essere anche in B deve essere in entrambi A e B cioe in A capB

Sapendo che A e gia accaduto il nostro nuovo sample space diventa A

la probabilita di A capB viene calcolata rispetto ad A

Nel caso dei dadi

P(B ∣A) = P((46))P((41) (42) (43) (44) (45) (46)) = 136

16= 1

6

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 57 88

Indipendenza

In generale sapere che A e accaduto modifica le chance che B accadaNel caso cio non avvenga cioe se P(B ∣A) = P(B) allora i 2 eventi sidicono indipendenti In questo caso sapere che A e accaduto nonaggiunge alcuna informazione

SiccomeP(A capB) = P(B ∣A)P(A)

Abbiamo che B e indipendente da A se

P(A capB) = P(B)P(A)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 58 88

Esercizi - 1

1 Svolgere gli esercizi di combinatoria

2 Si consideri il seguente esperimento casuale rdquosi lancia tre volte unamonetardquo Qual e lo spazio degli esiti di questo esperimento casualeSi scriva esplicitamente lrsquoevento rdquosi ottengono piu teste che crocirdquo

3 Si consideri il seguente esperimento casuale rdquoSi tirano due dadirdquo Siconsiderino gli eventi E = rdquola somma dei punteggi e disparirdquo F = rdquoilprimo dado realizza un 1rdquo e G = rdquola somma dei punteggi e 5rdquo Sidescrivano gli eventi E cap F E cup F F capG E cap F c e E cap F capG

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 59 88

Esercizi - 2

4 Si consideri il seguente esperimento casuale rdquoUn sistema e compostoda 4 componenti ciascuno dei quali o funziona oppure e guasto Siosserva lo stato dei componenti ottenendo un vettore (x1 x2 x3 x4)dove xi e 1 oppure 0 a seconda che il componente i-esimo funzionioppure nordquo

1 Da quanti elementi e formato lo spazio degli esiti2 Il sistema nel suo insieme funziona fintantoche entrambi i componenti

1 e 2 oppure entrambi i componenti 3 e 4 funzionano Specifica tuttigli esiti dellrsquoevento il rdquosistema funzionardquo

3 Sia E lrsquoevento rdquoi componenti 1 e 3 sono guastirdquo Quanti esiti contiene

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 60 88

Esercizi - 3

5 Si dimostri che in uno spazio degli esiti Ω dotato di una probabilita Pper ogni evento E F sub Ω vale la disuguaglianza seguente

P(E cap F ) ge P(E) + P(F ) minus 1

6 Un gruppo di 5 bambini e 10 bambine e in fila in ordine casuale nelsenso che tutte le 15 possibili permutazioni si suppongonoequiprobabili

1 Qual e la probabilita che il quarto della fila sia un bambino2 E il dodicesimo3 Qual e la probabilita che un determinato bambino occupi la terza

posizione

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 61 88

Esercizi - 4

7 In un comune vi sono 5 alberghi Se 3 persone devono scegliere unalbergo in cui pernottare qual e la probabilita che finiscano tutte inalberghi differenti Che cosa stiamo assumendo senza dirloesplicitamente

8 La media del salario annuale di un gruppo di 100 lavoratori impiegatinellrsquoamministrazione di una grande azienda e di 130000 dollari conuna deviazione standard di 20000 dollari Se si prende una persona acaso da questo gruppo cosa possiamo dire sulla probabilita che il suosalario sia

1 tra i 90000 e i 170000 dollari2 superiore a 150000 dollari

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 62 88

Esercizi - 5

9 In una certa regione vi sono due ditte che producono forni amicroonde Quelli della fabbrica A sono difettosi con probabilita 005mentre quelli della fabbrica B con probabilita 001 Supponi di averacquistato due apparecchi prodotti dalla stessa ditta che puo essere laA o la B con probabilita del 50 Se il primo microonde e difettosoqual e la probabilita condizionata che sia difettoso anche il secondo

10 Hai chiesto ad un vicino di innaffiare una piantina delicata mentre seiin vacanza Pensi che senza acqua la piantina muoia con probabilita08 mentre se innaffiata questa probabilita si ridurrebbe a 015 Latua fiducia che il vicino si ricordi di innaffiarla e del 90

1 Qual e la probabilita che la pianta sia ancora viva al tuo ritorno2 Se fosse morta quale sarebbe la probabilita che il vicino si sia

dimenticato di innaffiarla

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 63 88

Esercizi - 6

11 Una compagnia di assicurazioni classifica i suoi clienti in tre fascebasso rischio medio rischio alto rischio Le sue statistiche indicanoche le probabilita che un cliente delle tre fasce abbia un incidenteentro un periodo di un anno sono rispettivamente 005 015 e 030Se il 20 dei clienti sono a basso rischio il 50 a medio rischio e il30 ad alto rischio che percentuale dei clienti avra mediamenteincidenti in un lasso di un anno Se un cliente non ha avuto incidentinel 1987 qual e la probabilita che appartenga a ciascuna delle trefasce

12 Se un votante scelto a caso e favorevole ad una certa riforma conprobabilita di 07 qual e la probabilita che su 10 votanti esattamente7 siano favorevoli

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 64 88

Variabili aleatorie

Una variabile aleatoria (o anche variabile aleatoria) e una variabile chepuo assumere valori diversi in dipendenza da qualche fenomeno aleatorio

fenomeno lancio di 2 dadivariabile aleatoria somma dei 2 dadi

fenomeno 3 lanci di una monetavariabile aleatoria numero di rdquotesterdquo complessivo

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 65 88

Funzione di Ripartizione

Sia X una variabile aleatoria Si chiama funzione di ripartizione di X lafunzione F che associa ad ogni numero reale a la probabilita che X siaminore o uguale ad a cioe P(X le a) = FX (a)

Nel caso della moneta (fair) lanciata 3 volte (X indica il numero di testecomplessivo)

FX (a) =

⎧⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎨⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎩

0 if a lt 0

18 per 0 le a lt 1

18 + 38 = 48 per 1 le a lt 2

48 + 38 = 78 per 2 le a lt 3

88 = 1 per a ge 3

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 66 88

Funzione di densita o di massa

Sia X una variabile aleatoria Si chiama funzione di densita di X lafunzione f che associa ad ogni numero reale a la probabilita che X siauguale ad a indicata con fX (a)

Nel caso della moneta (fair) lanciata 3 volte (X indica il numero di testecomplessivo)

fX (a) =

⎧⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎨⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎩

18 per a = 0

38 per a = 1

38 per a = 2

18 per a = 3

0 altrimenti

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 67 88

Valore Atteso

Chiamato anche media (expectation in inglese) e appunto una mediapesata dei possibili valori di una variabile aleatoria Il peso dato a ciascunvalore e la probabilita data a quello specifico valore

E[X ] =sumi

aiP(X = ai)

Esempio dado truccato

valore 6 con probabilita 712

valori da 1 a 5 con probabilita 112

La variabile aleatoria X indica la faccia risultante dal lancio di un dado

E[X ] = 1

12lowast 1 + 1

12lowast 2 + 1

12lowast 3 + 1

12lowast 4 + 1

12lowast 5 + 7

12lowast 6 = 475

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 68 88

Valore Atteso - Proprieta

Sia X una variabile aleatoria con valore atteso E[X ] Se c e una costanteallora anche cX e X + c sono variabili casuali In particolare valgono leseguenti proprieta

E[cX ] = cE[X ]E[X + c] = E[X ] + c

Sia Y una variabile aleatoria Allora

E[X +Y ] = E[X ] +E[Y ]se e solo se X e Y sono independenti

E[XY ] = E[X ]E[Y ]

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 69 88

Varianza

Ersquo il valore atteso del quadrato della differenza tra la variabile aleatoria e ilsuo valore atteso

Var(X ) = E[(X minusE[X ])2] = E[X 2] minus (E[X ])2

La radice quadrata viene detta deviazione standard di X

Esempio dado truccato

E[X 2] = 1

12lowast 12 + 1

12lowast 22 + 1

12lowast 32 + 1

12lowast 42 + 1

12lowast 52 + 7

12lowast 62 ≃ 255

Var(X ) = E[X 2] minus (E[X ])2 ≃ 255 minus 4752 ≃ 3

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 70 88

Varianza - proprieta

Sia X una variabile aleatoria e c una costante Allora valgono le seguentiproprieta

1 Var(cX ) = c2Var(X )

2 Var(X + c) = Var(X )

NOTA

Var(X +X ) ne Var(X ) +Var(X )

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 71 88

Covarianza

Siano X Y due variabili aleatorie con valore atteso rispettivamenteE[X ] = microX e E[Y ] = microY La covarianza e definita come segue

Cov(X Y ) = E[(X minus microX )(Y minus microY )] = = E[XY ] minus microXmicroY

Proprieta

1 Cov(X Y ) = Cov(Y X )2 Cov(X X ) = Var(X )3 Sia a una costante allora

Cov(aX Y ) = aCov(X Y )

4 Sia Z una variabile aleatoria allora

Cov(X + Z Y ) = Cov(X Y ) + Cov(Z Y )

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 72 88

Esercizi - 1

1 Consideriamo una variabile aleatoria X che puo assumere i valori 12o 3 Se sappiamo che

fX (1) = 1

3 fX (2) = 3

7

1 Quanto vale fX (3)2 Disegnare il grafico di questa funzione di massa3 Disegnare il grafico della relativa funzione di ripartizione

2 Dimostrare che se X1 e X2 hanno la stessa distribuzione allora

Cov(X1 +X2X1 minusX2) = 0

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 73 88

Esercizi - 2

3 La funzione di ripartizione di X e definita come segue

FX (x) =

⎧⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎨⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎩

0 per x le 0

x2 per 0 le x lt 1

23 per 1 le x lt 2

1112 per 2 le x lt 3

1 per x ge 3

Se ne tracci il graficoQuanto vale P(X gt 12)Quanto vale P(2 le X le 4)Quanto vale P(X le 3)Quanto vale P(X = 1)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 74 88

Esercizi - 3

4 Un tipo di prodotti vengono classificati a seconda dei loro difetti edella fabbrica che li ha prodotti Sia X1 il numero (1 o 2) dellafabbrica e sia X2 il numero di difetti per pezzo (che possono essere da0 a 3) di un prodotto scelto a caso tra la totalita di quelli esistentiLa tabella seguente riporta la funzione di massa di probabilitacongiunta per queste due variabili aleatorie discrete Le righe siriferiscono alla variabile X1 mentre le colonne alla variabile X2

Trova le distribuzioni marginali di X1 e X2Calcola media e varianza di X2

0 1 2 31 18 116 316 182 116 116 18 14

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 75 88

Scipy

Scipy e un modulo che permette di utilizzare varie distribuzioni diprobabilita sia di tipo discreto che continuo

La sintassi generale e la seguente Scipystatsltnome distribuzionegt

rvs(size=z) restituisce un vettore di numeri casuali estrattisecondo la distribuzione di lunghezza z

pdf(x) restituisce il vettore della densita della distribuzionevalutata nei valori del vettore di input x (pmf per le discrete)

cdf(x) restituisce il vettore della funzione di ripartizione (ocumulativa) della distribuzione valutata nei valori del vettore di inputx

ppf(q) restituisce il vettore dei quantili della distribuzione valutatanei valori del vettore di input q

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 76 88

Variabili aleatorie discrete Binomiale

gtgtgt from scipystats import binom

gtgtgt rv = binom(n p)

rvrvs(x) restituisce un vettore di x numeri estratti secondo unadistribuzione Binomiale di parametri n p

rvpmf(x) restituisce la probabilita di ottenere esattamente x

successi in un esperimento dicotomico (01) ripetuto n volte con unaprobabilita di successo p (x puo essere un vettore)

rvcdf(q) restituisce il valore della funzione di ripartizione in q (qpuo essere un vettore)

rvppf(p) restituisce il valore del quantile di ordine p

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 77 88

Variabili aleatorie discrete Ipergeometrica

Supponiamo di avere M = 20 animali di cui n = 7 cani Se vogliamosapere la probabilita di trovare un dato numero di cani se scegliamoN = 12 dei 20 animali in maniera casuale possiamo usare una distribuzioneipergeometrica in questo modo

gtgtgt from scipystats import hypergeom

gtgtgt [M n N] = [20 7 12]

gtgtgt rv = hypergeom(M n N)

rvpmf(x) restituisce la probabilita di estrarre esattamente x cani

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 78 88

Variabili aleatorie discrete Geometrica

gtgtgt from scipystats import geom

gtgtgt rv = geom(p)

rvpmf(x) restituisce la probabilita di avere un successo dopoesattamente x insuccessi in una successione di esperimenti dicotomici(esito 01) con una probabilita di successo p (x puo essere un vettore)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 79 88

Variabili aleatorie discrete Poisson

La distribuzione di Poisson viene usata spesso come modello per il numerodi volte per cui un evento avviene in un dato intervallo di tempo (ospazio) Ad esempio si puo utilizzare per misurare il numero di chiamatericevute da un call center in una mattinata

gtgtgt from scipystats import poisson

gtgtgt mu = 2

gtgtgt rv = poisson(mu)

rvpmf(x) restituisce il seguente valore

f (x) = exp(minusmicro)microx

x

In questo caso x rappresenta il numero di eventi per cui si vuole calcolarela probabilita sapendo che in media ne accadono micro

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 80 88

Variabili aleatorie continue Uniforme

In Scipy la funzione uniforme e soltanto continua Questo significa chenella generazione di numeri casuali otterro dati di tipo float Possiamotuttavia simulare una variabile discreta estraendo la parte intera delrisultato ottenuto

gtgtgt from scipystats import uniform

gtgtgt rv = uniform()

Il comando uniform() crea una distribuzione uniforme nellrsquointervallo[01] Possiamo creare una distribuzione uniforme qualsiasi usandouniform(x y - x) per lrsquointervallo [x y]

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 81 88

Variabili aleatorie continue

norm(mu sigma) variabile Gaussiana (o Normale) di media micro edeviazione standard σ

expon(scale = 1 lambda) variabile Esponenziale di parametroλ

Altre distribuzioni (con relativa documentazione) disponibili suhttpsdocsscipyorgdocscipyreferencestatshtml

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 82 88

Esercizi - 1

1 Unrsquourna contiene 10 palline di cui 4 bianche e 6 nere Si eseguono 5estrazioni con reimmissione

1 Tracciare grafico della funzione massa di probabilita della variabilecasuale X = rdquonumero di palline bianche estratterdquo

2 Calcolare la probabilita di estrarre 2 palline bianche3 Calcolare la probabilita di estrarre al piu 2 palline bianche4 Calcolare la probabilita di estrarre almeno 2 palline bianche5 Qual e il numero minimo x tale che la probabilita di estrarre al piu x

palline bianche sia almeno 08

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 83 88

Esercizi - 2

2 Si eseguono 10 estrazioni senza reimmissione da unrsquourna

1 Tracciare il grafico della funzione massa di probabilita della variabilecasuale X = rdquonumero di palline bianche estratterdquo nei seguenti casi

1 lrsquourna contiene 100 palline di cui 20 bianche e le restanti nere2 lrsquourna contiene 100 palline di cui 2 bianche e le restanti nere

2 Tracciare il grafico della funzione massa di probabilita della variabilecasuale X nel caso dellrsquourna 1 se si eseguono 25 estrazioni

3 Consideriamo lrsquourna 1 e N = 10 estrazioni Si aumenti il numero totaleM di palline nellrsquourna mantenendo uguale a 02 la frazione di pallinebianche Per ciascun valore di M confrontare graficamente ladistribuzione di probabilita del numero di palline bianche estratte nelcaso di estrazioni con e senza reimmissione Provare con 20 40 e 200palline bianche

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 84 88

Esercizi - 3

3 Calcolare la probabilita di ottenere piu teste che croci lanciando 7volte una moneta truccata con probabilita di avere croce pari a 045

4 Calcolare la probabilita di avere almeno 3 sei lanciando 5 dadi a 12facce

5 Calcolare la probabilita di estrarre 20 euro da un sacco contenente 47monete da 1 centesimo e 53 da 2 euro estraendo (uniformemente) acaso 10 monete senza reinserirle

6 Un grammo di uranio emette mediamente 2152 particelle α ognimillisecondo Qual e con buona approssimazione la probabilita che ungrammo di uranio emetta al piu 2000 particelle α in un millisecondo

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 85 88

Esercizi - 4

7 Un uomo si risveglia in mezzo al deserto senza acqua Dopo ogniminuto ha una probabilita del 3 di perdere conoscenza per via dellecondizioni estreme Calcolare la probabilita che lrsquouomo perdaconoscenza dopo almeno due ore e la probabilita che lrsquouomo perdaconoscenza dopo esattamente un quarto drsquoora

8 Sia X una variabile aleatoria normale di parametri micro = 10 e σ = 36Calcola

1 P(X gt 5)2 P(4 le X le 16)3 P(X le 8)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 86 88

Esercizi - 5

9 Il numero di errori tipografici per pagina di una certa rivista segue unadistribuzione di Poisson Sapendo che mediamente sono presenti 02errori per pagina determinare la probabilita che una pagina contenga

1 nessun refuso2 piu refusi

10 Arrivi alla fermata dellrsquoautobus alle 1000 e sei certo che ne passerauno in un momento distribuito uniformemente tra le 1000 e le 1030

1 Qual e la probabilita che tu debba aspettare piu di 10 minuti2 Se alle 1015 lrsquoautobus non e ancora arrivato qual e la probabilita che

tu debba aspettare almeno altri 10 minuti

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 87 88

Esercizi - 6

11 Il signor Jones e convinto che il tempo di vita di una automobile (inmigliaia di chilometri percorse) sia una variabile aleatoria esponenzialedi parametro 120 Il signor Smith ha una macchina usata da vendereche ha percorso circa 10 000 chilometri

1 Se il signor Jones decide di comprarla che probabilita ha di farle farealmeno altri 20 000 chilometri prima che sia da buttare

2 Il modello assunto dal signor Jones e ragionevole

12 Sia X una variabile casuale binomiale di parametri n = 100 e p = 07

1 Tracciate la funzione di ripartizione di X2 Calcolate il primo quartile il quantile di ordine 09 e la mediana di X3 Calcolare la probabilita P(X le 60)4 Calcolare la probabilita P(X le 88)5 Trovare il piu piccolo valore x tale che P(X le x) ge 09

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 88 88

  • Lezione 1
    • Script in Python
    • Numpy
    • Esercizi
    • Pandas
    • Esercizi
      • Lezione 2
        • File csv
        • DataFrame
        • Accesso ai DataFrame
        • Frequenze
        • Esercizi
          • Lezione 3
            • Matplotlib
            • Grafici a Barre
            • Istogrammi
            • Cumulativa empirica
            • Boxplot
            • QQplot
            • Diagramma di Pareto
            • Esercizi
              • Lezione 4
                • Definizioni
                • Probabilitagrave condizionata
                • Indipendenza
                • Esercizi
                  • Lezione 5
                    • Variabili Aleatorie
                    • Funzione di Ripartizione
                    • Funzione di Densitagrave
                    • Valore Atteso
                    • Varianza
                    • Covarianza
                    • Esercizi
                      • Lezione 6
                        • Scipy - Variabili Discrete
                        • Scipy - Variabili continue
                        • Esercizi

Leggere csv

La funzione read csv() di Pandas puo essere utilizzata per leggere unfile di formato csv Tra i vari parametri che passiamo in input unoparticolarmente importante e sep che indica il carattere utilizzato perseparare le colonne (default e rsquorsquo)

gtgtgt df film = pdread csv(rsquofilmcsvrsquo)

gtgtgt df film

titolo paese anno durata genere voto

Il padrino USA 19720 1750 Drammatico 45

Pulp Fiction USA 19940 1540 Drammatico 40

Fight Club USA 19990 1390 Thriller 40

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 26 88

DataFrame

In Pandas un DataFrame e una struttura dati tabulare con assi etichettatile cui colonne possono contenere dati eterogenei da colonna a colonna

gtgtgt dataframe

esempio

Nome Cognome Eta Citta

Tommaso Rossi 300 Milano

Sergio Bianchi 340 Roma

Pasquale Verdi 290 Palermo

Antonio Gialli 300 Roma

Il DataFrame puo essere visto come un insieme di serie aventi lo stessoindice accostate una allrsquoaltra

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 27 88

Accesso colonne DataFrame - 1

Per conoscere le colonne di un DataFrame possiamo invocare il comandodfcolumns dove df e la variabile in cui abbiamo instanziato ilDataFramePer accedere ad una colonna dobbiamo specificarne il nome nel seguentemodo

gtgtgt df film[rsquogenerersquo]

titolo

Il padrino Drammatico

Pulp Fiction Drammatico

Fight Club Thriller

Selezionando unrsquounica colonna in output viene restituita una Series

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 28 88

Accesso colonne DataFrame - 2

Possiamo accedere allo stesso tempo a piu colonne

gtgtgt df film[[rsquopaesersquorsquoannorsquo]]

titolo paese anno

Il padrino USA 19720

Pulp Fiction USA 19940

Fight Club USA 19990

Selezionando piu colonne in output viene restituito un DataFrame

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 29 88

Accesso righe DataFrame - 1

Per indice numerico

gtgtgt df film[1518]

titolo paese anno durata genere voto

Il padrino USA 19720 1750 Drammatico 45

Pulp Fiction USA 19940 1540 Drammatico 40

Fight Club USA 19990 1390 Thriller 40

Quasi Amici FRA 20110 1120 Commedia 35

Per valore dellrsquoindice (assumiamo che titolo sia lrsquoindice delDataFrame)

gtgtgt df film[rsquoIl padrinorsquorsquoFight Clubrsquo]

titolo paese anno durata genere voto

Il padrino USA 19720 1750 Drammatico 45

Pulp Fiction USA 19940 1540 Drammatico 40

Fight Club USA 19990 1390 Thriller 40

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 30 88

loc amp iloc

Cosı come per le Series anche con i DataFrame possiamo usare loc ediloc per lrsquoaccesso ai dati

loc[rsquonome indicersquo] permette lrsquoaccesso ad una riga o piu righetramite nome dellrsquoindice

iloc[rsquoposizionersquo] permette lrsquoaccesso ad una o piu righe tramitela loro posizione

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 31 88

Accesso tramite unrsquoespressione logica

gtgtgt df film[rsquoannorsquo gt 1998]

titolo

Il padrino False

Pulp Fiction False

Fight Club True

Quasi Amici True

gtgtgt df film[df film[rsquoannorsquo] gt 1998]

titolo paese anno durata genere voto

Fight Club USA 19990 1390 Thriller 40

Quasi Amici FRA 20110 1120 Commedia 35

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 32 88

Metodi dei DataFrame

La classe DataFrame ha diversi metodi Elenchiamo qui i piu importanti

DataFrameappend() permette di estendere il DataFrame

DataFramedrop duplicates() restituisce un DataFrame senza righeduplicate

DataFramedropna() Eliminare i valori Nan da un DataFrame

DataFramesort values() permette di ordinare il DataFrame

DataFramemax() DataFramemin() DataFramemean()DataFramemedian()

Per la completa documentazione si puo utilizzare il comandohelp(pdDataFrame) oppure andare al seguente linkhttpspandaspydataorgpandas-docsstablegenerated

pandasDataFramehtml

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 33 88

Frequenze

La frequenza assoluta indica il numero di volte che una dataosservazione occorre in un campione

La frequenza relativa e un valore tra 0 e 1 che permette di valutare inmaniera piu efficace la frequenza di un osservazione Si calcoladividendo la frequenza assoluta per il numero totale di casi

Per calcolare questa quantita in Pandas possiamo utilizzare la funzionevalue counts() che opera su una Series

In alternativa si puo utilizzare la funzione pdcrosstab che calcolaqueste frequenze in automatico restituendole in output in un DataFrame

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 34 88

Esercizi

Utilizzando il file dati-ospedalicsv dai csv del laboratorio

1 Leggere il file e visualizzarlo in un DataFrame

2 Calcolare le frequenze assolute e relative dellrsquoattributo Regioneusando crosstab

3 Ottenere la singola serie relativa allrsquoattributo Regione e calcolarne lafrequenza assoluta e relativa senza usare crosstab

4 Estrarre un sottodataframe contenente le colonne Nome (attributoDenominazione Str Pubblica New) e Numero di medici (attributoMedici SSN) degli ospedali aventi meno di 200 medici

5 Visualizzare il nome degli ospedali della regione Lombardia

6 Calcolare il numero medio di ingegneri (Ingegneri SSN) presenti negliospedali campani

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 35 88

Esercizi

7 Calcolare la varianza del numero di assistenti sociali (Assistenti socialiSSN) negli ospedali con piu di 400 medici

8 Qual e lrsquoospedale con meno medici

9 Visualizzare in ordine alfabetico il nome dei primi 10 ospedali pernumero di medici

10 Visualizzare il numero degli ospedali che hanno dichiarato il numerodi odontoiatri (per cui il valore e diverso da NaN) (OdontoiatriUniversitari)

11 Visualizzare il numero degli ospedali che hanno dichiarato il numerodi odontoiatri (Odontoiatri Universitari) e per cui questo numero emaggiore di 0

12 Calcolare le frequenze assolute per lrsquoattributo Odontoiatri SSNTrasformare questo risultato in frequenze relative

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 36 88

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) SAD 20182019 January 12 2019 37 88

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) SAD 20182019 January 12 2019 38 88

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) SAD 20182019 January 12 2019 39 88

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) SAD 20182019 January 12 2019 40 88

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) SAD 20182019 January 12 2019 41 88

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) SAD 20182019 January 12 2019 42 88

Grafici con le Series

In generale possiamo tracciare diversi tipi di grafici con le Series

rsquolinersquo line plot (default)

rsquobarrsquo vertical bar plot

rsquobarhrsquo horizontal bar plot

rsquohistrsquo histogram

rsquoboxrsquo boxplot

rsquokdersquo Kernel Density Estimation plot

rsquodensityrsquo same as rsquokdersquo

rsquoarearsquo area plot

rsquopiersquo pie plot

Per saperne di piu consultare questo link

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 43 88

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) SAD 20182019 January 12 2019 44 88

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) SAD 20182019 January 12 2019 45 88

Boxplot

Rappresenta la distribuzione di un vettore di numeri cerchiando gli outlier

gtgtgt weight = heroes[rsquoWeightrsquo]

gtgtgt weightplotbox()

gtgtgt pltshow()

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 46 88

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) SAD 20182019 January 12 2019 47 88

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) SAD 20182019 January 12 2019 48 88

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) SAD 20182019 January 12 2019 49 88

Esercizi - 1

Utilizzando il file capellicsv dai csv del laboratorio

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) SAD 20182019 January 12 2019 50 88

Esercizi - 2

Utilizzando il file dati-ospedalicsv dai csv del laboratorio

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 e canipdf

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 51 88

Sample space

Un esperimento e qualsiasi processo che produce una realizzazione (oosservazione) Lrsquoinsieme di tutte le possibili realizzazioni di un esperimentoviene detto sample space ed indicato con S

lancio di 2 monete

S = (T T ) (T C) (C T ) (C C)

gara di 3 cavalli (ab c)

S = tutti i possibili ordinamenti di(ab c)= (ab c) (a cb) (c b a)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 52 88

Eventi

lancio di 2 monete

S = (T T ) (T C) (C T ) (C C)

A = 2 monete uguali

A = (T T ) (C C)

B = 2 monete diverse

B = Ac = (T C) (C T )

gara di 3 cavalli

A = cavallo a vincente

A = (ab c) (a c b)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 53 88

Probabilita - 1

Consideriamo un esperimento con sample space S Supponiamo che adogni evento A sia associato un numero chiamato probabilita di A edindicato con P(A) che soddisfa le seguenti proprieta

1 Per ogni evento A la probabilita di A e un numero tra 0 e 1

0 le P(A) le 1

2 La probabilita del sample space S e 1

P(S) = 1

3 La probabilita dellrsquounione di eventi disgiunti e uguale alla somma delleprobabilita di tali eventi

P(A cupB) = P(A) + P(B)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 54 88

Probabilita - 2

In generale 2 eventi potrebbero non essere disgiunti

P(A cupB) = P(A) + P(B) minus P(A capB)

Esempio un certo negozio accetta pagamenti o con carte di credito VISAo Mastercard

1 22 dei clienti ha Mastercard

2 58 dei clienti ha VISA

3 14 dei clienti ha entrambe

Qual e la probabilita che un cliente ha almeno una delle 2 carte

P(A) = 022 P(B) = 058

P(A cupB) = P(A) + P(B) minus P(A capB) = 022 + 058 minus 014 = 066

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 55 88

Probabilita condizionata - 1

Se alcune informazioni riguardo lrsquoesito di un esperimento sono disponibiliparliamo di probabilita condizionata

Esempio lancio di 2 dadi

S = (11) (12) (65) (66)

Probabilita che la somma sia 10 (evento B) sapendo che il primo dadomostra 4 (evento A)

(41) (42) (43) (44) (45) (46)

P(B ∣A) = 16

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 56 88

Probabilita condizionata - 2

In generale

P(B ∣A) = P(A capB)P(A)

Supponiamo lrsquoesito sia in A

Per essere anche in B deve essere in entrambi A e B cioe in A capB

Sapendo che A e gia accaduto il nostro nuovo sample space diventa A

la probabilita di A capB viene calcolata rispetto ad A

Nel caso dei dadi

P(B ∣A) = P((46))P((41) (42) (43) (44) (45) (46)) = 136

16= 1

6

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 57 88

Indipendenza

In generale sapere che A e accaduto modifica le chance che B accadaNel caso cio non avvenga cioe se P(B ∣A) = P(B) allora i 2 eventi sidicono indipendenti In questo caso sapere che A e accaduto nonaggiunge alcuna informazione

SiccomeP(A capB) = P(B ∣A)P(A)

Abbiamo che B e indipendente da A se

P(A capB) = P(B)P(A)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 58 88

Esercizi - 1

1 Svolgere gli esercizi di combinatoria

2 Si consideri il seguente esperimento casuale rdquosi lancia tre volte unamonetardquo Qual e lo spazio degli esiti di questo esperimento casualeSi scriva esplicitamente lrsquoevento rdquosi ottengono piu teste che crocirdquo

3 Si consideri il seguente esperimento casuale rdquoSi tirano due dadirdquo Siconsiderino gli eventi E = rdquola somma dei punteggi e disparirdquo F = rdquoilprimo dado realizza un 1rdquo e G = rdquola somma dei punteggi e 5rdquo Sidescrivano gli eventi E cap F E cup F F capG E cap F c e E cap F capG

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 59 88

Esercizi - 2

4 Si consideri il seguente esperimento casuale rdquoUn sistema e compostoda 4 componenti ciascuno dei quali o funziona oppure e guasto Siosserva lo stato dei componenti ottenendo un vettore (x1 x2 x3 x4)dove xi e 1 oppure 0 a seconda che il componente i-esimo funzionioppure nordquo

1 Da quanti elementi e formato lo spazio degli esiti2 Il sistema nel suo insieme funziona fintantoche entrambi i componenti

1 e 2 oppure entrambi i componenti 3 e 4 funzionano Specifica tuttigli esiti dellrsquoevento il rdquosistema funzionardquo

3 Sia E lrsquoevento rdquoi componenti 1 e 3 sono guastirdquo Quanti esiti contiene

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 60 88

Esercizi - 3

5 Si dimostri che in uno spazio degli esiti Ω dotato di una probabilita Pper ogni evento E F sub Ω vale la disuguaglianza seguente

P(E cap F ) ge P(E) + P(F ) minus 1

6 Un gruppo di 5 bambini e 10 bambine e in fila in ordine casuale nelsenso che tutte le 15 possibili permutazioni si suppongonoequiprobabili

1 Qual e la probabilita che il quarto della fila sia un bambino2 E il dodicesimo3 Qual e la probabilita che un determinato bambino occupi la terza

posizione

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 61 88

Esercizi - 4

7 In un comune vi sono 5 alberghi Se 3 persone devono scegliere unalbergo in cui pernottare qual e la probabilita che finiscano tutte inalberghi differenti Che cosa stiamo assumendo senza dirloesplicitamente

8 La media del salario annuale di un gruppo di 100 lavoratori impiegatinellrsquoamministrazione di una grande azienda e di 130000 dollari conuna deviazione standard di 20000 dollari Se si prende una persona acaso da questo gruppo cosa possiamo dire sulla probabilita che il suosalario sia

1 tra i 90000 e i 170000 dollari2 superiore a 150000 dollari

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 62 88

Esercizi - 5

9 In una certa regione vi sono due ditte che producono forni amicroonde Quelli della fabbrica A sono difettosi con probabilita 005mentre quelli della fabbrica B con probabilita 001 Supponi di averacquistato due apparecchi prodotti dalla stessa ditta che puo essere laA o la B con probabilita del 50 Se il primo microonde e difettosoqual e la probabilita condizionata che sia difettoso anche il secondo

10 Hai chiesto ad un vicino di innaffiare una piantina delicata mentre seiin vacanza Pensi che senza acqua la piantina muoia con probabilita08 mentre se innaffiata questa probabilita si ridurrebbe a 015 Latua fiducia che il vicino si ricordi di innaffiarla e del 90

1 Qual e la probabilita che la pianta sia ancora viva al tuo ritorno2 Se fosse morta quale sarebbe la probabilita che il vicino si sia

dimenticato di innaffiarla

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 63 88

Esercizi - 6

11 Una compagnia di assicurazioni classifica i suoi clienti in tre fascebasso rischio medio rischio alto rischio Le sue statistiche indicanoche le probabilita che un cliente delle tre fasce abbia un incidenteentro un periodo di un anno sono rispettivamente 005 015 e 030Se il 20 dei clienti sono a basso rischio il 50 a medio rischio e il30 ad alto rischio che percentuale dei clienti avra mediamenteincidenti in un lasso di un anno Se un cliente non ha avuto incidentinel 1987 qual e la probabilita che appartenga a ciascuna delle trefasce

12 Se un votante scelto a caso e favorevole ad una certa riforma conprobabilita di 07 qual e la probabilita che su 10 votanti esattamente7 siano favorevoli

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 64 88

Variabili aleatorie

Una variabile aleatoria (o anche variabile aleatoria) e una variabile chepuo assumere valori diversi in dipendenza da qualche fenomeno aleatorio

fenomeno lancio di 2 dadivariabile aleatoria somma dei 2 dadi

fenomeno 3 lanci di una monetavariabile aleatoria numero di rdquotesterdquo complessivo

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 65 88

Funzione di Ripartizione

Sia X una variabile aleatoria Si chiama funzione di ripartizione di X lafunzione F che associa ad ogni numero reale a la probabilita che X siaminore o uguale ad a cioe P(X le a) = FX (a)

Nel caso della moneta (fair) lanciata 3 volte (X indica il numero di testecomplessivo)

FX (a) =

⎧⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎨⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎩

0 if a lt 0

18 per 0 le a lt 1

18 + 38 = 48 per 1 le a lt 2

48 + 38 = 78 per 2 le a lt 3

88 = 1 per a ge 3

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 66 88

Funzione di densita o di massa

Sia X una variabile aleatoria Si chiama funzione di densita di X lafunzione f che associa ad ogni numero reale a la probabilita che X siauguale ad a indicata con fX (a)

Nel caso della moneta (fair) lanciata 3 volte (X indica il numero di testecomplessivo)

fX (a) =

⎧⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎨⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎩

18 per a = 0

38 per a = 1

38 per a = 2

18 per a = 3

0 altrimenti

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 67 88

Valore Atteso

Chiamato anche media (expectation in inglese) e appunto una mediapesata dei possibili valori di una variabile aleatoria Il peso dato a ciascunvalore e la probabilita data a quello specifico valore

E[X ] =sumi

aiP(X = ai)

Esempio dado truccato

valore 6 con probabilita 712

valori da 1 a 5 con probabilita 112

La variabile aleatoria X indica la faccia risultante dal lancio di un dado

E[X ] = 1

12lowast 1 + 1

12lowast 2 + 1

12lowast 3 + 1

12lowast 4 + 1

12lowast 5 + 7

12lowast 6 = 475

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 68 88

Valore Atteso - Proprieta

Sia X una variabile aleatoria con valore atteso E[X ] Se c e una costanteallora anche cX e X + c sono variabili casuali In particolare valgono leseguenti proprieta

E[cX ] = cE[X ]E[X + c] = E[X ] + c

Sia Y una variabile aleatoria Allora

E[X +Y ] = E[X ] +E[Y ]se e solo se X e Y sono independenti

E[XY ] = E[X ]E[Y ]

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 69 88

Varianza

Ersquo il valore atteso del quadrato della differenza tra la variabile aleatoria e ilsuo valore atteso

Var(X ) = E[(X minusE[X ])2] = E[X 2] minus (E[X ])2

La radice quadrata viene detta deviazione standard di X

Esempio dado truccato

E[X 2] = 1

12lowast 12 + 1

12lowast 22 + 1

12lowast 32 + 1

12lowast 42 + 1

12lowast 52 + 7

12lowast 62 ≃ 255

Var(X ) = E[X 2] minus (E[X ])2 ≃ 255 minus 4752 ≃ 3

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 70 88

Varianza - proprieta

Sia X una variabile aleatoria e c una costante Allora valgono le seguentiproprieta

1 Var(cX ) = c2Var(X )

2 Var(X + c) = Var(X )

NOTA

Var(X +X ) ne Var(X ) +Var(X )

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 71 88

Covarianza

Siano X Y due variabili aleatorie con valore atteso rispettivamenteE[X ] = microX e E[Y ] = microY La covarianza e definita come segue

Cov(X Y ) = E[(X minus microX )(Y minus microY )] = = E[XY ] minus microXmicroY

Proprieta

1 Cov(X Y ) = Cov(Y X )2 Cov(X X ) = Var(X )3 Sia a una costante allora

Cov(aX Y ) = aCov(X Y )

4 Sia Z una variabile aleatoria allora

Cov(X + Z Y ) = Cov(X Y ) + Cov(Z Y )

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 72 88

Esercizi - 1

1 Consideriamo una variabile aleatoria X che puo assumere i valori 12o 3 Se sappiamo che

fX (1) = 1

3 fX (2) = 3

7

1 Quanto vale fX (3)2 Disegnare il grafico di questa funzione di massa3 Disegnare il grafico della relativa funzione di ripartizione

2 Dimostrare che se X1 e X2 hanno la stessa distribuzione allora

Cov(X1 +X2X1 minusX2) = 0

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 73 88

Esercizi - 2

3 La funzione di ripartizione di X e definita come segue

FX (x) =

⎧⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎨⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎩

0 per x le 0

x2 per 0 le x lt 1

23 per 1 le x lt 2

1112 per 2 le x lt 3

1 per x ge 3

Se ne tracci il graficoQuanto vale P(X gt 12)Quanto vale P(2 le X le 4)Quanto vale P(X le 3)Quanto vale P(X = 1)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 74 88

Esercizi - 3

4 Un tipo di prodotti vengono classificati a seconda dei loro difetti edella fabbrica che li ha prodotti Sia X1 il numero (1 o 2) dellafabbrica e sia X2 il numero di difetti per pezzo (che possono essere da0 a 3) di un prodotto scelto a caso tra la totalita di quelli esistentiLa tabella seguente riporta la funzione di massa di probabilitacongiunta per queste due variabili aleatorie discrete Le righe siriferiscono alla variabile X1 mentre le colonne alla variabile X2

Trova le distribuzioni marginali di X1 e X2Calcola media e varianza di X2

0 1 2 31 18 116 316 182 116 116 18 14

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 75 88

Scipy

Scipy e un modulo che permette di utilizzare varie distribuzioni diprobabilita sia di tipo discreto che continuo

La sintassi generale e la seguente Scipystatsltnome distribuzionegt

rvs(size=z) restituisce un vettore di numeri casuali estrattisecondo la distribuzione di lunghezza z

pdf(x) restituisce il vettore della densita della distribuzionevalutata nei valori del vettore di input x (pmf per le discrete)

cdf(x) restituisce il vettore della funzione di ripartizione (ocumulativa) della distribuzione valutata nei valori del vettore di inputx

ppf(q) restituisce il vettore dei quantili della distribuzione valutatanei valori del vettore di input q

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 76 88

Variabili aleatorie discrete Binomiale

gtgtgt from scipystats import binom

gtgtgt rv = binom(n p)

rvrvs(x) restituisce un vettore di x numeri estratti secondo unadistribuzione Binomiale di parametri n p

rvpmf(x) restituisce la probabilita di ottenere esattamente x

successi in un esperimento dicotomico (01) ripetuto n volte con unaprobabilita di successo p (x puo essere un vettore)

rvcdf(q) restituisce il valore della funzione di ripartizione in q (qpuo essere un vettore)

rvppf(p) restituisce il valore del quantile di ordine p

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 77 88

Variabili aleatorie discrete Ipergeometrica

Supponiamo di avere M = 20 animali di cui n = 7 cani Se vogliamosapere la probabilita di trovare un dato numero di cani se scegliamoN = 12 dei 20 animali in maniera casuale possiamo usare una distribuzioneipergeometrica in questo modo

gtgtgt from scipystats import hypergeom

gtgtgt [M n N] = [20 7 12]

gtgtgt rv = hypergeom(M n N)

rvpmf(x) restituisce la probabilita di estrarre esattamente x cani

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 78 88

Variabili aleatorie discrete Geometrica

gtgtgt from scipystats import geom

gtgtgt rv = geom(p)

rvpmf(x) restituisce la probabilita di avere un successo dopoesattamente x insuccessi in una successione di esperimenti dicotomici(esito 01) con una probabilita di successo p (x puo essere un vettore)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 79 88

Variabili aleatorie discrete Poisson

La distribuzione di Poisson viene usata spesso come modello per il numerodi volte per cui un evento avviene in un dato intervallo di tempo (ospazio) Ad esempio si puo utilizzare per misurare il numero di chiamatericevute da un call center in una mattinata

gtgtgt from scipystats import poisson

gtgtgt mu = 2

gtgtgt rv = poisson(mu)

rvpmf(x) restituisce il seguente valore

f (x) = exp(minusmicro)microx

x

In questo caso x rappresenta il numero di eventi per cui si vuole calcolarela probabilita sapendo che in media ne accadono micro

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 80 88

Variabili aleatorie continue Uniforme

In Scipy la funzione uniforme e soltanto continua Questo significa chenella generazione di numeri casuali otterro dati di tipo float Possiamotuttavia simulare una variabile discreta estraendo la parte intera delrisultato ottenuto

gtgtgt from scipystats import uniform

gtgtgt rv = uniform()

Il comando uniform() crea una distribuzione uniforme nellrsquointervallo[01] Possiamo creare una distribuzione uniforme qualsiasi usandouniform(x y - x) per lrsquointervallo [x y]

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 81 88

Variabili aleatorie continue

norm(mu sigma) variabile Gaussiana (o Normale) di media micro edeviazione standard σ

expon(scale = 1 lambda) variabile Esponenziale di parametroλ

Altre distribuzioni (con relativa documentazione) disponibili suhttpsdocsscipyorgdocscipyreferencestatshtml

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 82 88

Esercizi - 1

1 Unrsquourna contiene 10 palline di cui 4 bianche e 6 nere Si eseguono 5estrazioni con reimmissione

1 Tracciare grafico della funzione massa di probabilita della variabilecasuale X = rdquonumero di palline bianche estratterdquo

2 Calcolare la probabilita di estrarre 2 palline bianche3 Calcolare la probabilita di estrarre al piu 2 palline bianche4 Calcolare la probabilita di estrarre almeno 2 palline bianche5 Qual e il numero minimo x tale che la probabilita di estrarre al piu x

palline bianche sia almeno 08

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 83 88

Esercizi - 2

2 Si eseguono 10 estrazioni senza reimmissione da unrsquourna

1 Tracciare il grafico della funzione massa di probabilita della variabilecasuale X = rdquonumero di palline bianche estratterdquo nei seguenti casi

1 lrsquourna contiene 100 palline di cui 20 bianche e le restanti nere2 lrsquourna contiene 100 palline di cui 2 bianche e le restanti nere

2 Tracciare il grafico della funzione massa di probabilita della variabilecasuale X nel caso dellrsquourna 1 se si eseguono 25 estrazioni

3 Consideriamo lrsquourna 1 e N = 10 estrazioni Si aumenti il numero totaleM di palline nellrsquourna mantenendo uguale a 02 la frazione di pallinebianche Per ciascun valore di M confrontare graficamente ladistribuzione di probabilita del numero di palline bianche estratte nelcaso di estrazioni con e senza reimmissione Provare con 20 40 e 200palline bianche

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 84 88

Esercizi - 3

3 Calcolare la probabilita di ottenere piu teste che croci lanciando 7volte una moneta truccata con probabilita di avere croce pari a 045

4 Calcolare la probabilita di avere almeno 3 sei lanciando 5 dadi a 12facce

5 Calcolare la probabilita di estrarre 20 euro da un sacco contenente 47monete da 1 centesimo e 53 da 2 euro estraendo (uniformemente) acaso 10 monete senza reinserirle

6 Un grammo di uranio emette mediamente 2152 particelle α ognimillisecondo Qual e con buona approssimazione la probabilita che ungrammo di uranio emetta al piu 2000 particelle α in un millisecondo

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 85 88

Esercizi - 4

7 Un uomo si risveglia in mezzo al deserto senza acqua Dopo ogniminuto ha una probabilita del 3 di perdere conoscenza per via dellecondizioni estreme Calcolare la probabilita che lrsquouomo perdaconoscenza dopo almeno due ore e la probabilita che lrsquouomo perdaconoscenza dopo esattamente un quarto drsquoora

8 Sia X una variabile aleatoria normale di parametri micro = 10 e σ = 36Calcola

1 P(X gt 5)2 P(4 le X le 16)3 P(X le 8)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 86 88

Esercizi - 5

9 Il numero di errori tipografici per pagina di una certa rivista segue unadistribuzione di Poisson Sapendo che mediamente sono presenti 02errori per pagina determinare la probabilita che una pagina contenga

1 nessun refuso2 piu refusi

10 Arrivi alla fermata dellrsquoautobus alle 1000 e sei certo che ne passerauno in un momento distribuito uniformemente tra le 1000 e le 1030

1 Qual e la probabilita che tu debba aspettare piu di 10 minuti2 Se alle 1015 lrsquoautobus non e ancora arrivato qual e la probabilita che

tu debba aspettare almeno altri 10 minuti

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 87 88

Esercizi - 6

11 Il signor Jones e convinto che il tempo di vita di una automobile (inmigliaia di chilometri percorse) sia una variabile aleatoria esponenzialedi parametro 120 Il signor Smith ha una macchina usata da vendereche ha percorso circa 10 000 chilometri

1 Se il signor Jones decide di comprarla che probabilita ha di farle farealmeno altri 20 000 chilometri prima che sia da buttare

2 Il modello assunto dal signor Jones e ragionevole

12 Sia X una variabile casuale binomiale di parametri n = 100 e p = 07

1 Tracciate la funzione di ripartizione di X2 Calcolate il primo quartile il quantile di ordine 09 e la mediana di X3 Calcolare la probabilita P(X le 60)4 Calcolare la probabilita P(X le 88)5 Trovare il piu piccolo valore x tale che P(X le x) ge 09

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 88 88

  • Lezione 1
    • Script in Python
    • Numpy
    • Esercizi
    • Pandas
    • Esercizi
      • Lezione 2
        • File csv
        • DataFrame
        • Accesso ai DataFrame
        • Frequenze
        • Esercizi
          • Lezione 3
            • Matplotlib
            • Grafici a Barre
            • Istogrammi
            • Cumulativa empirica
            • Boxplot
            • QQplot
            • Diagramma di Pareto
            • Esercizi
              • Lezione 4
                • Definizioni
                • Probabilitagrave condizionata
                • Indipendenza
                • Esercizi
                  • Lezione 5
                    • Variabili Aleatorie
                    • Funzione di Ripartizione
                    • Funzione di Densitagrave
                    • Valore Atteso
                    • Varianza
                    • Covarianza
                    • Esercizi
                      • Lezione 6
                        • Scipy - Variabili Discrete
                        • Scipy - Variabili continue
                        • Esercizi

DataFrame

In Pandas un DataFrame e una struttura dati tabulare con assi etichettatile cui colonne possono contenere dati eterogenei da colonna a colonna

gtgtgt dataframe

esempio

Nome Cognome Eta Citta

Tommaso Rossi 300 Milano

Sergio Bianchi 340 Roma

Pasquale Verdi 290 Palermo

Antonio Gialli 300 Roma

Il DataFrame puo essere visto come un insieme di serie aventi lo stessoindice accostate una allrsquoaltra

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 27 88

Accesso colonne DataFrame - 1

Per conoscere le colonne di un DataFrame possiamo invocare il comandodfcolumns dove df e la variabile in cui abbiamo instanziato ilDataFramePer accedere ad una colonna dobbiamo specificarne il nome nel seguentemodo

gtgtgt df film[rsquogenerersquo]

titolo

Il padrino Drammatico

Pulp Fiction Drammatico

Fight Club Thriller

Selezionando unrsquounica colonna in output viene restituita una Series

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 28 88

Accesso colonne DataFrame - 2

Possiamo accedere allo stesso tempo a piu colonne

gtgtgt df film[[rsquopaesersquorsquoannorsquo]]

titolo paese anno

Il padrino USA 19720

Pulp Fiction USA 19940

Fight Club USA 19990

Selezionando piu colonne in output viene restituito un DataFrame

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 29 88

Accesso righe DataFrame - 1

Per indice numerico

gtgtgt df film[1518]

titolo paese anno durata genere voto

Il padrino USA 19720 1750 Drammatico 45

Pulp Fiction USA 19940 1540 Drammatico 40

Fight Club USA 19990 1390 Thriller 40

Quasi Amici FRA 20110 1120 Commedia 35

Per valore dellrsquoindice (assumiamo che titolo sia lrsquoindice delDataFrame)

gtgtgt df film[rsquoIl padrinorsquorsquoFight Clubrsquo]

titolo paese anno durata genere voto

Il padrino USA 19720 1750 Drammatico 45

Pulp Fiction USA 19940 1540 Drammatico 40

Fight Club USA 19990 1390 Thriller 40

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 30 88

loc amp iloc

Cosı come per le Series anche con i DataFrame possiamo usare loc ediloc per lrsquoaccesso ai dati

loc[rsquonome indicersquo] permette lrsquoaccesso ad una riga o piu righetramite nome dellrsquoindice

iloc[rsquoposizionersquo] permette lrsquoaccesso ad una o piu righe tramitela loro posizione

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 31 88

Accesso tramite unrsquoespressione logica

gtgtgt df film[rsquoannorsquo gt 1998]

titolo

Il padrino False

Pulp Fiction False

Fight Club True

Quasi Amici True

gtgtgt df film[df film[rsquoannorsquo] gt 1998]

titolo paese anno durata genere voto

Fight Club USA 19990 1390 Thriller 40

Quasi Amici FRA 20110 1120 Commedia 35

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 32 88

Metodi dei DataFrame

La classe DataFrame ha diversi metodi Elenchiamo qui i piu importanti

DataFrameappend() permette di estendere il DataFrame

DataFramedrop duplicates() restituisce un DataFrame senza righeduplicate

DataFramedropna() Eliminare i valori Nan da un DataFrame

DataFramesort values() permette di ordinare il DataFrame

DataFramemax() DataFramemin() DataFramemean()DataFramemedian()

Per la completa documentazione si puo utilizzare il comandohelp(pdDataFrame) oppure andare al seguente linkhttpspandaspydataorgpandas-docsstablegenerated

pandasDataFramehtml

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 33 88

Frequenze

La frequenza assoluta indica il numero di volte che una dataosservazione occorre in un campione

La frequenza relativa e un valore tra 0 e 1 che permette di valutare inmaniera piu efficace la frequenza di un osservazione Si calcoladividendo la frequenza assoluta per il numero totale di casi

Per calcolare questa quantita in Pandas possiamo utilizzare la funzionevalue counts() che opera su una Series

In alternativa si puo utilizzare la funzione pdcrosstab che calcolaqueste frequenze in automatico restituendole in output in un DataFrame

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 34 88

Esercizi

Utilizzando il file dati-ospedalicsv dai csv del laboratorio

1 Leggere il file e visualizzarlo in un DataFrame

2 Calcolare le frequenze assolute e relative dellrsquoattributo Regioneusando crosstab

3 Ottenere la singola serie relativa allrsquoattributo Regione e calcolarne lafrequenza assoluta e relativa senza usare crosstab

4 Estrarre un sottodataframe contenente le colonne Nome (attributoDenominazione Str Pubblica New) e Numero di medici (attributoMedici SSN) degli ospedali aventi meno di 200 medici

5 Visualizzare il nome degli ospedali della regione Lombardia

6 Calcolare il numero medio di ingegneri (Ingegneri SSN) presenti negliospedali campani

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 35 88

Esercizi

7 Calcolare la varianza del numero di assistenti sociali (Assistenti socialiSSN) negli ospedali con piu di 400 medici

8 Qual e lrsquoospedale con meno medici

9 Visualizzare in ordine alfabetico il nome dei primi 10 ospedali pernumero di medici

10 Visualizzare il numero degli ospedali che hanno dichiarato il numerodi odontoiatri (per cui il valore e diverso da NaN) (OdontoiatriUniversitari)

11 Visualizzare il numero degli ospedali che hanno dichiarato il numerodi odontoiatri (Odontoiatri Universitari) e per cui questo numero emaggiore di 0

12 Calcolare le frequenze assolute per lrsquoattributo Odontoiatri SSNTrasformare questo risultato in frequenze relative

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 36 88

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) SAD 20182019 January 12 2019 37 88

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) SAD 20182019 January 12 2019 38 88

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) SAD 20182019 January 12 2019 39 88

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) SAD 20182019 January 12 2019 40 88

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) SAD 20182019 January 12 2019 41 88

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) SAD 20182019 January 12 2019 42 88

Grafici con le Series

In generale possiamo tracciare diversi tipi di grafici con le Series

rsquolinersquo line plot (default)

rsquobarrsquo vertical bar plot

rsquobarhrsquo horizontal bar plot

rsquohistrsquo histogram

rsquoboxrsquo boxplot

rsquokdersquo Kernel Density Estimation plot

rsquodensityrsquo same as rsquokdersquo

rsquoarearsquo area plot

rsquopiersquo pie plot

Per saperne di piu consultare questo link

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 43 88

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) SAD 20182019 January 12 2019 44 88

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) SAD 20182019 January 12 2019 45 88

Boxplot

Rappresenta la distribuzione di un vettore di numeri cerchiando gli outlier

gtgtgt weight = heroes[rsquoWeightrsquo]

gtgtgt weightplotbox()

gtgtgt pltshow()

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 46 88

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) SAD 20182019 January 12 2019 47 88

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) SAD 20182019 January 12 2019 48 88

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) SAD 20182019 January 12 2019 49 88

Esercizi - 1

Utilizzando il file capellicsv dai csv del laboratorio

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) SAD 20182019 January 12 2019 50 88

Esercizi - 2

Utilizzando il file dati-ospedalicsv dai csv del laboratorio

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 e canipdf

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 51 88

Sample space

Un esperimento e qualsiasi processo che produce una realizzazione (oosservazione) Lrsquoinsieme di tutte le possibili realizzazioni di un esperimentoviene detto sample space ed indicato con S

lancio di 2 monete

S = (T T ) (T C) (C T ) (C C)

gara di 3 cavalli (ab c)

S = tutti i possibili ordinamenti di(ab c)= (ab c) (a cb) (c b a)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 52 88

Eventi

lancio di 2 monete

S = (T T ) (T C) (C T ) (C C)

A = 2 monete uguali

A = (T T ) (C C)

B = 2 monete diverse

B = Ac = (T C) (C T )

gara di 3 cavalli

A = cavallo a vincente

A = (ab c) (a c b)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 53 88

Probabilita - 1

Consideriamo un esperimento con sample space S Supponiamo che adogni evento A sia associato un numero chiamato probabilita di A edindicato con P(A) che soddisfa le seguenti proprieta

1 Per ogni evento A la probabilita di A e un numero tra 0 e 1

0 le P(A) le 1

2 La probabilita del sample space S e 1

P(S) = 1

3 La probabilita dellrsquounione di eventi disgiunti e uguale alla somma delleprobabilita di tali eventi

P(A cupB) = P(A) + P(B)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 54 88

Probabilita - 2

In generale 2 eventi potrebbero non essere disgiunti

P(A cupB) = P(A) + P(B) minus P(A capB)

Esempio un certo negozio accetta pagamenti o con carte di credito VISAo Mastercard

1 22 dei clienti ha Mastercard

2 58 dei clienti ha VISA

3 14 dei clienti ha entrambe

Qual e la probabilita che un cliente ha almeno una delle 2 carte

P(A) = 022 P(B) = 058

P(A cupB) = P(A) + P(B) minus P(A capB) = 022 + 058 minus 014 = 066

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 55 88

Probabilita condizionata - 1

Se alcune informazioni riguardo lrsquoesito di un esperimento sono disponibiliparliamo di probabilita condizionata

Esempio lancio di 2 dadi

S = (11) (12) (65) (66)

Probabilita che la somma sia 10 (evento B) sapendo che il primo dadomostra 4 (evento A)

(41) (42) (43) (44) (45) (46)

P(B ∣A) = 16

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 56 88

Probabilita condizionata - 2

In generale

P(B ∣A) = P(A capB)P(A)

Supponiamo lrsquoesito sia in A

Per essere anche in B deve essere in entrambi A e B cioe in A capB

Sapendo che A e gia accaduto il nostro nuovo sample space diventa A

la probabilita di A capB viene calcolata rispetto ad A

Nel caso dei dadi

P(B ∣A) = P((46))P((41) (42) (43) (44) (45) (46)) = 136

16= 1

6

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 57 88

Indipendenza

In generale sapere che A e accaduto modifica le chance che B accadaNel caso cio non avvenga cioe se P(B ∣A) = P(B) allora i 2 eventi sidicono indipendenti In questo caso sapere che A e accaduto nonaggiunge alcuna informazione

SiccomeP(A capB) = P(B ∣A)P(A)

Abbiamo che B e indipendente da A se

P(A capB) = P(B)P(A)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 58 88

Esercizi - 1

1 Svolgere gli esercizi di combinatoria

2 Si consideri il seguente esperimento casuale rdquosi lancia tre volte unamonetardquo Qual e lo spazio degli esiti di questo esperimento casualeSi scriva esplicitamente lrsquoevento rdquosi ottengono piu teste che crocirdquo

3 Si consideri il seguente esperimento casuale rdquoSi tirano due dadirdquo Siconsiderino gli eventi E = rdquola somma dei punteggi e disparirdquo F = rdquoilprimo dado realizza un 1rdquo e G = rdquola somma dei punteggi e 5rdquo Sidescrivano gli eventi E cap F E cup F F capG E cap F c e E cap F capG

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 59 88

Esercizi - 2

4 Si consideri il seguente esperimento casuale rdquoUn sistema e compostoda 4 componenti ciascuno dei quali o funziona oppure e guasto Siosserva lo stato dei componenti ottenendo un vettore (x1 x2 x3 x4)dove xi e 1 oppure 0 a seconda che il componente i-esimo funzionioppure nordquo

1 Da quanti elementi e formato lo spazio degli esiti2 Il sistema nel suo insieme funziona fintantoche entrambi i componenti

1 e 2 oppure entrambi i componenti 3 e 4 funzionano Specifica tuttigli esiti dellrsquoevento il rdquosistema funzionardquo

3 Sia E lrsquoevento rdquoi componenti 1 e 3 sono guastirdquo Quanti esiti contiene

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 60 88

Esercizi - 3

5 Si dimostri che in uno spazio degli esiti Ω dotato di una probabilita Pper ogni evento E F sub Ω vale la disuguaglianza seguente

P(E cap F ) ge P(E) + P(F ) minus 1

6 Un gruppo di 5 bambini e 10 bambine e in fila in ordine casuale nelsenso che tutte le 15 possibili permutazioni si suppongonoequiprobabili

1 Qual e la probabilita che il quarto della fila sia un bambino2 E il dodicesimo3 Qual e la probabilita che un determinato bambino occupi la terza

posizione

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 61 88

Esercizi - 4

7 In un comune vi sono 5 alberghi Se 3 persone devono scegliere unalbergo in cui pernottare qual e la probabilita che finiscano tutte inalberghi differenti Che cosa stiamo assumendo senza dirloesplicitamente

8 La media del salario annuale di un gruppo di 100 lavoratori impiegatinellrsquoamministrazione di una grande azienda e di 130000 dollari conuna deviazione standard di 20000 dollari Se si prende una persona acaso da questo gruppo cosa possiamo dire sulla probabilita che il suosalario sia

1 tra i 90000 e i 170000 dollari2 superiore a 150000 dollari

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 62 88

Esercizi - 5

9 In una certa regione vi sono due ditte che producono forni amicroonde Quelli della fabbrica A sono difettosi con probabilita 005mentre quelli della fabbrica B con probabilita 001 Supponi di averacquistato due apparecchi prodotti dalla stessa ditta che puo essere laA o la B con probabilita del 50 Se il primo microonde e difettosoqual e la probabilita condizionata che sia difettoso anche il secondo

10 Hai chiesto ad un vicino di innaffiare una piantina delicata mentre seiin vacanza Pensi che senza acqua la piantina muoia con probabilita08 mentre se innaffiata questa probabilita si ridurrebbe a 015 Latua fiducia che il vicino si ricordi di innaffiarla e del 90

1 Qual e la probabilita che la pianta sia ancora viva al tuo ritorno2 Se fosse morta quale sarebbe la probabilita che il vicino si sia

dimenticato di innaffiarla

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 63 88

Esercizi - 6

11 Una compagnia di assicurazioni classifica i suoi clienti in tre fascebasso rischio medio rischio alto rischio Le sue statistiche indicanoche le probabilita che un cliente delle tre fasce abbia un incidenteentro un periodo di un anno sono rispettivamente 005 015 e 030Se il 20 dei clienti sono a basso rischio il 50 a medio rischio e il30 ad alto rischio che percentuale dei clienti avra mediamenteincidenti in un lasso di un anno Se un cliente non ha avuto incidentinel 1987 qual e la probabilita che appartenga a ciascuna delle trefasce

12 Se un votante scelto a caso e favorevole ad una certa riforma conprobabilita di 07 qual e la probabilita che su 10 votanti esattamente7 siano favorevoli

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 64 88

Variabili aleatorie

Una variabile aleatoria (o anche variabile aleatoria) e una variabile chepuo assumere valori diversi in dipendenza da qualche fenomeno aleatorio

fenomeno lancio di 2 dadivariabile aleatoria somma dei 2 dadi

fenomeno 3 lanci di una monetavariabile aleatoria numero di rdquotesterdquo complessivo

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 65 88

Funzione di Ripartizione

Sia X una variabile aleatoria Si chiama funzione di ripartizione di X lafunzione F che associa ad ogni numero reale a la probabilita che X siaminore o uguale ad a cioe P(X le a) = FX (a)

Nel caso della moneta (fair) lanciata 3 volte (X indica il numero di testecomplessivo)

FX (a) =

⎧⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎨⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎩

0 if a lt 0

18 per 0 le a lt 1

18 + 38 = 48 per 1 le a lt 2

48 + 38 = 78 per 2 le a lt 3

88 = 1 per a ge 3

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 66 88

Funzione di densita o di massa

Sia X una variabile aleatoria Si chiama funzione di densita di X lafunzione f che associa ad ogni numero reale a la probabilita che X siauguale ad a indicata con fX (a)

Nel caso della moneta (fair) lanciata 3 volte (X indica il numero di testecomplessivo)

fX (a) =

⎧⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎨⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎩

18 per a = 0

38 per a = 1

38 per a = 2

18 per a = 3

0 altrimenti

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 67 88

Valore Atteso

Chiamato anche media (expectation in inglese) e appunto una mediapesata dei possibili valori di una variabile aleatoria Il peso dato a ciascunvalore e la probabilita data a quello specifico valore

E[X ] =sumi

aiP(X = ai)

Esempio dado truccato

valore 6 con probabilita 712

valori da 1 a 5 con probabilita 112

La variabile aleatoria X indica la faccia risultante dal lancio di un dado

E[X ] = 1

12lowast 1 + 1

12lowast 2 + 1

12lowast 3 + 1

12lowast 4 + 1

12lowast 5 + 7

12lowast 6 = 475

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 68 88

Valore Atteso - Proprieta

Sia X una variabile aleatoria con valore atteso E[X ] Se c e una costanteallora anche cX e X + c sono variabili casuali In particolare valgono leseguenti proprieta

E[cX ] = cE[X ]E[X + c] = E[X ] + c

Sia Y una variabile aleatoria Allora

E[X +Y ] = E[X ] +E[Y ]se e solo se X e Y sono independenti

E[XY ] = E[X ]E[Y ]

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 69 88

Varianza

Ersquo il valore atteso del quadrato della differenza tra la variabile aleatoria e ilsuo valore atteso

Var(X ) = E[(X minusE[X ])2] = E[X 2] minus (E[X ])2

La radice quadrata viene detta deviazione standard di X

Esempio dado truccato

E[X 2] = 1

12lowast 12 + 1

12lowast 22 + 1

12lowast 32 + 1

12lowast 42 + 1

12lowast 52 + 7

12lowast 62 ≃ 255

Var(X ) = E[X 2] minus (E[X ])2 ≃ 255 minus 4752 ≃ 3

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 70 88

Varianza - proprieta

Sia X una variabile aleatoria e c una costante Allora valgono le seguentiproprieta

1 Var(cX ) = c2Var(X )

2 Var(X + c) = Var(X )

NOTA

Var(X +X ) ne Var(X ) +Var(X )

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 71 88

Covarianza

Siano X Y due variabili aleatorie con valore atteso rispettivamenteE[X ] = microX e E[Y ] = microY La covarianza e definita come segue

Cov(X Y ) = E[(X minus microX )(Y minus microY )] = = E[XY ] minus microXmicroY

Proprieta

1 Cov(X Y ) = Cov(Y X )2 Cov(X X ) = Var(X )3 Sia a una costante allora

Cov(aX Y ) = aCov(X Y )

4 Sia Z una variabile aleatoria allora

Cov(X + Z Y ) = Cov(X Y ) + Cov(Z Y )

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 72 88

Esercizi - 1

1 Consideriamo una variabile aleatoria X che puo assumere i valori 12o 3 Se sappiamo che

fX (1) = 1

3 fX (2) = 3

7

1 Quanto vale fX (3)2 Disegnare il grafico di questa funzione di massa3 Disegnare il grafico della relativa funzione di ripartizione

2 Dimostrare che se X1 e X2 hanno la stessa distribuzione allora

Cov(X1 +X2X1 minusX2) = 0

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 73 88

Esercizi - 2

3 La funzione di ripartizione di X e definita come segue

FX (x) =

⎧⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎨⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎩

0 per x le 0

x2 per 0 le x lt 1

23 per 1 le x lt 2

1112 per 2 le x lt 3

1 per x ge 3

Se ne tracci il graficoQuanto vale P(X gt 12)Quanto vale P(2 le X le 4)Quanto vale P(X le 3)Quanto vale P(X = 1)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 74 88

Esercizi - 3

4 Un tipo di prodotti vengono classificati a seconda dei loro difetti edella fabbrica che li ha prodotti Sia X1 il numero (1 o 2) dellafabbrica e sia X2 il numero di difetti per pezzo (che possono essere da0 a 3) di un prodotto scelto a caso tra la totalita di quelli esistentiLa tabella seguente riporta la funzione di massa di probabilitacongiunta per queste due variabili aleatorie discrete Le righe siriferiscono alla variabile X1 mentre le colonne alla variabile X2

Trova le distribuzioni marginali di X1 e X2Calcola media e varianza di X2

0 1 2 31 18 116 316 182 116 116 18 14

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 75 88

Scipy

Scipy e un modulo che permette di utilizzare varie distribuzioni diprobabilita sia di tipo discreto che continuo

La sintassi generale e la seguente Scipystatsltnome distribuzionegt

rvs(size=z) restituisce un vettore di numeri casuali estrattisecondo la distribuzione di lunghezza z

pdf(x) restituisce il vettore della densita della distribuzionevalutata nei valori del vettore di input x (pmf per le discrete)

cdf(x) restituisce il vettore della funzione di ripartizione (ocumulativa) della distribuzione valutata nei valori del vettore di inputx

ppf(q) restituisce il vettore dei quantili della distribuzione valutatanei valori del vettore di input q

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 76 88

Variabili aleatorie discrete Binomiale

gtgtgt from scipystats import binom

gtgtgt rv = binom(n p)

rvrvs(x) restituisce un vettore di x numeri estratti secondo unadistribuzione Binomiale di parametri n p

rvpmf(x) restituisce la probabilita di ottenere esattamente x

successi in un esperimento dicotomico (01) ripetuto n volte con unaprobabilita di successo p (x puo essere un vettore)

rvcdf(q) restituisce il valore della funzione di ripartizione in q (qpuo essere un vettore)

rvppf(p) restituisce il valore del quantile di ordine p

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 77 88

Variabili aleatorie discrete Ipergeometrica

Supponiamo di avere M = 20 animali di cui n = 7 cani Se vogliamosapere la probabilita di trovare un dato numero di cani se scegliamoN = 12 dei 20 animali in maniera casuale possiamo usare una distribuzioneipergeometrica in questo modo

gtgtgt from scipystats import hypergeom

gtgtgt [M n N] = [20 7 12]

gtgtgt rv = hypergeom(M n N)

rvpmf(x) restituisce la probabilita di estrarre esattamente x cani

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 78 88

Variabili aleatorie discrete Geometrica

gtgtgt from scipystats import geom

gtgtgt rv = geom(p)

rvpmf(x) restituisce la probabilita di avere un successo dopoesattamente x insuccessi in una successione di esperimenti dicotomici(esito 01) con una probabilita di successo p (x puo essere un vettore)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 79 88

Variabili aleatorie discrete Poisson

La distribuzione di Poisson viene usata spesso come modello per il numerodi volte per cui un evento avviene in un dato intervallo di tempo (ospazio) Ad esempio si puo utilizzare per misurare il numero di chiamatericevute da un call center in una mattinata

gtgtgt from scipystats import poisson

gtgtgt mu = 2

gtgtgt rv = poisson(mu)

rvpmf(x) restituisce il seguente valore

f (x) = exp(minusmicro)microx

x

In questo caso x rappresenta il numero di eventi per cui si vuole calcolarela probabilita sapendo che in media ne accadono micro

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 80 88

Variabili aleatorie continue Uniforme

In Scipy la funzione uniforme e soltanto continua Questo significa chenella generazione di numeri casuali otterro dati di tipo float Possiamotuttavia simulare una variabile discreta estraendo la parte intera delrisultato ottenuto

gtgtgt from scipystats import uniform

gtgtgt rv = uniform()

Il comando uniform() crea una distribuzione uniforme nellrsquointervallo[01] Possiamo creare una distribuzione uniforme qualsiasi usandouniform(x y - x) per lrsquointervallo [x y]

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 81 88

Variabili aleatorie continue

norm(mu sigma) variabile Gaussiana (o Normale) di media micro edeviazione standard σ

expon(scale = 1 lambda) variabile Esponenziale di parametroλ

Altre distribuzioni (con relativa documentazione) disponibili suhttpsdocsscipyorgdocscipyreferencestatshtml

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 82 88

Esercizi - 1

1 Unrsquourna contiene 10 palline di cui 4 bianche e 6 nere Si eseguono 5estrazioni con reimmissione

1 Tracciare grafico della funzione massa di probabilita della variabilecasuale X = rdquonumero di palline bianche estratterdquo

2 Calcolare la probabilita di estrarre 2 palline bianche3 Calcolare la probabilita di estrarre al piu 2 palline bianche4 Calcolare la probabilita di estrarre almeno 2 palline bianche5 Qual e il numero minimo x tale che la probabilita di estrarre al piu x

palline bianche sia almeno 08

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 83 88

Esercizi - 2

2 Si eseguono 10 estrazioni senza reimmissione da unrsquourna

1 Tracciare il grafico della funzione massa di probabilita della variabilecasuale X = rdquonumero di palline bianche estratterdquo nei seguenti casi

1 lrsquourna contiene 100 palline di cui 20 bianche e le restanti nere2 lrsquourna contiene 100 palline di cui 2 bianche e le restanti nere

2 Tracciare il grafico della funzione massa di probabilita della variabilecasuale X nel caso dellrsquourna 1 se si eseguono 25 estrazioni

3 Consideriamo lrsquourna 1 e N = 10 estrazioni Si aumenti il numero totaleM di palline nellrsquourna mantenendo uguale a 02 la frazione di pallinebianche Per ciascun valore di M confrontare graficamente ladistribuzione di probabilita del numero di palline bianche estratte nelcaso di estrazioni con e senza reimmissione Provare con 20 40 e 200palline bianche

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 84 88

Esercizi - 3

3 Calcolare la probabilita di ottenere piu teste che croci lanciando 7volte una moneta truccata con probabilita di avere croce pari a 045

4 Calcolare la probabilita di avere almeno 3 sei lanciando 5 dadi a 12facce

5 Calcolare la probabilita di estrarre 20 euro da un sacco contenente 47monete da 1 centesimo e 53 da 2 euro estraendo (uniformemente) acaso 10 monete senza reinserirle

6 Un grammo di uranio emette mediamente 2152 particelle α ognimillisecondo Qual e con buona approssimazione la probabilita che ungrammo di uranio emetta al piu 2000 particelle α in un millisecondo

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 85 88

Esercizi - 4

7 Un uomo si risveglia in mezzo al deserto senza acqua Dopo ogniminuto ha una probabilita del 3 di perdere conoscenza per via dellecondizioni estreme Calcolare la probabilita che lrsquouomo perdaconoscenza dopo almeno due ore e la probabilita che lrsquouomo perdaconoscenza dopo esattamente un quarto drsquoora

8 Sia X una variabile aleatoria normale di parametri micro = 10 e σ = 36Calcola

1 P(X gt 5)2 P(4 le X le 16)3 P(X le 8)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 86 88

Esercizi - 5

9 Il numero di errori tipografici per pagina di una certa rivista segue unadistribuzione di Poisson Sapendo che mediamente sono presenti 02errori per pagina determinare la probabilita che una pagina contenga

1 nessun refuso2 piu refusi

10 Arrivi alla fermata dellrsquoautobus alle 1000 e sei certo che ne passerauno in un momento distribuito uniformemente tra le 1000 e le 1030

1 Qual e la probabilita che tu debba aspettare piu di 10 minuti2 Se alle 1015 lrsquoautobus non e ancora arrivato qual e la probabilita che

tu debba aspettare almeno altri 10 minuti

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 87 88

Esercizi - 6

11 Il signor Jones e convinto che il tempo di vita di una automobile (inmigliaia di chilometri percorse) sia una variabile aleatoria esponenzialedi parametro 120 Il signor Smith ha una macchina usata da vendereche ha percorso circa 10 000 chilometri

1 Se il signor Jones decide di comprarla che probabilita ha di farle farealmeno altri 20 000 chilometri prima che sia da buttare

2 Il modello assunto dal signor Jones e ragionevole

12 Sia X una variabile casuale binomiale di parametri n = 100 e p = 07

1 Tracciate la funzione di ripartizione di X2 Calcolate il primo quartile il quantile di ordine 09 e la mediana di X3 Calcolare la probabilita P(X le 60)4 Calcolare la probabilita P(X le 88)5 Trovare il piu piccolo valore x tale che P(X le x) ge 09

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 88 88

  • Lezione 1
    • Script in Python
    • Numpy
    • Esercizi
    • Pandas
    • Esercizi
      • Lezione 2
        • File csv
        • DataFrame
        • Accesso ai DataFrame
        • Frequenze
        • Esercizi
          • Lezione 3
            • Matplotlib
            • Grafici a Barre
            • Istogrammi
            • Cumulativa empirica
            • Boxplot
            • QQplot
            • Diagramma di Pareto
            • Esercizi
              • Lezione 4
                • Definizioni
                • Probabilitagrave condizionata
                • Indipendenza
                • Esercizi
                  • Lezione 5
                    • Variabili Aleatorie
                    • Funzione di Ripartizione
                    • Funzione di Densitagrave
                    • Valore Atteso
                    • Varianza
                    • Covarianza
                    • Esercizi
                      • Lezione 6
                        • Scipy - Variabili Discrete
                        • Scipy - Variabili continue
                        • Esercizi

Accesso colonne DataFrame - 1

Per conoscere le colonne di un DataFrame possiamo invocare il comandodfcolumns dove df e la variabile in cui abbiamo instanziato ilDataFramePer accedere ad una colonna dobbiamo specificarne il nome nel seguentemodo

gtgtgt df film[rsquogenerersquo]

titolo

Il padrino Drammatico

Pulp Fiction Drammatico

Fight Club Thriller

Selezionando unrsquounica colonna in output viene restituita una Series

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 28 88

Accesso colonne DataFrame - 2

Possiamo accedere allo stesso tempo a piu colonne

gtgtgt df film[[rsquopaesersquorsquoannorsquo]]

titolo paese anno

Il padrino USA 19720

Pulp Fiction USA 19940

Fight Club USA 19990

Selezionando piu colonne in output viene restituito un DataFrame

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 29 88

Accesso righe DataFrame - 1

Per indice numerico

gtgtgt df film[1518]

titolo paese anno durata genere voto

Il padrino USA 19720 1750 Drammatico 45

Pulp Fiction USA 19940 1540 Drammatico 40

Fight Club USA 19990 1390 Thriller 40

Quasi Amici FRA 20110 1120 Commedia 35

Per valore dellrsquoindice (assumiamo che titolo sia lrsquoindice delDataFrame)

gtgtgt df film[rsquoIl padrinorsquorsquoFight Clubrsquo]

titolo paese anno durata genere voto

Il padrino USA 19720 1750 Drammatico 45

Pulp Fiction USA 19940 1540 Drammatico 40

Fight Club USA 19990 1390 Thriller 40

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 30 88

loc amp iloc

Cosı come per le Series anche con i DataFrame possiamo usare loc ediloc per lrsquoaccesso ai dati

loc[rsquonome indicersquo] permette lrsquoaccesso ad una riga o piu righetramite nome dellrsquoindice

iloc[rsquoposizionersquo] permette lrsquoaccesso ad una o piu righe tramitela loro posizione

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 31 88

Accesso tramite unrsquoespressione logica

gtgtgt df film[rsquoannorsquo gt 1998]

titolo

Il padrino False

Pulp Fiction False

Fight Club True

Quasi Amici True

gtgtgt df film[df film[rsquoannorsquo] gt 1998]

titolo paese anno durata genere voto

Fight Club USA 19990 1390 Thriller 40

Quasi Amici FRA 20110 1120 Commedia 35

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 32 88

Metodi dei DataFrame

La classe DataFrame ha diversi metodi Elenchiamo qui i piu importanti

DataFrameappend() permette di estendere il DataFrame

DataFramedrop duplicates() restituisce un DataFrame senza righeduplicate

DataFramedropna() Eliminare i valori Nan da un DataFrame

DataFramesort values() permette di ordinare il DataFrame

DataFramemax() DataFramemin() DataFramemean()DataFramemedian()

Per la completa documentazione si puo utilizzare il comandohelp(pdDataFrame) oppure andare al seguente linkhttpspandaspydataorgpandas-docsstablegenerated

pandasDataFramehtml

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 33 88

Frequenze

La frequenza assoluta indica il numero di volte che una dataosservazione occorre in un campione

La frequenza relativa e un valore tra 0 e 1 che permette di valutare inmaniera piu efficace la frequenza di un osservazione Si calcoladividendo la frequenza assoluta per il numero totale di casi

Per calcolare questa quantita in Pandas possiamo utilizzare la funzionevalue counts() che opera su una Series

In alternativa si puo utilizzare la funzione pdcrosstab che calcolaqueste frequenze in automatico restituendole in output in un DataFrame

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 34 88

Esercizi

Utilizzando il file dati-ospedalicsv dai csv del laboratorio

1 Leggere il file e visualizzarlo in un DataFrame

2 Calcolare le frequenze assolute e relative dellrsquoattributo Regioneusando crosstab

3 Ottenere la singola serie relativa allrsquoattributo Regione e calcolarne lafrequenza assoluta e relativa senza usare crosstab

4 Estrarre un sottodataframe contenente le colonne Nome (attributoDenominazione Str Pubblica New) e Numero di medici (attributoMedici SSN) degli ospedali aventi meno di 200 medici

5 Visualizzare il nome degli ospedali della regione Lombardia

6 Calcolare il numero medio di ingegneri (Ingegneri SSN) presenti negliospedali campani

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 35 88

Esercizi

7 Calcolare la varianza del numero di assistenti sociali (Assistenti socialiSSN) negli ospedali con piu di 400 medici

8 Qual e lrsquoospedale con meno medici

9 Visualizzare in ordine alfabetico il nome dei primi 10 ospedali pernumero di medici

10 Visualizzare il numero degli ospedali che hanno dichiarato il numerodi odontoiatri (per cui il valore e diverso da NaN) (OdontoiatriUniversitari)

11 Visualizzare il numero degli ospedali che hanno dichiarato il numerodi odontoiatri (Odontoiatri Universitari) e per cui questo numero emaggiore di 0

12 Calcolare le frequenze assolute per lrsquoattributo Odontoiatri SSNTrasformare questo risultato in frequenze relative

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 36 88

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) SAD 20182019 January 12 2019 37 88

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) SAD 20182019 January 12 2019 38 88

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) SAD 20182019 January 12 2019 39 88

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) SAD 20182019 January 12 2019 40 88

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) SAD 20182019 January 12 2019 41 88

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) SAD 20182019 January 12 2019 42 88

Grafici con le Series

In generale possiamo tracciare diversi tipi di grafici con le Series

rsquolinersquo line plot (default)

rsquobarrsquo vertical bar plot

rsquobarhrsquo horizontal bar plot

rsquohistrsquo histogram

rsquoboxrsquo boxplot

rsquokdersquo Kernel Density Estimation plot

rsquodensityrsquo same as rsquokdersquo

rsquoarearsquo area plot

rsquopiersquo pie plot

Per saperne di piu consultare questo link

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 43 88

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) SAD 20182019 January 12 2019 44 88

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) SAD 20182019 January 12 2019 45 88

Boxplot

Rappresenta la distribuzione di un vettore di numeri cerchiando gli outlier

gtgtgt weight = heroes[rsquoWeightrsquo]

gtgtgt weightplotbox()

gtgtgt pltshow()

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 46 88

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) SAD 20182019 January 12 2019 47 88

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) SAD 20182019 January 12 2019 48 88

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) SAD 20182019 January 12 2019 49 88

Esercizi - 1

Utilizzando il file capellicsv dai csv del laboratorio

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) SAD 20182019 January 12 2019 50 88

Esercizi - 2

Utilizzando il file dati-ospedalicsv dai csv del laboratorio

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 e canipdf

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 51 88

Sample space

Un esperimento e qualsiasi processo che produce una realizzazione (oosservazione) Lrsquoinsieme di tutte le possibili realizzazioni di un esperimentoviene detto sample space ed indicato con S

lancio di 2 monete

S = (T T ) (T C) (C T ) (C C)

gara di 3 cavalli (ab c)

S = tutti i possibili ordinamenti di(ab c)= (ab c) (a cb) (c b a)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 52 88

Eventi

lancio di 2 monete

S = (T T ) (T C) (C T ) (C C)

A = 2 monete uguali

A = (T T ) (C C)

B = 2 monete diverse

B = Ac = (T C) (C T )

gara di 3 cavalli

A = cavallo a vincente

A = (ab c) (a c b)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 53 88

Probabilita - 1

Consideriamo un esperimento con sample space S Supponiamo che adogni evento A sia associato un numero chiamato probabilita di A edindicato con P(A) che soddisfa le seguenti proprieta

1 Per ogni evento A la probabilita di A e un numero tra 0 e 1

0 le P(A) le 1

2 La probabilita del sample space S e 1

P(S) = 1

3 La probabilita dellrsquounione di eventi disgiunti e uguale alla somma delleprobabilita di tali eventi

P(A cupB) = P(A) + P(B)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 54 88

Probabilita - 2

In generale 2 eventi potrebbero non essere disgiunti

P(A cupB) = P(A) + P(B) minus P(A capB)

Esempio un certo negozio accetta pagamenti o con carte di credito VISAo Mastercard

1 22 dei clienti ha Mastercard

2 58 dei clienti ha VISA

3 14 dei clienti ha entrambe

Qual e la probabilita che un cliente ha almeno una delle 2 carte

P(A) = 022 P(B) = 058

P(A cupB) = P(A) + P(B) minus P(A capB) = 022 + 058 minus 014 = 066

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 55 88

Probabilita condizionata - 1

Se alcune informazioni riguardo lrsquoesito di un esperimento sono disponibiliparliamo di probabilita condizionata

Esempio lancio di 2 dadi

S = (11) (12) (65) (66)

Probabilita che la somma sia 10 (evento B) sapendo che il primo dadomostra 4 (evento A)

(41) (42) (43) (44) (45) (46)

P(B ∣A) = 16

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 56 88

Probabilita condizionata - 2

In generale

P(B ∣A) = P(A capB)P(A)

Supponiamo lrsquoesito sia in A

Per essere anche in B deve essere in entrambi A e B cioe in A capB

Sapendo che A e gia accaduto il nostro nuovo sample space diventa A

la probabilita di A capB viene calcolata rispetto ad A

Nel caso dei dadi

P(B ∣A) = P((46))P((41) (42) (43) (44) (45) (46)) = 136

16= 1

6

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 57 88

Indipendenza

In generale sapere che A e accaduto modifica le chance che B accadaNel caso cio non avvenga cioe se P(B ∣A) = P(B) allora i 2 eventi sidicono indipendenti In questo caso sapere che A e accaduto nonaggiunge alcuna informazione

SiccomeP(A capB) = P(B ∣A)P(A)

Abbiamo che B e indipendente da A se

P(A capB) = P(B)P(A)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 58 88

Esercizi - 1

1 Svolgere gli esercizi di combinatoria

2 Si consideri il seguente esperimento casuale rdquosi lancia tre volte unamonetardquo Qual e lo spazio degli esiti di questo esperimento casualeSi scriva esplicitamente lrsquoevento rdquosi ottengono piu teste che crocirdquo

3 Si consideri il seguente esperimento casuale rdquoSi tirano due dadirdquo Siconsiderino gli eventi E = rdquola somma dei punteggi e disparirdquo F = rdquoilprimo dado realizza un 1rdquo e G = rdquola somma dei punteggi e 5rdquo Sidescrivano gli eventi E cap F E cup F F capG E cap F c e E cap F capG

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 59 88

Esercizi - 2

4 Si consideri il seguente esperimento casuale rdquoUn sistema e compostoda 4 componenti ciascuno dei quali o funziona oppure e guasto Siosserva lo stato dei componenti ottenendo un vettore (x1 x2 x3 x4)dove xi e 1 oppure 0 a seconda che il componente i-esimo funzionioppure nordquo

1 Da quanti elementi e formato lo spazio degli esiti2 Il sistema nel suo insieme funziona fintantoche entrambi i componenti

1 e 2 oppure entrambi i componenti 3 e 4 funzionano Specifica tuttigli esiti dellrsquoevento il rdquosistema funzionardquo

3 Sia E lrsquoevento rdquoi componenti 1 e 3 sono guastirdquo Quanti esiti contiene

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 60 88

Esercizi - 3

5 Si dimostri che in uno spazio degli esiti Ω dotato di una probabilita Pper ogni evento E F sub Ω vale la disuguaglianza seguente

P(E cap F ) ge P(E) + P(F ) minus 1

6 Un gruppo di 5 bambini e 10 bambine e in fila in ordine casuale nelsenso che tutte le 15 possibili permutazioni si suppongonoequiprobabili

1 Qual e la probabilita che il quarto della fila sia un bambino2 E il dodicesimo3 Qual e la probabilita che un determinato bambino occupi la terza

posizione

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 61 88

Esercizi - 4

7 In un comune vi sono 5 alberghi Se 3 persone devono scegliere unalbergo in cui pernottare qual e la probabilita che finiscano tutte inalberghi differenti Che cosa stiamo assumendo senza dirloesplicitamente

8 La media del salario annuale di un gruppo di 100 lavoratori impiegatinellrsquoamministrazione di una grande azienda e di 130000 dollari conuna deviazione standard di 20000 dollari Se si prende una persona acaso da questo gruppo cosa possiamo dire sulla probabilita che il suosalario sia

1 tra i 90000 e i 170000 dollari2 superiore a 150000 dollari

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 62 88

Esercizi - 5

9 In una certa regione vi sono due ditte che producono forni amicroonde Quelli della fabbrica A sono difettosi con probabilita 005mentre quelli della fabbrica B con probabilita 001 Supponi di averacquistato due apparecchi prodotti dalla stessa ditta che puo essere laA o la B con probabilita del 50 Se il primo microonde e difettosoqual e la probabilita condizionata che sia difettoso anche il secondo

10 Hai chiesto ad un vicino di innaffiare una piantina delicata mentre seiin vacanza Pensi che senza acqua la piantina muoia con probabilita08 mentre se innaffiata questa probabilita si ridurrebbe a 015 Latua fiducia che il vicino si ricordi di innaffiarla e del 90

1 Qual e la probabilita che la pianta sia ancora viva al tuo ritorno2 Se fosse morta quale sarebbe la probabilita che il vicino si sia

dimenticato di innaffiarla

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 63 88

Esercizi - 6

11 Una compagnia di assicurazioni classifica i suoi clienti in tre fascebasso rischio medio rischio alto rischio Le sue statistiche indicanoche le probabilita che un cliente delle tre fasce abbia un incidenteentro un periodo di un anno sono rispettivamente 005 015 e 030Se il 20 dei clienti sono a basso rischio il 50 a medio rischio e il30 ad alto rischio che percentuale dei clienti avra mediamenteincidenti in un lasso di un anno Se un cliente non ha avuto incidentinel 1987 qual e la probabilita che appartenga a ciascuna delle trefasce

12 Se un votante scelto a caso e favorevole ad una certa riforma conprobabilita di 07 qual e la probabilita che su 10 votanti esattamente7 siano favorevoli

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 64 88

Variabili aleatorie

Una variabile aleatoria (o anche variabile aleatoria) e una variabile chepuo assumere valori diversi in dipendenza da qualche fenomeno aleatorio

fenomeno lancio di 2 dadivariabile aleatoria somma dei 2 dadi

fenomeno 3 lanci di una monetavariabile aleatoria numero di rdquotesterdquo complessivo

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 65 88

Funzione di Ripartizione

Sia X una variabile aleatoria Si chiama funzione di ripartizione di X lafunzione F che associa ad ogni numero reale a la probabilita che X siaminore o uguale ad a cioe P(X le a) = FX (a)

Nel caso della moneta (fair) lanciata 3 volte (X indica il numero di testecomplessivo)

FX (a) =

⎧⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎨⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎩

0 if a lt 0

18 per 0 le a lt 1

18 + 38 = 48 per 1 le a lt 2

48 + 38 = 78 per 2 le a lt 3

88 = 1 per a ge 3

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 66 88

Funzione di densita o di massa

Sia X una variabile aleatoria Si chiama funzione di densita di X lafunzione f che associa ad ogni numero reale a la probabilita che X siauguale ad a indicata con fX (a)

Nel caso della moneta (fair) lanciata 3 volte (X indica il numero di testecomplessivo)

fX (a) =

⎧⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎨⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎩

18 per a = 0

38 per a = 1

38 per a = 2

18 per a = 3

0 altrimenti

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 67 88

Valore Atteso

Chiamato anche media (expectation in inglese) e appunto una mediapesata dei possibili valori di una variabile aleatoria Il peso dato a ciascunvalore e la probabilita data a quello specifico valore

E[X ] =sumi

aiP(X = ai)

Esempio dado truccato

valore 6 con probabilita 712

valori da 1 a 5 con probabilita 112

La variabile aleatoria X indica la faccia risultante dal lancio di un dado

E[X ] = 1

12lowast 1 + 1

12lowast 2 + 1

12lowast 3 + 1

12lowast 4 + 1

12lowast 5 + 7

12lowast 6 = 475

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 68 88

Valore Atteso - Proprieta

Sia X una variabile aleatoria con valore atteso E[X ] Se c e una costanteallora anche cX e X + c sono variabili casuali In particolare valgono leseguenti proprieta

E[cX ] = cE[X ]E[X + c] = E[X ] + c

Sia Y una variabile aleatoria Allora

E[X +Y ] = E[X ] +E[Y ]se e solo se X e Y sono independenti

E[XY ] = E[X ]E[Y ]

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 69 88

Varianza

Ersquo il valore atteso del quadrato della differenza tra la variabile aleatoria e ilsuo valore atteso

Var(X ) = E[(X minusE[X ])2] = E[X 2] minus (E[X ])2

La radice quadrata viene detta deviazione standard di X

Esempio dado truccato

E[X 2] = 1

12lowast 12 + 1

12lowast 22 + 1

12lowast 32 + 1

12lowast 42 + 1

12lowast 52 + 7

12lowast 62 ≃ 255

Var(X ) = E[X 2] minus (E[X ])2 ≃ 255 minus 4752 ≃ 3

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 70 88

Varianza - proprieta

Sia X una variabile aleatoria e c una costante Allora valgono le seguentiproprieta

1 Var(cX ) = c2Var(X )

2 Var(X + c) = Var(X )

NOTA

Var(X +X ) ne Var(X ) +Var(X )

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 71 88

Covarianza

Siano X Y due variabili aleatorie con valore atteso rispettivamenteE[X ] = microX e E[Y ] = microY La covarianza e definita come segue

Cov(X Y ) = E[(X minus microX )(Y minus microY )] = = E[XY ] minus microXmicroY

Proprieta

1 Cov(X Y ) = Cov(Y X )2 Cov(X X ) = Var(X )3 Sia a una costante allora

Cov(aX Y ) = aCov(X Y )

4 Sia Z una variabile aleatoria allora

Cov(X + Z Y ) = Cov(X Y ) + Cov(Z Y )

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 72 88

Esercizi - 1

1 Consideriamo una variabile aleatoria X che puo assumere i valori 12o 3 Se sappiamo che

fX (1) = 1

3 fX (2) = 3

7

1 Quanto vale fX (3)2 Disegnare il grafico di questa funzione di massa3 Disegnare il grafico della relativa funzione di ripartizione

2 Dimostrare che se X1 e X2 hanno la stessa distribuzione allora

Cov(X1 +X2X1 minusX2) = 0

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 73 88

Esercizi - 2

3 La funzione di ripartizione di X e definita come segue

FX (x) =

⎧⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎨⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎩

0 per x le 0

x2 per 0 le x lt 1

23 per 1 le x lt 2

1112 per 2 le x lt 3

1 per x ge 3

Se ne tracci il graficoQuanto vale P(X gt 12)Quanto vale P(2 le X le 4)Quanto vale P(X le 3)Quanto vale P(X = 1)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 74 88

Esercizi - 3

4 Un tipo di prodotti vengono classificati a seconda dei loro difetti edella fabbrica che li ha prodotti Sia X1 il numero (1 o 2) dellafabbrica e sia X2 il numero di difetti per pezzo (che possono essere da0 a 3) di un prodotto scelto a caso tra la totalita di quelli esistentiLa tabella seguente riporta la funzione di massa di probabilitacongiunta per queste due variabili aleatorie discrete Le righe siriferiscono alla variabile X1 mentre le colonne alla variabile X2

Trova le distribuzioni marginali di X1 e X2Calcola media e varianza di X2

0 1 2 31 18 116 316 182 116 116 18 14

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 75 88

Scipy

Scipy e un modulo che permette di utilizzare varie distribuzioni diprobabilita sia di tipo discreto che continuo

La sintassi generale e la seguente Scipystatsltnome distribuzionegt

rvs(size=z) restituisce un vettore di numeri casuali estrattisecondo la distribuzione di lunghezza z

pdf(x) restituisce il vettore della densita della distribuzionevalutata nei valori del vettore di input x (pmf per le discrete)

cdf(x) restituisce il vettore della funzione di ripartizione (ocumulativa) della distribuzione valutata nei valori del vettore di inputx

ppf(q) restituisce il vettore dei quantili della distribuzione valutatanei valori del vettore di input q

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 76 88

Variabili aleatorie discrete Binomiale

gtgtgt from scipystats import binom

gtgtgt rv = binom(n p)

rvrvs(x) restituisce un vettore di x numeri estratti secondo unadistribuzione Binomiale di parametri n p

rvpmf(x) restituisce la probabilita di ottenere esattamente x

successi in un esperimento dicotomico (01) ripetuto n volte con unaprobabilita di successo p (x puo essere un vettore)

rvcdf(q) restituisce il valore della funzione di ripartizione in q (qpuo essere un vettore)

rvppf(p) restituisce il valore del quantile di ordine p

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 77 88

Variabili aleatorie discrete Ipergeometrica

Supponiamo di avere M = 20 animali di cui n = 7 cani Se vogliamosapere la probabilita di trovare un dato numero di cani se scegliamoN = 12 dei 20 animali in maniera casuale possiamo usare una distribuzioneipergeometrica in questo modo

gtgtgt from scipystats import hypergeom

gtgtgt [M n N] = [20 7 12]

gtgtgt rv = hypergeom(M n N)

rvpmf(x) restituisce la probabilita di estrarre esattamente x cani

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 78 88

Variabili aleatorie discrete Geometrica

gtgtgt from scipystats import geom

gtgtgt rv = geom(p)

rvpmf(x) restituisce la probabilita di avere un successo dopoesattamente x insuccessi in una successione di esperimenti dicotomici(esito 01) con una probabilita di successo p (x puo essere un vettore)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 79 88

Variabili aleatorie discrete Poisson

La distribuzione di Poisson viene usata spesso come modello per il numerodi volte per cui un evento avviene in un dato intervallo di tempo (ospazio) Ad esempio si puo utilizzare per misurare il numero di chiamatericevute da un call center in una mattinata

gtgtgt from scipystats import poisson

gtgtgt mu = 2

gtgtgt rv = poisson(mu)

rvpmf(x) restituisce il seguente valore

f (x) = exp(minusmicro)microx

x

In questo caso x rappresenta il numero di eventi per cui si vuole calcolarela probabilita sapendo che in media ne accadono micro

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 80 88

Variabili aleatorie continue Uniforme

In Scipy la funzione uniforme e soltanto continua Questo significa chenella generazione di numeri casuali otterro dati di tipo float Possiamotuttavia simulare una variabile discreta estraendo la parte intera delrisultato ottenuto

gtgtgt from scipystats import uniform

gtgtgt rv = uniform()

Il comando uniform() crea una distribuzione uniforme nellrsquointervallo[01] Possiamo creare una distribuzione uniforme qualsiasi usandouniform(x y - x) per lrsquointervallo [x y]

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 81 88

Variabili aleatorie continue

norm(mu sigma) variabile Gaussiana (o Normale) di media micro edeviazione standard σ

expon(scale = 1 lambda) variabile Esponenziale di parametroλ

Altre distribuzioni (con relativa documentazione) disponibili suhttpsdocsscipyorgdocscipyreferencestatshtml

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 82 88

Esercizi - 1

1 Unrsquourna contiene 10 palline di cui 4 bianche e 6 nere Si eseguono 5estrazioni con reimmissione

1 Tracciare grafico della funzione massa di probabilita della variabilecasuale X = rdquonumero di palline bianche estratterdquo

2 Calcolare la probabilita di estrarre 2 palline bianche3 Calcolare la probabilita di estrarre al piu 2 palline bianche4 Calcolare la probabilita di estrarre almeno 2 palline bianche5 Qual e il numero minimo x tale che la probabilita di estrarre al piu x

palline bianche sia almeno 08

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 83 88

Esercizi - 2

2 Si eseguono 10 estrazioni senza reimmissione da unrsquourna

1 Tracciare il grafico della funzione massa di probabilita della variabilecasuale X = rdquonumero di palline bianche estratterdquo nei seguenti casi

1 lrsquourna contiene 100 palline di cui 20 bianche e le restanti nere2 lrsquourna contiene 100 palline di cui 2 bianche e le restanti nere

2 Tracciare il grafico della funzione massa di probabilita della variabilecasuale X nel caso dellrsquourna 1 se si eseguono 25 estrazioni

3 Consideriamo lrsquourna 1 e N = 10 estrazioni Si aumenti il numero totaleM di palline nellrsquourna mantenendo uguale a 02 la frazione di pallinebianche Per ciascun valore di M confrontare graficamente ladistribuzione di probabilita del numero di palline bianche estratte nelcaso di estrazioni con e senza reimmissione Provare con 20 40 e 200palline bianche

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 84 88

Esercizi - 3

3 Calcolare la probabilita di ottenere piu teste che croci lanciando 7volte una moneta truccata con probabilita di avere croce pari a 045

4 Calcolare la probabilita di avere almeno 3 sei lanciando 5 dadi a 12facce

5 Calcolare la probabilita di estrarre 20 euro da un sacco contenente 47monete da 1 centesimo e 53 da 2 euro estraendo (uniformemente) acaso 10 monete senza reinserirle

6 Un grammo di uranio emette mediamente 2152 particelle α ognimillisecondo Qual e con buona approssimazione la probabilita che ungrammo di uranio emetta al piu 2000 particelle α in un millisecondo

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 85 88

Esercizi - 4

7 Un uomo si risveglia in mezzo al deserto senza acqua Dopo ogniminuto ha una probabilita del 3 di perdere conoscenza per via dellecondizioni estreme Calcolare la probabilita che lrsquouomo perdaconoscenza dopo almeno due ore e la probabilita che lrsquouomo perdaconoscenza dopo esattamente un quarto drsquoora

8 Sia X una variabile aleatoria normale di parametri micro = 10 e σ = 36Calcola

1 P(X gt 5)2 P(4 le X le 16)3 P(X le 8)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 86 88

Esercizi - 5

9 Il numero di errori tipografici per pagina di una certa rivista segue unadistribuzione di Poisson Sapendo che mediamente sono presenti 02errori per pagina determinare la probabilita che una pagina contenga

1 nessun refuso2 piu refusi

10 Arrivi alla fermata dellrsquoautobus alle 1000 e sei certo che ne passerauno in un momento distribuito uniformemente tra le 1000 e le 1030

1 Qual e la probabilita che tu debba aspettare piu di 10 minuti2 Se alle 1015 lrsquoautobus non e ancora arrivato qual e la probabilita che

tu debba aspettare almeno altri 10 minuti

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 87 88

Esercizi - 6

11 Il signor Jones e convinto che il tempo di vita di una automobile (inmigliaia di chilometri percorse) sia una variabile aleatoria esponenzialedi parametro 120 Il signor Smith ha una macchina usata da vendereche ha percorso circa 10 000 chilometri

1 Se il signor Jones decide di comprarla che probabilita ha di farle farealmeno altri 20 000 chilometri prima che sia da buttare

2 Il modello assunto dal signor Jones e ragionevole

12 Sia X una variabile casuale binomiale di parametri n = 100 e p = 07

1 Tracciate la funzione di ripartizione di X2 Calcolate il primo quartile il quantile di ordine 09 e la mediana di X3 Calcolare la probabilita P(X le 60)4 Calcolare la probabilita P(X le 88)5 Trovare il piu piccolo valore x tale che P(X le x) ge 09

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 88 88

  • Lezione 1
    • Script in Python
    • Numpy
    • Esercizi
    • Pandas
    • Esercizi
      • Lezione 2
        • File csv
        • DataFrame
        • Accesso ai DataFrame
        • Frequenze
        • Esercizi
          • Lezione 3
            • Matplotlib
            • Grafici a Barre
            • Istogrammi
            • Cumulativa empirica
            • Boxplot
            • QQplot
            • Diagramma di Pareto
            • Esercizi
              • Lezione 4
                • Definizioni
                • Probabilitagrave condizionata
                • Indipendenza
                • Esercizi
                  • Lezione 5
                    • Variabili Aleatorie
                    • Funzione di Ripartizione
                    • Funzione di Densitagrave
                    • Valore Atteso
                    • Varianza
                    • Covarianza
                    • Esercizi
                      • Lezione 6
                        • Scipy - Variabili Discrete
                        • Scipy - Variabili continue
                        • Esercizi

Accesso colonne DataFrame - 2

Possiamo accedere allo stesso tempo a piu colonne

gtgtgt df film[[rsquopaesersquorsquoannorsquo]]

titolo paese anno

Il padrino USA 19720

Pulp Fiction USA 19940

Fight Club USA 19990

Selezionando piu colonne in output viene restituito un DataFrame

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 29 88

Accesso righe DataFrame - 1

Per indice numerico

gtgtgt df film[1518]

titolo paese anno durata genere voto

Il padrino USA 19720 1750 Drammatico 45

Pulp Fiction USA 19940 1540 Drammatico 40

Fight Club USA 19990 1390 Thriller 40

Quasi Amici FRA 20110 1120 Commedia 35

Per valore dellrsquoindice (assumiamo che titolo sia lrsquoindice delDataFrame)

gtgtgt df film[rsquoIl padrinorsquorsquoFight Clubrsquo]

titolo paese anno durata genere voto

Il padrino USA 19720 1750 Drammatico 45

Pulp Fiction USA 19940 1540 Drammatico 40

Fight Club USA 19990 1390 Thriller 40

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 30 88

loc amp iloc

Cosı come per le Series anche con i DataFrame possiamo usare loc ediloc per lrsquoaccesso ai dati

loc[rsquonome indicersquo] permette lrsquoaccesso ad una riga o piu righetramite nome dellrsquoindice

iloc[rsquoposizionersquo] permette lrsquoaccesso ad una o piu righe tramitela loro posizione

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 31 88

Accesso tramite unrsquoespressione logica

gtgtgt df film[rsquoannorsquo gt 1998]

titolo

Il padrino False

Pulp Fiction False

Fight Club True

Quasi Amici True

gtgtgt df film[df film[rsquoannorsquo] gt 1998]

titolo paese anno durata genere voto

Fight Club USA 19990 1390 Thriller 40

Quasi Amici FRA 20110 1120 Commedia 35

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 32 88

Metodi dei DataFrame

La classe DataFrame ha diversi metodi Elenchiamo qui i piu importanti

DataFrameappend() permette di estendere il DataFrame

DataFramedrop duplicates() restituisce un DataFrame senza righeduplicate

DataFramedropna() Eliminare i valori Nan da un DataFrame

DataFramesort values() permette di ordinare il DataFrame

DataFramemax() DataFramemin() DataFramemean()DataFramemedian()

Per la completa documentazione si puo utilizzare il comandohelp(pdDataFrame) oppure andare al seguente linkhttpspandaspydataorgpandas-docsstablegenerated

pandasDataFramehtml

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 33 88

Frequenze

La frequenza assoluta indica il numero di volte che una dataosservazione occorre in un campione

La frequenza relativa e un valore tra 0 e 1 che permette di valutare inmaniera piu efficace la frequenza di un osservazione Si calcoladividendo la frequenza assoluta per il numero totale di casi

Per calcolare questa quantita in Pandas possiamo utilizzare la funzionevalue counts() che opera su una Series

In alternativa si puo utilizzare la funzione pdcrosstab che calcolaqueste frequenze in automatico restituendole in output in un DataFrame

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 34 88

Esercizi

Utilizzando il file dati-ospedalicsv dai csv del laboratorio

1 Leggere il file e visualizzarlo in un DataFrame

2 Calcolare le frequenze assolute e relative dellrsquoattributo Regioneusando crosstab

3 Ottenere la singola serie relativa allrsquoattributo Regione e calcolarne lafrequenza assoluta e relativa senza usare crosstab

4 Estrarre un sottodataframe contenente le colonne Nome (attributoDenominazione Str Pubblica New) e Numero di medici (attributoMedici SSN) degli ospedali aventi meno di 200 medici

5 Visualizzare il nome degli ospedali della regione Lombardia

6 Calcolare il numero medio di ingegneri (Ingegneri SSN) presenti negliospedali campani

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 35 88

Esercizi

7 Calcolare la varianza del numero di assistenti sociali (Assistenti socialiSSN) negli ospedali con piu di 400 medici

8 Qual e lrsquoospedale con meno medici

9 Visualizzare in ordine alfabetico il nome dei primi 10 ospedali pernumero di medici

10 Visualizzare il numero degli ospedali che hanno dichiarato il numerodi odontoiatri (per cui il valore e diverso da NaN) (OdontoiatriUniversitari)

11 Visualizzare il numero degli ospedali che hanno dichiarato il numerodi odontoiatri (Odontoiatri Universitari) e per cui questo numero emaggiore di 0

12 Calcolare le frequenze assolute per lrsquoattributo Odontoiatri SSNTrasformare questo risultato in frequenze relative

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 36 88

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) SAD 20182019 January 12 2019 37 88

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) SAD 20182019 January 12 2019 38 88

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) SAD 20182019 January 12 2019 39 88

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) SAD 20182019 January 12 2019 40 88

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) SAD 20182019 January 12 2019 41 88

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) SAD 20182019 January 12 2019 42 88

Grafici con le Series

In generale possiamo tracciare diversi tipi di grafici con le Series

rsquolinersquo line plot (default)

rsquobarrsquo vertical bar plot

rsquobarhrsquo horizontal bar plot

rsquohistrsquo histogram

rsquoboxrsquo boxplot

rsquokdersquo Kernel Density Estimation plot

rsquodensityrsquo same as rsquokdersquo

rsquoarearsquo area plot

rsquopiersquo pie plot

Per saperne di piu consultare questo link

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 43 88

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) SAD 20182019 January 12 2019 44 88

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) SAD 20182019 January 12 2019 45 88

Boxplot

Rappresenta la distribuzione di un vettore di numeri cerchiando gli outlier

gtgtgt weight = heroes[rsquoWeightrsquo]

gtgtgt weightplotbox()

gtgtgt pltshow()

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 46 88

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) SAD 20182019 January 12 2019 47 88

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) SAD 20182019 January 12 2019 48 88

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) SAD 20182019 January 12 2019 49 88

Esercizi - 1

Utilizzando il file capellicsv dai csv del laboratorio

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) SAD 20182019 January 12 2019 50 88

Esercizi - 2

Utilizzando il file dati-ospedalicsv dai csv del laboratorio

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 e canipdf

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 51 88

Sample space

Un esperimento e qualsiasi processo che produce una realizzazione (oosservazione) Lrsquoinsieme di tutte le possibili realizzazioni di un esperimentoviene detto sample space ed indicato con S

lancio di 2 monete

S = (T T ) (T C) (C T ) (C C)

gara di 3 cavalli (ab c)

S = tutti i possibili ordinamenti di(ab c)= (ab c) (a cb) (c b a)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 52 88

Eventi

lancio di 2 monete

S = (T T ) (T C) (C T ) (C C)

A = 2 monete uguali

A = (T T ) (C C)

B = 2 monete diverse

B = Ac = (T C) (C T )

gara di 3 cavalli

A = cavallo a vincente

A = (ab c) (a c b)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 53 88

Probabilita - 1

Consideriamo un esperimento con sample space S Supponiamo che adogni evento A sia associato un numero chiamato probabilita di A edindicato con P(A) che soddisfa le seguenti proprieta

1 Per ogni evento A la probabilita di A e un numero tra 0 e 1

0 le P(A) le 1

2 La probabilita del sample space S e 1

P(S) = 1

3 La probabilita dellrsquounione di eventi disgiunti e uguale alla somma delleprobabilita di tali eventi

P(A cupB) = P(A) + P(B)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 54 88

Probabilita - 2

In generale 2 eventi potrebbero non essere disgiunti

P(A cupB) = P(A) + P(B) minus P(A capB)

Esempio un certo negozio accetta pagamenti o con carte di credito VISAo Mastercard

1 22 dei clienti ha Mastercard

2 58 dei clienti ha VISA

3 14 dei clienti ha entrambe

Qual e la probabilita che un cliente ha almeno una delle 2 carte

P(A) = 022 P(B) = 058

P(A cupB) = P(A) + P(B) minus P(A capB) = 022 + 058 minus 014 = 066

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 55 88

Probabilita condizionata - 1

Se alcune informazioni riguardo lrsquoesito di un esperimento sono disponibiliparliamo di probabilita condizionata

Esempio lancio di 2 dadi

S = (11) (12) (65) (66)

Probabilita che la somma sia 10 (evento B) sapendo che il primo dadomostra 4 (evento A)

(41) (42) (43) (44) (45) (46)

P(B ∣A) = 16

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 56 88

Probabilita condizionata - 2

In generale

P(B ∣A) = P(A capB)P(A)

Supponiamo lrsquoesito sia in A

Per essere anche in B deve essere in entrambi A e B cioe in A capB

Sapendo che A e gia accaduto il nostro nuovo sample space diventa A

la probabilita di A capB viene calcolata rispetto ad A

Nel caso dei dadi

P(B ∣A) = P((46))P((41) (42) (43) (44) (45) (46)) = 136

16= 1

6

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 57 88

Indipendenza

In generale sapere che A e accaduto modifica le chance che B accadaNel caso cio non avvenga cioe se P(B ∣A) = P(B) allora i 2 eventi sidicono indipendenti In questo caso sapere che A e accaduto nonaggiunge alcuna informazione

SiccomeP(A capB) = P(B ∣A)P(A)

Abbiamo che B e indipendente da A se

P(A capB) = P(B)P(A)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 58 88

Esercizi - 1

1 Svolgere gli esercizi di combinatoria

2 Si consideri il seguente esperimento casuale rdquosi lancia tre volte unamonetardquo Qual e lo spazio degli esiti di questo esperimento casualeSi scriva esplicitamente lrsquoevento rdquosi ottengono piu teste che crocirdquo

3 Si consideri il seguente esperimento casuale rdquoSi tirano due dadirdquo Siconsiderino gli eventi E = rdquola somma dei punteggi e disparirdquo F = rdquoilprimo dado realizza un 1rdquo e G = rdquola somma dei punteggi e 5rdquo Sidescrivano gli eventi E cap F E cup F F capG E cap F c e E cap F capG

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 59 88

Esercizi - 2

4 Si consideri il seguente esperimento casuale rdquoUn sistema e compostoda 4 componenti ciascuno dei quali o funziona oppure e guasto Siosserva lo stato dei componenti ottenendo un vettore (x1 x2 x3 x4)dove xi e 1 oppure 0 a seconda che il componente i-esimo funzionioppure nordquo

1 Da quanti elementi e formato lo spazio degli esiti2 Il sistema nel suo insieme funziona fintantoche entrambi i componenti

1 e 2 oppure entrambi i componenti 3 e 4 funzionano Specifica tuttigli esiti dellrsquoevento il rdquosistema funzionardquo

3 Sia E lrsquoevento rdquoi componenti 1 e 3 sono guastirdquo Quanti esiti contiene

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 60 88

Esercizi - 3

5 Si dimostri che in uno spazio degli esiti Ω dotato di una probabilita Pper ogni evento E F sub Ω vale la disuguaglianza seguente

P(E cap F ) ge P(E) + P(F ) minus 1

6 Un gruppo di 5 bambini e 10 bambine e in fila in ordine casuale nelsenso che tutte le 15 possibili permutazioni si suppongonoequiprobabili

1 Qual e la probabilita che il quarto della fila sia un bambino2 E il dodicesimo3 Qual e la probabilita che un determinato bambino occupi la terza

posizione

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 61 88

Esercizi - 4

7 In un comune vi sono 5 alberghi Se 3 persone devono scegliere unalbergo in cui pernottare qual e la probabilita che finiscano tutte inalberghi differenti Che cosa stiamo assumendo senza dirloesplicitamente

8 La media del salario annuale di un gruppo di 100 lavoratori impiegatinellrsquoamministrazione di una grande azienda e di 130000 dollari conuna deviazione standard di 20000 dollari Se si prende una persona acaso da questo gruppo cosa possiamo dire sulla probabilita che il suosalario sia

1 tra i 90000 e i 170000 dollari2 superiore a 150000 dollari

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 62 88

Esercizi - 5

9 In una certa regione vi sono due ditte che producono forni amicroonde Quelli della fabbrica A sono difettosi con probabilita 005mentre quelli della fabbrica B con probabilita 001 Supponi di averacquistato due apparecchi prodotti dalla stessa ditta che puo essere laA o la B con probabilita del 50 Se il primo microonde e difettosoqual e la probabilita condizionata che sia difettoso anche il secondo

10 Hai chiesto ad un vicino di innaffiare una piantina delicata mentre seiin vacanza Pensi che senza acqua la piantina muoia con probabilita08 mentre se innaffiata questa probabilita si ridurrebbe a 015 Latua fiducia che il vicino si ricordi di innaffiarla e del 90

1 Qual e la probabilita che la pianta sia ancora viva al tuo ritorno2 Se fosse morta quale sarebbe la probabilita che il vicino si sia

dimenticato di innaffiarla

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 63 88

Esercizi - 6

11 Una compagnia di assicurazioni classifica i suoi clienti in tre fascebasso rischio medio rischio alto rischio Le sue statistiche indicanoche le probabilita che un cliente delle tre fasce abbia un incidenteentro un periodo di un anno sono rispettivamente 005 015 e 030Se il 20 dei clienti sono a basso rischio il 50 a medio rischio e il30 ad alto rischio che percentuale dei clienti avra mediamenteincidenti in un lasso di un anno Se un cliente non ha avuto incidentinel 1987 qual e la probabilita che appartenga a ciascuna delle trefasce

12 Se un votante scelto a caso e favorevole ad una certa riforma conprobabilita di 07 qual e la probabilita che su 10 votanti esattamente7 siano favorevoli

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 64 88

Variabili aleatorie

Una variabile aleatoria (o anche variabile aleatoria) e una variabile chepuo assumere valori diversi in dipendenza da qualche fenomeno aleatorio

fenomeno lancio di 2 dadivariabile aleatoria somma dei 2 dadi

fenomeno 3 lanci di una monetavariabile aleatoria numero di rdquotesterdquo complessivo

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 65 88

Funzione di Ripartizione

Sia X una variabile aleatoria Si chiama funzione di ripartizione di X lafunzione F che associa ad ogni numero reale a la probabilita che X siaminore o uguale ad a cioe P(X le a) = FX (a)

Nel caso della moneta (fair) lanciata 3 volte (X indica il numero di testecomplessivo)

FX (a) =

⎧⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎨⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎩

0 if a lt 0

18 per 0 le a lt 1

18 + 38 = 48 per 1 le a lt 2

48 + 38 = 78 per 2 le a lt 3

88 = 1 per a ge 3

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 66 88

Funzione di densita o di massa

Sia X una variabile aleatoria Si chiama funzione di densita di X lafunzione f che associa ad ogni numero reale a la probabilita che X siauguale ad a indicata con fX (a)

Nel caso della moneta (fair) lanciata 3 volte (X indica il numero di testecomplessivo)

fX (a) =

⎧⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎨⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎩

18 per a = 0

38 per a = 1

38 per a = 2

18 per a = 3

0 altrimenti

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 67 88

Valore Atteso

Chiamato anche media (expectation in inglese) e appunto una mediapesata dei possibili valori di una variabile aleatoria Il peso dato a ciascunvalore e la probabilita data a quello specifico valore

E[X ] =sumi

aiP(X = ai)

Esempio dado truccato

valore 6 con probabilita 712

valori da 1 a 5 con probabilita 112

La variabile aleatoria X indica la faccia risultante dal lancio di un dado

E[X ] = 1

12lowast 1 + 1

12lowast 2 + 1

12lowast 3 + 1

12lowast 4 + 1

12lowast 5 + 7

12lowast 6 = 475

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 68 88

Valore Atteso - Proprieta

Sia X una variabile aleatoria con valore atteso E[X ] Se c e una costanteallora anche cX e X + c sono variabili casuali In particolare valgono leseguenti proprieta

E[cX ] = cE[X ]E[X + c] = E[X ] + c

Sia Y una variabile aleatoria Allora

E[X +Y ] = E[X ] +E[Y ]se e solo se X e Y sono independenti

E[XY ] = E[X ]E[Y ]

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 69 88

Varianza

Ersquo il valore atteso del quadrato della differenza tra la variabile aleatoria e ilsuo valore atteso

Var(X ) = E[(X minusE[X ])2] = E[X 2] minus (E[X ])2

La radice quadrata viene detta deviazione standard di X

Esempio dado truccato

E[X 2] = 1

12lowast 12 + 1

12lowast 22 + 1

12lowast 32 + 1

12lowast 42 + 1

12lowast 52 + 7

12lowast 62 ≃ 255

Var(X ) = E[X 2] minus (E[X ])2 ≃ 255 minus 4752 ≃ 3

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 70 88

Varianza - proprieta

Sia X una variabile aleatoria e c una costante Allora valgono le seguentiproprieta

1 Var(cX ) = c2Var(X )

2 Var(X + c) = Var(X )

NOTA

Var(X +X ) ne Var(X ) +Var(X )

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 71 88

Covarianza

Siano X Y due variabili aleatorie con valore atteso rispettivamenteE[X ] = microX e E[Y ] = microY La covarianza e definita come segue

Cov(X Y ) = E[(X minus microX )(Y minus microY )] = = E[XY ] minus microXmicroY

Proprieta

1 Cov(X Y ) = Cov(Y X )2 Cov(X X ) = Var(X )3 Sia a una costante allora

Cov(aX Y ) = aCov(X Y )

4 Sia Z una variabile aleatoria allora

Cov(X + Z Y ) = Cov(X Y ) + Cov(Z Y )

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 72 88

Esercizi - 1

1 Consideriamo una variabile aleatoria X che puo assumere i valori 12o 3 Se sappiamo che

fX (1) = 1

3 fX (2) = 3

7

1 Quanto vale fX (3)2 Disegnare il grafico di questa funzione di massa3 Disegnare il grafico della relativa funzione di ripartizione

2 Dimostrare che se X1 e X2 hanno la stessa distribuzione allora

Cov(X1 +X2X1 minusX2) = 0

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 73 88

Esercizi - 2

3 La funzione di ripartizione di X e definita come segue

FX (x) =

⎧⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎨⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎩

0 per x le 0

x2 per 0 le x lt 1

23 per 1 le x lt 2

1112 per 2 le x lt 3

1 per x ge 3

Se ne tracci il graficoQuanto vale P(X gt 12)Quanto vale P(2 le X le 4)Quanto vale P(X le 3)Quanto vale P(X = 1)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 74 88

Esercizi - 3

4 Un tipo di prodotti vengono classificati a seconda dei loro difetti edella fabbrica che li ha prodotti Sia X1 il numero (1 o 2) dellafabbrica e sia X2 il numero di difetti per pezzo (che possono essere da0 a 3) di un prodotto scelto a caso tra la totalita di quelli esistentiLa tabella seguente riporta la funzione di massa di probabilitacongiunta per queste due variabili aleatorie discrete Le righe siriferiscono alla variabile X1 mentre le colonne alla variabile X2

Trova le distribuzioni marginali di X1 e X2Calcola media e varianza di X2

0 1 2 31 18 116 316 182 116 116 18 14

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 75 88

Scipy

Scipy e un modulo che permette di utilizzare varie distribuzioni diprobabilita sia di tipo discreto che continuo

La sintassi generale e la seguente Scipystatsltnome distribuzionegt

rvs(size=z) restituisce un vettore di numeri casuali estrattisecondo la distribuzione di lunghezza z

pdf(x) restituisce il vettore della densita della distribuzionevalutata nei valori del vettore di input x (pmf per le discrete)

cdf(x) restituisce il vettore della funzione di ripartizione (ocumulativa) della distribuzione valutata nei valori del vettore di inputx

ppf(q) restituisce il vettore dei quantili della distribuzione valutatanei valori del vettore di input q

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 76 88

Variabili aleatorie discrete Binomiale

gtgtgt from scipystats import binom

gtgtgt rv = binom(n p)

rvrvs(x) restituisce un vettore di x numeri estratti secondo unadistribuzione Binomiale di parametri n p

rvpmf(x) restituisce la probabilita di ottenere esattamente x

successi in un esperimento dicotomico (01) ripetuto n volte con unaprobabilita di successo p (x puo essere un vettore)

rvcdf(q) restituisce il valore della funzione di ripartizione in q (qpuo essere un vettore)

rvppf(p) restituisce il valore del quantile di ordine p

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 77 88

Variabili aleatorie discrete Ipergeometrica

Supponiamo di avere M = 20 animali di cui n = 7 cani Se vogliamosapere la probabilita di trovare un dato numero di cani se scegliamoN = 12 dei 20 animali in maniera casuale possiamo usare una distribuzioneipergeometrica in questo modo

gtgtgt from scipystats import hypergeom

gtgtgt [M n N] = [20 7 12]

gtgtgt rv = hypergeom(M n N)

rvpmf(x) restituisce la probabilita di estrarre esattamente x cani

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 78 88

Variabili aleatorie discrete Geometrica

gtgtgt from scipystats import geom

gtgtgt rv = geom(p)

rvpmf(x) restituisce la probabilita di avere un successo dopoesattamente x insuccessi in una successione di esperimenti dicotomici(esito 01) con una probabilita di successo p (x puo essere un vettore)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 79 88

Variabili aleatorie discrete Poisson

La distribuzione di Poisson viene usata spesso come modello per il numerodi volte per cui un evento avviene in un dato intervallo di tempo (ospazio) Ad esempio si puo utilizzare per misurare il numero di chiamatericevute da un call center in una mattinata

gtgtgt from scipystats import poisson

gtgtgt mu = 2

gtgtgt rv = poisson(mu)

rvpmf(x) restituisce il seguente valore

f (x) = exp(minusmicro)microx

x

In questo caso x rappresenta il numero di eventi per cui si vuole calcolarela probabilita sapendo che in media ne accadono micro

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 80 88

Variabili aleatorie continue Uniforme

In Scipy la funzione uniforme e soltanto continua Questo significa chenella generazione di numeri casuali otterro dati di tipo float Possiamotuttavia simulare una variabile discreta estraendo la parte intera delrisultato ottenuto

gtgtgt from scipystats import uniform

gtgtgt rv = uniform()

Il comando uniform() crea una distribuzione uniforme nellrsquointervallo[01] Possiamo creare una distribuzione uniforme qualsiasi usandouniform(x y - x) per lrsquointervallo [x y]

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 81 88

Variabili aleatorie continue

norm(mu sigma) variabile Gaussiana (o Normale) di media micro edeviazione standard σ

expon(scale = 1 lambda) variabile Esponenziale di parametroλ

Altre distribuzioni (con relativa documentazione) disponibili suhttpsdocsscipyorgdocscipyreferencestatshtml

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 82 88

Esercizi - 1

1 Unrsquourna contiene 10 palline di cui 4 bianche e 6 nere Si eseguono 5estrazioni con reimmissione

1 Tracciare grafico della funzione massa di probabilita della variabilecasuale X = rdquonumero di palline bianche estratterdquo

2 Calcolare la probabilita di estrarre 2 palline bianche3 Calcolare la probabilita di estrarre al piu 2 palline bianche4 Calcolare la probabilita di estrarre almeno 2 palline bianche5 Qual e il numero minimo x tale che la probabilita di estrarre al piu x

palline bianche sia almeno 08

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 83 88

Esercizi - 2

2 Si eseguono 10 estrazioni senza reimmissione da unrsquourna

1 Tracciare il grafico della funzione massa di probabilita della variabilecasuale X = rdquonumero di palline bianche estratterdquo nei seguenti casi

1 lrsquourna contiene 100 palline di cui 20 bianche e le restanti nere2 lrsquourna contiene 100 palline di cui 2 bianche e le restanti nere

2 Tracciare il grafico della funzione massa di probabilita della variabilecasuale X nel caso dellrsquourna 1 se si eseguono 25 estrazioni

3 Consideriamo lrsquourna 1 e N = 10 estrazioni Si aumenti il numero totaleM di palline nellrsquourna mantenendo uguale a 02 la frazione di pallinebianche Per ciascun valore di M confrontare graficamente ladistribuzione di probabilita del numero di palline bianche estratte nelcaso di estrazioni con e senza reimmissione Provare con 20 40 e 200palline bianche

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 84 88

Esercizi - 3

3 Calcolare la probabilita di ottenere piu teste che croci lanciando 7volte una moneta truccata con probabilita di avere croce pari a 045

4 Calcolare la probabilita di avere almeno 3 sei lanciando 5 dadi a 12facce

5 Calcolare la probabilita di estrarre 20 euro da un sacco contenente 47monete da 1 centesimo e 53 da 2 euro estraendo (uniformemente) acaso 10 monete senza reinserirle

6 Un grammo di uranio emette mediamente 2152 particelle α ognimillisecondo Qual e con buona approssimazione la probabilita che ungrammo di uranio emetta al piu 2000 particelle α in un millisecondo

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 85 88

Esercizi - 4

7 Un uomo si risveglia in mezzo al deserto senza acqua Dopo ogniminuto ha una probabilita del 3 di perdere conoscenza per via dellecondizioni estreme Calcolare la probabilita che lrsquouomo perdaconoscenza dopo almeno due ore e la probabilita che lrsquouomo perdaconoscenza dopo esattamente un quarto drsquoora

8 Sia X una variabile aleatoria normale di parametri micro = 10 e σ = 36Calcola

1 P(X gt 5)2 P(4 le X le 16)3 P(X le 8)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 86 88

Esercizi - 5

9 Il numero di errori tipografici per pagina di una certa rivista segue unadistribuzione di Poisson Sapendo che mediamente sono presenti 02errori per pagina determinare la probabilita che una pagina contenga

1 nessun refuso2 piu refusi

10 Arrivi alla fermata dellrsquoautobus alle 1000 e sei certo che ne passerauno in un momento distribuito uniformemente tra le 1000 e le 1030

1 Qual e la probabilita che tu debba aspettare piu di 10 minuti2 Se alle 1015 lrsquoautobus non e ancora arrivato qual e la probabilita che

tu debba aspettare almeno altri 10 minuti

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 87 88

Esercizi - 6

11 Il signor Jones e convinto che il tempo di vita di una automobile (inmigliaia di chilometri percorse) sia una variabile aleatoria esponenzialedi parametro 120 Il signor Smith ha una macchina usata da vendereche ha percorso circa 10 000 chilometri

1 Se il signor Jones decide di comprarla che probabilita ha di farle farealmeno altri 20 000 chilometri prima che sia da buttare

2 Il modello assunto dal signor Jones e ragionevole

12 Sia X una variabile casuale binomiale di parametri n = 100 e p = 07

1 Tracciate la funzione di ripartizione di X2 Calcolate il primo quartile il quantile di ordine 09 e la mediana di X3 Calcolare la probabilita P(X le 60)4 Calcolare la probabilita P(X le 88)5 Trovare il piu piccolo valore x tale che P(X le x) ge 09

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 88 88

  • Lezione 1
    • Script in Python
    • Numpy
    • Esercizi
    • Pandas
    • Esercizi
      • Lezione 2
        • File csv
        • DataFrame
        • Accesso ai DataFrame
        • Frequenze
        • Esercizi
          • Lezione 3
            • Matplotlib
            • Grafici a Barre
            • Istogrammi
            • Cumulativa empirica
            • Boxplot
            • QQplot
            • Diagramma di Pareto
            • Esercizi
              • Lezione 4
                • Definizioni
                • Probabilitagrave condizionata
                • Indipendenza
                • Esercizi
                  • Lezione 5
                    • Variabili Aleatorie
                    • Funzione di Ripartizione
                    • Funzione di Densitagrave
                    • Valore Atteso
                    • Varianza
                    • Covarianza
                    • Esercizi
                      • Lezione 6
                        • Scipy - Variabili Discrete
                        • Scipy - Variabili continue
                        • Esercizi

Accesso righe DataFrame - 1

Per indice numerico

gtgtgt df film[1518]

titolo paese anno durata genere voto

Il padrino USA 19720 1750 Drammatico 45

Pulp Fiction USA 19940 1540 Drammatico 40

Fight Club USA 19990 1390 Thriller 40

Quasi Amici FRA 20110 1120 Commedia 35

Per valore dellrsquoindice (assumiamo che titolo sia lrsquoindice delDataFrame)

gtgtgt df film[rsquoIl padrinorsquorsquoFight Clubrsquo]

titolo paese anno durata genere voto

Il padrino USA 19720 1750 Drammatico 45

Pulp Fiction USA 19940 1540 Drammatico 40

Fight Club USA 19990 1390 Thriller 40

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 30 88

loc amp iloc

Cosı come per le Series anche con i DataFrame possiamo usare loc ediloc per lrsquoaccesso ai dati

loc[rsquonome indicersquo] permette lrsquoaccesso ad una riga o piu righetramite nome dellrsquoindice

iloc[rsquoposizionersquo] permette lrsquoaccesso ad una o piu righe tramitela loro posizione

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 31 88

Accesso tramite unrsquoespressione logica

gtgtgt df film[rsquoannorsquo gt 1998]

titolo

Il padrino False

Pulp Fiction False

Fight Club True

Quasi Amici True

gtgtgt df film[df film[rsquoannorsquo] gt 1998]

titolo paese anno durata genere voto

Fight Club USA 19990 1390 Thriller 40

Quasi Amici FRA 20110 1120 Commedia 35

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 32 88

Metodi dei DataFrame

La classe DataFrame ha diversi metodi Elenchiamo qui i piu importanti

DataFrameappend() permette di estendere il DataFrame

DataFramedrop duplicates() restituisce un DataFrame senza righeduplicate

DataFramedropna() Eliminare i valori Nan da un DataFrame

DataFramesort values() permette di ordinare il DataFrame

DataFramemax() DataFramemin() DataFramemean()DataFramemedian()

Per la completa documentazione si puo utilizzare il comandohelp(pdDataFrame) oppure andare al seguente linkhttpspandaspydataorgpandas-docsstablegenerated

pandasDataFramehtml

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 33 88

Frequenze

La frequenza assoluta indica il numero di volte che una dataosservazione occorre in un campione

La frequenza relativa e un valore tra 0 e 1 che permette di valutare inmaniera piu efficace la frequenza di un osservazione Si calcoladividendo la frequenza assoluta per il numero totale di casi

Per calcolare questa quantita in Pandas possiamo utilizzare la funzionevalue counts() che opera su una Series

In alternativa si puo utilizzare la funzione pdcrosstab che calcolaqueste frequenze in automatico restituendole in output in un DataFrame

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 34 88

Esercizi

Utilizzando il file dati-ospedalicsv dai csv del laboratorio

1 Leggere il file e visualizzarlo in un DataFrame

2 Calcolare le frequenze assolute e relative dellrsquoattributo Regioneusando crosstab

3 Ottenere la singola serie relativa allrsquoattributo Regione e calcolarne lafrequenza assoluta e relativa senza usare crosstab

4 Estrarre un sottodataframe contenente le colonne Nome (attributoDenominazione Str Pubblica New) e Numero di medici (attributoMedici SSN) degli ospedali aventi meno di 200 medici

5 Visualizzare il nome degli ospedali della regione Lombardia

6 Calcolare il numero medio di ingegneri (Ingegneri SSN) presenti negliospedali campani

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 35 88

Esercizi

7 Calcolare la varianza del numero di assistenti sociali (Assistenti socialiSSN) negli ospedali con piu di 400 medici

8 Qual e lrsquoospedale con meno medici

9 Visualizzare in ordine alfabetico il nome dei primi 10 ospedali pernumero di medici

10 Visualizzare il numero degli ospedali che hanno dichiarato il numerodi odontoiatri (per cui il valore e diverso da NaN) (OdontoiatriUniversitari)

11 Visualizzare il numero degli ospedali che hanno dichiarato il numerodi odontoiatri (Odontoiatri Universitari) e per cui questo numero emaggiore di 0

12 Calcolare le frequenze assolute per lrsquoattributo Odontoiatri SSNTrasformare questo risultato in frequenze relative

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 36 88

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) SAD 20182019 January 12 2019 37 88

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) SAD 20182019 January 12 2019 38 88

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) SAD 20182019 January 12 2019 39 88

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) SAD 20182019 January 12 2019 40 88

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) SAD 20182019 January 12 2019 41 88

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) SAD 20182019 January 12 2019 42 88

Grafici con le Series

In generale possiamo tracciare diversi tipi di grafici con le Series

rsquolinersquo line plot (default)

rsquobarrsquo vertical bar plot

rsquobarhrsquo horizontal bar plot

rsquohistrsquo histogram

rsquoboxrsquo boxplot

rsquokdersquo Kernel Density Estimation plot

rsquodensityrsquo same as rsquokdersquo

rsquoarearsquo area plot

rsquopiersquo pie plot

Per saperne di piu consultare questo link

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 43 88

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) SAD 20182019 January 12 2019 44 88

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) SAD 20182019 January 12 2019 45 88

Boxplot

Rappresenta la distribuzione di un vettore di numeri cerchiando gli outlier

gtgtgt weight = heroes[rsquoWeightrsquo]

gtgtgt weightplotbox()

gtgtgt pltshow()

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 46 88

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) SAD 20182019 January 12 2019 47 88

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) SAD 20182019 January 12 2019 48 88

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) SAD 20182019 January 12 2019 49 88

Esercizi - 1

Utilizzando il file capellicsv dai csv del laboratorio

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) SAD 20182019 January 12 2019 50 88

Esercizi - 2

Utilizzando il file dati-ospedalicsv dai csv del laboratorio

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 e canipdf

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 51 88

Sample space

Un esperimento e qualsiasi processo che produce una realizzazione (oosservazione) Lrsquoinsieme di tutte le possibili realizzazioni di un esperimentoviene detto sample space ed indicato con S

lancio di 2 monete

S = (T T ) (T C) (C T ) (C C)

gara di 3 cavalli (ab c)

S = tutti i possibili ordinamenti di(ab c)= (ab c) (a cb) (c b a)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 52 88

Eventi

lancio di 2 monete

S = (T T ) (T C) (C T ) (C C)

A = 2 monete uguali

A = (T T ) (C C)

B = 2 monete diverse

B = Ac = (T C) (C T )

gara di 3 cavalli

A = cavallo a vincente

A = (ab c) (a c b)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 53 88

Probabilita - 1

Consideriamo un esperimento con sample space S Supponiamo che adogni evento A sia associato un numero chiamato probabilita di A edindicato con P(A) che soddisfa le seguenti proprieta

1 Per ogni evento A la probabilita di A e un numero tra 0 e 1

0 le P(A) le 1

2 La probabilita del sample space S e 1

P(S) = 1

3 La probabilita dellrsquounione di eventi disgiunti e uguale alla somma delleprobabilita di tali eventi

P(A cupB) = P(A) + P(B)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 54 88

Probabilita - 2

In generale 2 eventi potrebbero non essere disgiunti

P(A cupB) = P(A) + P(B) minus P(A capB)

Esempio un certo negozio accetta pagamenti o con carte di credito VISAo Mastercard

1 22 dei clienti ha Mastercard

2 58 dei clienti ha VISA

3 14 dei clienti ha entrambe

Qual e la probabilita che un cliente ha almeno una delle 2 carte

P(A) = 022 P(B) = 058

P(A cupB) = P(A) + P(B) minus P(A capB) = 022 + 058 minus 014 = 066

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 55 88

Probabilita condizionata - 1

Se alcune informazioni riguardo lrsquoesito di un esperimento sono disponibiliparliamo di probabilita condizionata

Esempio lancio di 2 dadi

S = (11) (12) (65) (66)

Probabilita che la somma sia 10 (evento B) sapendo che il primo dadomostra 4 (evento A)

(41) (42) (43) (44) (45) (46)

P(B ∣A) = 16

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 56 88

Probabilita condizionata - 2

In generale

P(B ∣A) = P(A capB)P(A)

Supponiamo lrsquoesito sia in A

Per essere anche in B deve essere in entrambi A e B cioe in A capB

Sapendo che A e gia accaduto il nostro nuovo sample space diventa A

la probabilita di A capB viene calcolata rispetto ad A

Nel caso dei dadi

P(B ∣A) = P((46))P((41) (42) (43) (44) (45) (46)) = 136

16= 1

6

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 57 88

Indipendenza

In generale sapere che A e accaduto modifica le chance che B accadaNel caso cio non avvenga cioe se P(B ∣A) = P(B) allora i 2 eventi sidicono indipendenti In questo caso sapere che A e accaduto nonaggiunge alcuna informazione

SiccomeP(A capB) = P(B ∣A)P(A)

Abbiamo che B e indipendente da A se

P(A capB) = P(B)P(A)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 58 88

Esercizi - 1

1 Svolgere gli esercizi di combinatoria

2 Si consideri il seguente esperimento casuale rdquosi lancia tre volte unamonetardquo Qual e lo spazio degli esiti di questo esperimento casualeSi scriva esplicitamente lrsquoevento rdquosi ottengono piu teste che crocirdquo

3 Si consideri il seguente esperimento casuale rdquoSi tirano due dadirdquo Siconsiderino gli eventi E = rdquola somma dei punteggi e disparirdquo F = rdquoilprimo dado realizza un 1rdquo e G = rdquola somma dei punteggi e 5rdquo Sidescrivano gli eventi E cap F E cup F F capG E cap F c e E cap F capG

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 59 88

Esercizi - 2

4 Si consideri il seguente esperimento casuale rdquoUn sistema e compostoda 4 componenti ciascuno dei quali o funziona oppure e guasto Siosserva lo stato dei componenti ottenendo un vettore (x1 x2 x3 x4)dove xi e 1 oppure 0 a seconda che il componente i-esimo funzionioppure nordquo

1 Da quanti elementi e formato lo spazio degli esiti2 Il sistema nel suo insieme funziona fintantoche entrambi i componenti

1 e 2 oppure entrambi i componenti 3 e 4 funzionano Specifica tuttigli esiti dellrsquoevento il rdquosistema funzionardquo

3 Sia E lrsquoevento rdquoi componenti 1 e 3 sono guastirdquo Quanti esiti contiene

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 60 88

Esercizi - 3

5 Si dimostri che in uno spazio degli esiti Ω dotato di una probabilita Pper ogni evento E F sub Ω vale la disuguaglianza seguente

P(E cap F ) ge P(E) + P(F ) minus 1

6 Un gruppo di 5 bambini e 10 bambine e in fila in ordine casuale nelsenso che tutte le 15 possibili permutazioni si suppongonoequiprobabili

1 Qual e la probabilita che il quarto della fila sia un bambino2 E il dodicesimo3 Qual e la probabilita che un determinato bambino occupi la terza

posizione

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 61 88

Esercizi - 4

7 In un comune vi sono 5 alberghi Se 3 persone devono scegliere unalbergo in cui pernottare qual e la probabilita che finiscano tutte inalberghi differenti Che cosa stiamo assumendo senza dirloesplicitamente

8 La media del salario annuale di un gruppo di 100 lavoratori impiegatinellrsquoamministrazione di una grande azienda e di 130000 dollari conuna deviazione standard di 20000 dollari Se si prende una persona acaso da questo gruppo cosa possiamo dire sulla probabilita che il suosalario sia

1 tra i 90000 e i 170000 dollari2 superiore a 150000 dollari

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 62 88

Esercizi - 5

9 In una certa regione vi sono due ditte che producono forni amicroonde Quelli della fabbrica A sono difettosi con probabilita 005mentre quelli della fabbrica B con probabilita 001 Supponi di averacquistato due apparecchi prodotti dalla stessa ditta che puo essere laA o la B con probabilita del 50 Se il primo microonde e difettosoqual e la probabilita condizionata che sia difettoso anche il secondo

10 Hai chiesto ad un vicino di innaffiare una piantina delicata mentre seiin vacanza Pensi che senza acqua la piantina muoia con probabilita08 mentre se innaffiata questa probabilita si ridurrebbe a 015 Latua fiducia che il vicino si ricordi di innaffiarla e del 90

1 Qual e la probabilita che la pianta sia ancora viva al tuo ritorno2 Se fosse morta quale sarebbe la probabilita che il vicino si sia

dimenticato di innaffiarla

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 63 88

Esercizi - 6

11 Una compagnia di assicurazioni classifica i suoi clienti in tre fascebasso rischio medio rischio alto rischio Le sue statistiche indicanoche le probabilita che un cliente delle tre fasce abbia un incidenteentro un periodo di un anno sono rispettivamente 005 015 e 030Se il 20 dei clienti sono a basso rischio il 50 a medio rischio e il30 ad alto rischio che percentuale dei clienti avra mediamenteincidenti in un lasso di un anno Se un cliente non ha avuto incidentinel 1987 qual e la probabilita che appartenga a ciascuna delle trefasce

12 Se un votante scelto a caso e favorevole ad una certa riforma conprobabilita di 07 qual e la probabilita che su 10 votanti esattamente7 siano favorevoli

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 64 88

Variabili aleatorie

Una variabile aleatoria (o anche variabile aleatoria) e una variabile chepuo assumere valori diversi in dipendenza da qualche fenomeno aleatorio

fenomeno lancio di 2 dadivariabile aleatoria somma dei 2 dadi

fenomeno 3 lanci di una monetavariabile aleatoria numero di rdquotesterdquo complessivo

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 65 88

Funzione di Ripartizione

Sia X una variabile aleatoria Si chiama funzione di ripartizione di X lafunzione F che associa ad ogni numero reale a la probabilita che X siaminore o uguale ad a cioe P(X le a) = FX (a)

Nel caso della moneta (fair) lanciata 3 volte (X indica il numero di testecomplessivo)

FX (a) =

⎧⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎨⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎩

0 if a lt 0

18 per 0 le a lt 1

18 + 38 = 48 per 1 le a lt 2

48 + 38 = 78 per 2 le a lt 3

88 = 1 per a ge 3

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 66 88

Funzione di densita o di massa

Sia X una variabile aleatoria Si chiama funzione di densita di X lafunzione f che associa ad ogni numero reale a la probabilita che X siauguale ad a indicata con fX (a)

Nel caso della moneta (fair) lanciata 3 volte (X indica il numero di testecomplessivo)

fX (a) =

⎧⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎨⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎩

18 per a = 0

38 per a = 1

38 per a = 2

18 per a = 3

0 altrimenti

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 67 88

Valore Atteso

Chiamato anche media (expectation in inglese) e appunto una mediapesata dei possibili valori di una variabile aleatoria Il peso dato a ciascunvalore e la probabilita data a quello specifico valore

E[X ] =sumi

aiP(X = ai)

Esempio dado truccato

valore 6 con probabilita 712

valori da 1 a 5 con probabilita 112

La variabile aleatoria X indica la faccia risultante dal lancio di un dado

E[X ] = 1

12lowast 1 + 1

12lowast 2 + 1

12lowast 3 + 1

12lowast 4 + 1

12lowast 5 + 7

12lowast 6 = 475

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 68 88

Valore Atteso - Proprieta

Sia X una variabile aleatoria con valore atteso E[X ] Se c e una costanteallora anche cX e X + c sono variabili casuali In particolare valgono leseguenti proprieta

E[cX ] = cE[X ]E[X + c] = E[X ] + c

Sia Y una variabile aleatoria Allora

E[X +Y ] = E[X ] +E[Y ]se e solo se X e Y sono independenti

E[XY ] = E[X ]E[Y ]

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 69 88

Varianza

Ersquo il valore atteso del quadrato della differenza tra la variabile aleatoria e ilsuo valore atteso

Var(X ) = E[(X minusE[X ])2] = E[X 2] minus (E[X ])2

La radice quadrata viene detta deviazione standard di X

Esempio dado truccato

E[X 2] = 1

12lowast 12 + 1

12lowast 22 + 1

12lowast 32 + 1

12lowast 42 + 1

12lowast 52 + 7

12lowast 62 ≃ 255

Var(X ) = E[X 2] minus (E[X ])2 ≃ 255 minus 4752 ≃ 3

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 70 88

Varianza - proprieta

Sia X una variabile aleatoria e c una costante Allora valgono le seguentiproprieta

1 Var(cX ) = c2Var(X )

2 Var(X + c) = Var(X )

NOTA

Var(X +X ) ne Var(X ) +Var(X )

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 71 88

Covarianza

Siano X Y due variabili aleatorie con valore atteso rispettivamenteE[X ] = microX e E[Y ] = microY La covarianza e definita come segue

Cov(X Y ) = E[(X minus microX )(Y minus microY )] = = E[XY ] minus microXmicroY

Proprieta

1 Cov(X Y ) = Cov(Y X )2 Cov(X X ) = Var(X )3 Sia a una costante allora

Cov(aX Y ) = aCov(X Y )

4 Sia Z una variabile aleatoria allora

Cov(X + Z Y ) = Cov(X Y ) + Cov(Z Y )

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 72 88

Esercizi - 1

1 Consideriamo una variabile aleatoria X che puo assumere i valori 12o 3 Se sappiamo che

fX (1) = 1

3 fX (2) = 3

7

1 Quanto vale fX (3)2 Disegnare il grafico di questa funzione di massa3 Disegnare il grafico della relativa funzione di ripartizione

2 Dimostrare che se X1 e X2 hanno la stessa distribuzione allora

Cov(X1 +X2X1 minusX2) = 0

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 73 88

Esercizi - 2

3 La funzione di ripartizione di X e definita come segue

FX (x) =

⎧⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎨⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎩

0 per x le 0

x2 per 0 le x lt 1

23 per 1 le x lt 2

1112 per 2 le x lt 3

1 per x ge 3

Se ne tracci il graficoQuanto vale P(X gt 12)Quanto vale P(2 le X le 4)Quanto vale P(X le 3)Quanto vale P(X = 1)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 74 88

Esercizi - 3

4 Un tipo di prodotti vengono classificati a seconda dei loro difetti edella fabbrica che li ha prodotti Sia X1 il numero (1 o 2) dellafabbrica e sia X2 il numero di difetti per pezzo (che possono essere da0 a 3) di un prodotto scelto a caso tra la totalita di quelli esistentiLa tabella seguente riporta la funzione di massa di probabilitacongiunta per queste due variabili aleatorie discrete Le righe siriferiscono alla variabile X1 mentre le colonne alla variabile X2

Trova le distribuzioni marginali di X1 e X2Calcola media e varianza di X2

0 1 2 31 18 116 316 182 116 116 18 14

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 75 88

Scipy

Scipy e un modulo che permette di utilizzare varie distribuzioni diprobabilita sia di tipo discreto che continuo

La sintassi generale e la seguente Scipystatsltnome distribuzionegt

rvs(size=z) restituisce un vettore di numeri casuali estrattisecondo la distribuzione di lunghezza z

pdf(x) restituisce il vettore della densita della distribuzionevalutata nei valori del vettore di input x (pmf per le discrete)

cdf(x) restituisce il vettore della funzione di ripartizione (ocumulativa) della distribuzione valutata nei valori del vettore di inputx

ppf(q) restituisce il vettore dei quantili della distribuzione valutatanei valori del vettore di input q

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 76 88

Variabili aleatorie discrete Binomiale

gtgtgt from scipystats import binom

gtgtgt rv = binom(n p)

rvrvs(x) restituisce un vettore di x numeri estratti secondo unadistribuzione Binomiale di parametri n p

rvpmf(x) restituisce la probabilita di ottenere esattamente x

successi in un esperimento dicotomico (01) ripetuto n volte con unaprobabilita di successo p (x puo essere un vettore)

rvcdf(q) restituisce il valore della funzione di ripartizione in q (qpuo essere un vettore)

rvppf(p) restituisce il valore del quantile di ordine p

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 77 88

Variabili aleatorie discrete Ipergeometrica

Supponiamo di avere M = 20 animali di cui n = 7 cani Se vogliamosapere la probabilita di trovare un dato numero di cani se scegliamoN = 12 dei 20 animali in maniera casuale possiamo usare una distribuzioneipergeometrica in questo modo

gtgtgt from scipystats import hypergeom

gtgtgt [M n N] = [20 7 12]

gtgtgt rv = hypergeom(M n N)

rvpmf(x) restituisce la probabilita di estrarre esattamente x cani

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 78 88

Variabili aleatorie discrete Geometrica

gtgtgt from scipystats import geom

gtgtgt rv = geom(p)

rvpmf(x) restituisce la probabilita di avere un successo dopoesattamente x insuccessi in una successione di esperimenti dicotomici(esito 01) con una probabilita di successo p (x puo essere un vettore)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 79 88

Variabili aleatorie discrete Poisson

La distribuzione di Poisson viene usata spesso come modello per il numerodi volte per cui un evento avviene in un dato intervallo di tempo (ospazio) Ad esempio si puo utilizzare per misurare il numero di chiamatericevute da un call center in una mattinata

gtgtgt from scipystats import poisson

gtgtgt mu = 2

gtgtgt rv = poisson(mu)

rvpmf(x) restituisce il seguente valore

f (x) = exp(minusmicro)microx

x

In questo caso x rappresenta il numero di eventi per cui si vuole calcolarela probabilita sapendo che in media ne accadono micro

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 80 88

Variabili aleatorie continue Uniforme

In Scipy la funzione uniforme e soltanto continua Questo significa chenella generazione di numeri casuali otterro dati di tipo float Possiamotuttavia simulare una variabile discreta estraendo la parte intera delrisultato ottenuto

gtgtgt from scipystats import uniform

gtgtgt rv = uniform()

Il comando uniform() crea una distribuzione uniforme nellrsquointervallo[01] Possiamo creare una distribuzione uniforme qualsiasi usandouniform(x y - x) per lrsquointervallo [x y]

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 81 88

Variabili aleatorie continue

norm(mu sigma) variabile Gaussiana (o Normale) di media micro edeviazione standard σ

expon(scale = 1 lambda) variabile Esponenziale di parametroλ

Altre distribuzioni (con relativa documentazione) disponibili suhttpsdocsscipyorgdocscipyreferencestatshtml

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 82 88

Esercizi - 1

1 Unrsquourna contiene 10 palline di cui 4 bianche e 6 nere Si eseguono 5estrazioni con reimmissione

1 Tracciare grafico della funzione massa di probabilita della variabilecasuale X = rdquonumero di palline bianche estratterdquo

2 Calcolare la probabilita di estrarre 2 palline bianche3 Calcolare la probabilita di estrarre al piu 2 palline bianche4 Calcolare la probabilita di estrarre almeno 2 palline bianche5 Qual e il numero minimo x tale che la probabilita di estrarre al piu x

palline bianche sia almeno 08

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 83 88

Esercizi - 2

2 Si eseguono 10 estrazioni senza reimmissione da unrsquourna

1 Tracciare il grafico della funzione massa di probabilita della variabilecasuale X = rdquonumero di palline bianche estratterdquo nei seguenti casi

1 lrsquourna contiene 100 palline di cui 20 bianche e le restanti nere2 lrsquourna contiene 100 palline di cui 2 bianche e le restanti nere

2 Tracciare il grafico della funzione massa di probabilita della variabilecasuale X nel caso dellrsquourna 1 se si eseguono 25 estrazioni

3 Consideriamo lrsquourna 1 e N = 10 estrazioni Si aumenti il numero totaleM di palline nellrsquourna mantenendo uguale a 02 la frazione di pallinebianche Per ciascun valore di M confrontare graficamente ladistribuzione di probabilita del numero di palline bianche estratte nelcaso di estrazioni con e senza reimmissione Provare con 20 40 e 200palline bianche

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 84 88

Esercizi - 3

3 Calcolare la probabilita di ottenere piu teste che croci lanciando 7volte una moneta truccata con probabilita di avere croce pari a 045

4 Calcolare la probabilita di avere almeno 3 sei lanciando 5 dadi a 12facce

5 Calcolare la probabilita di estrarre 20 euro da un sacco contenente 47monete da 1 centesimo e 53 da 2 euro estraendo (uniformemente) acaso 10 monete senza reinserirle

6 Un grammo di uranio emette mediamente 2152 particelle α ognimillisecondo Qual e con buona approssimazione la probabilita che ungrammo di uranio emetta al piu 2000 particelle α in un millisecondo

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 85 88

Esercizi - 4

7 Un uomo si risveglia in mezzo al deserto senza acqua Dopo ogniminuto ha una probabilita del 3 di perdere conoscenza per via dellecondizioni estreme Calcolare la probabilita che lrsquouomo perdaconoscenza dopo almeno due ore e la probabilita che lrsquouomo perdaconoscenza dopo esattamente un quarto drsquoora

8 Sia X una variabile aleatoria normale di parametri micro = 10 e σ = 36Calcola

1 P(X gt 5)2 P(4 le X le 16)3 P(X le 8)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 86 88

Esercizi - 5

9 Il numero di errori tipografici per pagina di una certa rivista segue unadistribuzione di Poisson Sapendo che mediamente sono presenti 02errori per pagina determinare la probabilita che una pagina contenga

1 nessun refuso2 piu refusi

10 Arrivi alla fermata dellrsquoautobus alle 1000 e sei certo che ne passerauno in un momento distribuito uniformemente tra le 1000 e le 1030

1 Qual e la probabilita che tu debba aspettare piu di 10 minuti2 Se alle 1015 lrsquoautobus non e ancora arrivato qual e la probabilita che

tu debba aspettare almeno altri 10 minuti

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 87 88

Esercizi - 6

11 Il signor Jones e convinto che il tempo di vita di una automobile (inmigliaia di chilometri percorse) sia una variabile aleatoria esponenzialedi parametro 120 Il signor Smith ha una macchina usata da vendereche ha percorso circa 10 000 chilometri

1 Se il signor Jones decide di comprarla che probabilita ha di farle farealmeno altri 20 000 chilometri prima che sia da buttare

2 Il modello assunto dal signor Jones e ragionevole

12 Sia X una variabile casuale binomiale di parametri n = 100 e p = 07

1 Tracciate la funzione di ripartizione di X2 Calcolate il primo quartile il quantile di ordine 09 e la mediana di X3 Calcolare la probabilita P(X le 60)4 Calcolare la probabilita P(X le 88)5 Trovare il piu piccolo valore x tale che P(X le x) ge 09

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 88 88

  • Lezione 1
    • Script in Python
    • Numpy
    • Esercizi
    • Pandas
    • Esercizi
      • Lezione 2
        • File csv
        • DataFrame
        • Accesso ai DataFrame
        • Frequenze
        • Esercizi
          • Lezione 3
            • Matplotlib
            • Grafici a Barre
            • Istogrammi
            • Cumulativa empirica
            • Boxplot
            • QQplot
            • Diagramma di Pareto
            • Esercizi
              • Lezione 4
                • Definizioni
                • Probabilitagrave condizionata
                • Indipendenza
                • Esercizi
                  • Lezione 5
                    • Variabili Aleatorie
                    • Funzione di Ripartizione
                    • Funzione di Densitagrave
                    • Valore Atteso
                    • Varianza
                    • Covarianza
                    • Esercizi
                      • Lezione 6
                        • Scipy - Variabili Discrete
                        • Scipy - Variabili continue
                        • Esercizi

loc amp iloc

Cosı come per le Series anche con i DataFrame possiamo usare loc ediloc per lrsquoaccesso ai dati

loc[rsquonome indicersquo] permette lrsquoaccesso ad una riga o piu righetramite nome dellrsquoindice

iloc[rsquoposizionersquo] permette lrsquoaccesso ad una o piu righe tramitela loro posizione

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 31 88

Accesso tramite unrsquoespressione logica

gtgtgt df film[rsquoannorsquo gt 1998]

titolo

Il padrino False

Pulp Fiction False

Fight Club True

Quasi Amici True

gtgtgt df film[df film[rsquoannorsquo] gt 1998]

titolo paese anno durata genere voto

Fight Club USA 19990 1390 Thriller 40

Quasi Amici FRA 20110 1120 Commedia 35

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 32 88

Metodi dei DataFrame

La classe DataFrame ha diversi metodi Elenchiamo qui i piu importanti

DataFrameappend() permette di estendere il DataFrame

DataFramedrop duplicates() restituisce un DataFrame senza righeduplicate

DataFramedropna() Eliminare i valori Nan da un DataFrame

DataFramesort values() permette di ordinare il DataFrame

DataFramemax() DataFramemin() DataFramemean()DataFramemedian()

Per la completa documentazione si puo utilizzare il comandohelp(pdDataFrame) oppure andare al seguente linkhttpspandaspydataorgpandas-docsstablegenerated

pandasDataFramehtml

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 33 88

Frequenze

La frequenza assoluta indica il numero di volte che una dataosservazione occorre in un campione

La frequenza relativa e un valore tra 0 e 1 che permette di valutare inmaniera piu efficace la frequenza di un osservazione Si calcoladividendo la frequenza assoluta per il numero totale di casi

Per calcolare questa quantita in Pandas possiamo utilizzare la funzionevalue counts() che opera su una Series

In alternativa si puo utilizzare la funzione pdcrosstab che calcolaqueste frequenze in automatico restituendole in output in un DataFrame

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 34 88

Esercizi

Utilizzando il file dati-ospedalicsv dai csv del laboratorio

1 Leggere il file e visualizzarlo in un DataFrame

2 Calcolare le frequenze assolute e relative dellrsquoattributo Regioneusando crosstab

3 Ottenere la singola serie relativa allrsquoattributo Regione e calcolarne lafrequenza assoluta e relativa senza usare crosstab

4 Estrarre un sottodataframe contenente le colonne Nome (attributoDenominazione Str Pubblica New) e Numero di medici (attributoMedici SSN) degli ospedali aventi meno di 200 medici

5 Visualizzare il nome degli ospedali della regione Lombardia

6 Calcolare il numero medio di ingegneri (Ingegneri SSN) presenti negliospedali campani

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 35 88

Esercizi

7 Calcolare la varianza del numero di assistenti sociali (Assistenti socialiSSN) negli ospedali con piu di 400 medici

8 Qual e lrsquoospedale con meno medici

9 Visualizzare in ordine alfabetico il nome dei primi 10 ospedali pernumero di medici

10 Visualizzare il numero degli ospedali che hanno dichiarato il numerodi odontoiatri (per cui il valore e diverso da NaN) (OdontoiatriUniversitari)

11 Visualizzare il numero degli ospedali che hanno dichiarato il numerodi odontoiatri (Odontoiatri Universitari) e per cui questo numero emaggiore di 0

12 Calcolare le frequenze assolute per lrsquoattributo Odontoiatri SSNTrasformare questo risultato in frequenze relative

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 36 88

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) SAD 20182019 January 12 2019 37 88

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) SAD 20182019 January 12 2019 38 88

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) SAD 20182019 January 12 2019 39 88

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) SAD 20182019 January 12 2019 40 88

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) SAD 20182019 January 12 2019 41 88

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) SAD 20182019 January 12 2019 42 88

Grafici con le Series

In generale possiamo tracciare diversi tipi di grafici con le Series

rsquolinersquo line plot (default)

rsquobarrsquo vertical bar plot

rsquobarhrsquo horizontal bar plot

rsquohistrsquo histogram

rsquoboxrsquo boxplot

rsquokdersquo Kernel Density Estimation plot

rsquodensityrsquo same as rsquokdersquo

rsquoarearsquo area plot

rsquopiersquo pie plot

Per saperne di piu consultare questo link

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 43 88

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) SAD 20182019 January 12 2019 44 88

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) SAD 20182019 January 12 2019 45 88

Boxplot

Rappresenta la distribuzione di un vettore di numeri cerchiando gli outlier

gtgtgt weight = heroes[rsquoWeightrsquo]

gtgtgt weightplotbox()

gtgtgt pltshow()

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 46 88

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) SAD 20182019 January 12 2019 47 88

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) SAD 20182019 January 12 2019 48 88

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) SAD 20182019 January 12 2019 49 88

Esercizi - 1

Utilizzando il file capellicsv dai csv del laboratorio

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) SAD 20182019 January 12 2019 50 88

Esercizi - 2

Utilizzando il file dati-ospedalicsv dai csv del laboratorio

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 e canipdf

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 51 88

Sample space

Un esperimento e qualsiasi processo che produce una realizzazione (oosservazione) Lrsquoinsieme di tutte le possibili realizzazioni di un esperimentoviene detto sample space ed indicato con S

lancio di 2 monete

S = (T T ) (T C) (C T ) (C C)

gara di 3 cavalli (ab c)

S = tutti i possibili ordinamenti di(ab c)= (ab c) (a cb) (c b a)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 52 88

Eventi

lancio di 2 monete

S = (T T ) (T C) (C T ) (C C)

A = 2 monete uguali

A = (T T ) (C C)

B = 2 monete diverse

B = Ac = (T C) (C T )

gara di 3 cavalli

A = cavallo a vincente

A = (ab c) (a c b)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 53 88

Probabilita - 1

Consideriamo un esperimento con sample space S Supponiamo che adogni evento A sia associato un numero chiamato probabilita di A edindicato con P(A) che soddisfa le seguenti proprieta

1 Per ogni evento A la probabilita di A e un numero tra 0 e 1

0 le P(A) le 1

2 La probabilita del sample space S e 1

P(S) = 1

3 La probabilita dellrsquounione di eventi disgiunti e uguale alla somma delleprobabilita di tali eventi

P(A cupB) = P(A) + P(B)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 54 88

Probabilita - 2

In generale 2 eventi potrebbero non essere disgiunti

P(A cupB) = P(A) + P(B) minus P(A capB)

Esempio un certo negozio accetta pagamenti o con carte di credito VISAo Mastercard

1 22 dei clienti ha Mastercard

2 58 dei clienti ha VISA

3 14 dei clienti ha entrambe

Qual e la probabilita che un cliente ha almeno una delle 2 carte

P(A) = 022 P(B) = 058

P(A cupB) = P(A) + P(B) minus P(A capB) = 022 + 058 minus 014 = 066

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 55 88

Probabilita condizionata - 1

Se alcune informazioni riguardo lrsquoesito di un esperimento sono disponibiliparliamo di probabilita condizionata

Esempio lancio di 2 dadi

S = (11) (12) (65) (66)

Probabilita che la somma sia 10 (evento B) sapendo che il primo dadomostra 4 (evento A)

(41) (42) (43) (44) (45) (46)

P(B ∣A) = 16

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 56 88

Probabilita condizionata - 2

In generale

P(B ∣A) = P(A capB)P(A)

Supponiamo lrsquoesito sia in A

Per essere anche in B deve essere in entrambi A e B cioe in A capB

Sapendo che A e gia accaduto il nostro nuovo sample space diventa A

la probabilita di A capB viene calcolata rispetto ad A

Nel caso dei dadi

P(B ∣A) = P((46))P((41) (42) (43) (44) (45) (46)) = 136

16= 1

6

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 57 88

Indipendenza

In generale sapere che A e accaduto modifica le chance che B accadaNel caso cio non avvenga cioe se P(B ∣A) = P(B) allora i 2 eventi sidicono indipendenti In questo caso sapere che A e accaduto nonaggiunge alcuna informazione

SiccomeP(A capB) = P(B ∣A)P(A)

Abbiamo che B e indipendente da A se

P(A capB) = P(B)P(A)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 58 88

Esercizi - 1

1 Svolgere gli esercizi di combinatoria

2 Si consideri il seguente esperimento casuale rdquosi lancia tre volte unamonetardquo Qual e lo spazio degli esiti di questo esperimento casualeSi scriva esplicitamente lrsquoevento rdquosi ottengono piu teste che crocirdquo

3 Si consideri il seguente esperimento casuale rdquoSi tirano due dadirdquo Siconsiderino gli eventi E = rdquola somma dei punteggi e disparirdquo F = rdquoilprimo dado realizza un 1rdquo e G = rdquola somma dei punteggi e 5rdquo Sidescrivano gli eventi E cap F E cup F F capG E cap F c e E cap F capG

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 59 88

Esercizi - 2

4 Si consideri il seguente esperimento casuale rdquoUn sistema e compostoda 4 componenti ciascuno dei quali o funziona oppure e guasto Siosserva lo stato dei componenti ottenendo un vettore (x1 x2 x3 x4)dove xi e 1 oppure 0 a seconda che il componente i-esimo funzionioppure nordquo

1 Da quanti elementi e formato lo spazio degli esiti2 Il sistema nel suo insieme funziona fintantoche entrambi i componenti

1 e 2 oppure entrambi i componenti 3 e 4 funzionano Specifica tuttigli esiti dellrsquoevento il rdquosistema funzionardquo

3 Sia E lrsquoevento rdquoi componenti 1 e 3 sono guastirdquo Quanti esiti contiene

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 60 88

Esercizi - 3

5 Si dimostri che in uno spazio degli esiti Ω dotato di una probabilita Pper ogni evento E F sub Ω vale la disuguaglianza seguente

P(E cap F ) ge P(E) + P(F ) minus 1

6 Un gruppo di 5 bambini e 10 bambine e in fila in ordine casuale nelsenso che tutte le 15 possibili permutazioni si suppongonoequiprobabili

1 Qual e la probabilita che il quarto della fila sia un bambino2 E il dodicesimo3 Qual e la probabilita che un determinato bambino occupi la terza

posizione

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 61 88

Esercizi - 4

7 In un comune vi sono 5 alberghi Se 3 persone devono scegliere unalbergo in cui pernottare qual e la probabilita che finiscano tutte inalberghi differenti Che cosa stiamo assumendo senza dirloesplicitamente

8 La media del salario annuale di un gruppo di 100 lavoratori impiegatinellrsquoamministrazione di una grande azienda e di 130000 dollari conuna deviazione standard di 20000 dollari Se si prende una persona acaso da questo gruppo cosa possiamo dire sulla probabilita che il suosalario sia

1 tra i 90000 e i 170000 dollari2 superiore a 150000 dollari

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 62 88

Esercizi - 5

9 In una certa regione vi sono due ditte che producono forni amicroonde Quelli della fabbrica A sono difettosi con probabilita 005mentre quelli della fabbrica B con probabilita 001 Supponi di averacquistato due apparecchi prodotti dalla stessa ditta che puo essere laA o la B con probabilita del 50 Se il primo microonde e difettosoqual e la probabilita condizionata che sia difettoso anche il secondo

10 Hai chiesto ad un vicino di innaffiare una piantina delicata mentre seiin vacanza Pensi che senza acqua la piantina muoia con probabilita08 mentre se innaffiata questa probabilita si ridurrebbe a 015 Latua fiducia che il vicino si ricordi di innaffiarla e del 90

1 Qual e la probabilita che la pianta sia ancora viva al tuo ritorno2 Se fosse morta quale sarebbe la probabilita che il vicino si sia

dimenticato di innaffiarla

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 63 88

Esercizi - 6

11 Una compagnia di assicurazioni classifica i suoi clienti in tre fascebasso rischio medio rischio alto rischio Le sue statistiche indicanoche le probabilita che un cliente delle tre fasce abbia un incidenteentro un periodo di un anno sono rispettivamente 005 015 e 030Se il 20 dei clienti sono a basso rischio il 50 a medio rischio e il30 ad alto rischio che percentuale dei clienti avra mediamenteincidenti in un lasso di un anno Se un cliente non ha avuto incidentinel 1987 qual e la probabilita che appartenga a ciascuna delle trefasce

12 Se un votante scelto a caso e favorevole ad una certa riforma conprobabilita di 07 qual e la probabilita che su 10 votanti esattamente7 siano favorevoli

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 64 88

Variabili aleatorie

Una variabile aleatoria (o anche variabile aleatoria) e una variabile chepuo assumere valori diversi in dipendenza da qualche fenomeno aleatorio

fenomeno lancio di 2 dadivariabile aleatoria somma dei 2 dadi

fenomeno 3 lanci di una monetavariabile aleatoria numero di rdquotesterdquo complessivo

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 65 88

Funzione di Ripartizione

Sia X una variabile aleatoria Si chiama funzione di ripartizione di X lafunzione F che associa ad ogni numero reale a la probabilita che X siaminore o uguale ad a cioe P(X le a) = FX (a)

Nel caso della moneta (fair) lanciata 3 volte (X indica il numero di testecomplessivo)

FX (a) =

⎧⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎨⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎩

0 if a lt 0

18 per 0 le a lt 1

18 + 38 = 48 per 1 le a lt 2

48 + 38 = 78 per 2 le a lt 3

88 = 1 per a ge 3

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 66 88

Funzione di densita o di massa

Sia X una variabile aleatoria Si chiama funzione di densita di X lafunzione f che associa ad ogni numero reale a la probabilita che X siauguale ad a indicata con fX (a)

Nel caso della moneta (fair) lanciata 3 volte (X indica il numero di testecomplessivo)

fX (a) =

⎧⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎨⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎩

18 per a = 0

38 per a = 1

38 per a = 2

18 per a = 3

0 altrimenti

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 67 88

Valore Atteso

Chiamato anche media (expectation in inglese) e appunto una mediapesata dei possibili valori di una variabile aleatoria Il peso dato a ciascunvalore e la probabilita data a quello specifico valore

E[X ] =sumi

aiP(X = ai)

Esempio dado truccato

valore 6 con probabilita 712

valori da 1 a 5 con probabilita 112

La variabile aleatoria X indica la faccia risultante dal lancio di un dado

E[X ] = 1

12lowast 1 + 1

12lowast 2 + 1

12lowast 3 + 1

12lowast 4 + 1

12lowast 5 + 7

12lowast 6 = 475

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 68 88

Valore Atteso - Proprieta

Sia X una variabile aleatoria con valore atteso E[X ] Se c e una costanteallora anche cX e X + c sono variabili casuali In particolare valgono leseguenti proprieta

E[cX ] = cE[X ]E[X + c] = E[X ] + c

Sia Y una variabile aleatoria Allora

E[X +Y ] = E[X ] +E[Y ]se e solo se X e Y sono independenti

E[XY ] = E[X ]E[Y ]

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 69 88

Varianza

Ersquo il valore atteso del quadrato della differenza tra la variabile aleatoria e ilsuo valore atteso

Var(X ) = E[(X minusE[X ])2] = E[X 2] minus (E[X ])2

La radice quadrata viene detta deviazione standard di X

Esempio dado truccato

E[X 2] = 1

12lowast 12 + 1

12lowast 22 + 1

12lowast 32 + 1

12lowast 42 + 1

12lowast 52 + 7

12lowast 62 ≃ 255

Var(X ) = E[X 2] minus (E[X ])2 ≃ 255 minus 4752 ≃ 3

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 70 88

Varianza - proprieta

Sia X una variabile aleatoria e c una costante Allora valgono le seguentiproprieta

1 Var(cX ) = c2Var(X )

2 Var(X + c) = Var(X )

NOTA

Var(X +X ) ne Var(X ) +Var(X )

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 71 88

Covarianza

Siano X Y due variabili aleatorie con valore atteso rispettivamenteE[X ] = microX e E[Y ] = microY La covarianza e definita come segue

Cov(X Y ) = E[(X minus microX )(Y minus microY )] = = E[XY ] minus microXmicroY

Proprieta

1 Cov(X Y ) = Cov(Y X )2 Cov(X X ) = Var(X )3 Sia a una costante allora

Cov(aX Y ) = aCov(X Y )

4 Sia Z una variabile aleatoria allora

Cov(X + Z Y ) = Cov(X Y ) + Cov(Z Y )

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 72 88

Esercizi - 1

1 Consideriamo una variabile aleatoria X che puo assumere i valori 12o 3 Se sappiamo che

fX (1) = 1

3 fX (2) = 3

7

1 Quanto vale fX (3)2 Disegnare il grafico di questa funzione di massa3 Disegnare il grafico della relativa funzione di ripartizione

2 Dimostrare che se X1 e X2 hanno la stessa distribuzione allora

Cov(X1 +X2X1 minusX2) = 0

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 73 88

Esercizi - 2

3 La funzione di ripartizione di X e definita come segue

FX (x) =

⎧⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎨⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎩

0 per x le 0

x2 per 0 le x lt 1

23 per 1 le x lt 2

1112 per 2 le x lt 3

1 per x ge 3

Se ne tracci il graficoQuanto vale P(X gt 12)Quanto vale P(2 le X le 4)Quanto vale P(X le 3)Quanto vale P(X = 1)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 74 88

Esercizi - 3

4 Un tipo di prodotti vengono classificati a seconda dei loro difetti edella fabbrica che li ha prodotti Sia X1 il numero (1 o 2) dellafabbrica e sia X2 il numero di difetti per pezzo (che possono essere da0 a 3) di un prodotto scelto a caso tra la totalita di quelli esistentiLa tabella seguente riporta la funzione di massa di probabilitacongiunta per queste due variabili aleatorie discrete Le righe siriferiscono alla variabile X1 mentre le colonne alla variabile X2

Trova le distribuzioni marginali di X1 e X2Calcola media e varianza di X2

0 1 2 31 18 116 316 182 116 116 18 14

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 75 88

Scipy

Scipy e un modulo che permette di utilizzare varie distribuzioni diprobabilita sia di tipo discreto che continuo

La sintassi generale e la seguente Scipystatsltnome distribuzionegt

rvs(size=z) restituisce un vettore di numeri casuali estrattisecondo la distribuzione di lunghezza z

pdf(x) restituisce il vettore della densita della distribuzionevalutata nei valori del vettore di input x (pmf per le discrete)

cdf(x) restituisce il vettore della funzione di ripartizione (ocumulativa) della distribuzione valutata nei valori del vettore di inputx

ppf(q) restituisce il vettore dei quantili della distribuzione valutatanei valori del vettore di input q

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 76 88

Variabili aleatorie discrete Binomiale

gtgtgt from scipystats import binom

gtgtgt rv = binom(n p)

rvrvs(x) restituisce un vettore di x numeri estratti secondo unadistribuzione Binomiale di parametri n p

rvpmf(x) restituisce la probabilita di ottenere esattamente x

successi in un esperimento dicotomico (01) ripetuto n volte con unaprobabilita di successo p (x puo essere un vettore)

rvcdf(q) restituisce il valore della funzione di ripartizione in q (qpuo essere un vettore)

rvppf(p) restituisce il valore del quantile di ordine p

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 77 88

Variabili aleatorie discrete Ipergeometrica

Supponiamo di avere M = 20 animali di cui n = 7 cani Se vogliamosapere la probabilita di trovare un dato numero di cani se scegliamoN = 12 dei 20 animali in maniera casuale possiamo usare una distribuzioneipergeometrica in questo modo

gtgtgt from scipystats import hypergeom

gtgtgt [M n N] = [20 7 12]

gtgtgt rv = hypergeom(M n N)

rvpmf(x) restituisce la probabilita di estrarre esattamente x cani

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 78 88

Variabili aleatorie discrete Geometrica

gtgtgt from scipystats import geom

gtgtgt rv = geom(p)

rvpmf(x) restituisce la probabilita di avere un successo dopoesattamente x insuccessi in una successione di esperimenti dicotomici(esito 01) con una probabilita di successo p (x puo essere un vettore)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 79 88

Variabili aleatorie discrete Poisson

La distribuzione di Poisson viene usata spesso come modello per il numerodi volte per cui un evento avviene in un dato intervallo di tempo (ospazio) Ad esempio si puo utilizzare per misurare il numero di chiamatericevute da un call center in una mattinata

gtgtgt from scipystats import poisson

gtgtgt mu = 2

gtgtgt rv = poisson(mu)

rvpmf(x) restituisce il seguente valore

f (x) = exp(minusmicro)microx

x

In questo caso x rappresenta il numero di eventi per cui si vuole calcolarela probabilita sapendo che in media ne accadono micro

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 80 88

Variabili aleatorie continue Uniforme

In Scipy la funzione uniforme e soltanto continua Questo significa chenella generazione di numeri casuali otterro dati di tipo float Possiamotuttavia simulare una variabile discreta estraendo la parte intera delrisultato ottenuto

gtgtgt from scipystats import uniform

gtgtgt rv = uniform()

Il comando uniform() crea una distribuzione uniforme nellrsquointervallo[01] Possiamo creare una distribuzione uniforme qualsiasi usandouniform(x y - x) per lrsquointervallo [x y]

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 81 88

Variabili aleatorie continue

norm(mu sigma) variabile Gaussiana (o Normale) di media micro edeviazione standard σ

expon(scale = 1 lambda) variabile Esponenziale di parametroλ

Altre distribuzioni (con relativa documentazione) disponibili suhttpsdocsscipyorgdocscipyreferencestatshtml

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 82 88

Esercizi - 1

1 Unrsquourna contiene 10 palline di cui 4 bianche e 6 nere Si eseguono 5estrazioni con reimmissione

1 Tracciare grafico della funzione massa di probabilita della variabilecasuale X = rdquonumero di palline bianche estratterdquo

2 Calcolare la probabilita di estrarre 2 palline bianche3 Calcolare la probabilita di estrarre al piu 2 palline bianche4 Calcolare la probabilita di estrarre almeno 2 palline bianche5 Qual e il numero minimo x tale che la probabilita di estrarre al piu x

palline bianche sia almeno 08

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 83 88

Esercizi - 2

2 Si eseguono 10 estrazioni senza reimmissione da unrsquourna

1 Tracciare il grafico della funzione massa di probabilita della variabilecasuale X = rdquonumero di palline bianche estratterdquo nei seguenti casi

1 lrsquourna contiene 100 palline di cui 20 bianche e le restanti nere2 lrsquourna contiene 100 palline di cui 2 bianche e le restanti nere

2 Tracciare il grafico della funzione massa di probabilita della variabilecasuale X nel caso dellrsquourna 1 se si eseguono 25 estrazioni

3 Consideriamo lrsquourna 1 e N = 10 estrazioni Si aumenti il numero totaleM di palline nellrsquourna mantenendo uguale a 02 la frazione di pallinebianche Per ciascun valore di M confrontare graficamente ladistribuzione di probabilita del numero di palline bianche estratte nelcaso di estrazioni con e senza reimmissione Provare con 20 40 e 200palline bianche

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 84 88

Esercizi - 3

3 Calcolare la probabilita di ottenere piu teste che croci lanciando 7volte una moneta truccata con probabilita di avere croce pari a 045

4 Calcolare la probabilita di avere almeno 3 sei lanciando 5 dadi a 12facce

5 Calcolare la probabilita di estrarre 20 euro da un sacco contenente 47monete da 1 centesimo e 53 da 2 euro estraendo (uniformemente) acaso 10 monete senza reinserirle

6 Un grammo di uranio emette mediamente 2152 particelle α ognimillisecondo Qual e con buona approssimazione la probabilita che ungrammo di uranio emetta al piu 2000 particelle α in un millisecondo

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 85 88

Esercizi - 4

7 Un uomo si risveglia in mezzo al deserto senza acqua Dopo ogniminuto ha una probabilita del 3 di perdere conoscenza per via dellecondizioni estreme Calcolare la probabilita che lrsquouomo perdaconoscenza dopo almeno due ore e la probabilita che lrsquouomo perdaconoscenza dopo esattamente un quarto drsquoora

8 Sia X una variabile aleatoria normale di parametri micro = 10 e σ = 36Calcola

1 P(X gt 5)2 P(4 le X le 16)3 P(X le 8)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 86 88

Esercizi - 5

9 Il numero di errori tipografici per pagina di una certa rivista segue unadistribuzione di Poisson Sapendo che mediamente sono presenti 02errori per pagina determinare la probabilita che una pagina contenga

1 nessun refuso2 piu refusi

10 Arrivi alla fermata dellrsquoautobus alle 1000 e sei certo che ne passerauno in un momento distribuito uniformemente tra le 1000 e le 1030

1 Qual e la probabilita che tu debba aspettare piu di 10 minuti2 Se alle 1015 lrsquoautobus non e ancora arrivato qual e la probabilita che

tu debba aspettare almeno altri 10 minuti

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 87 88

Esercizi - 6

11 Il signor Jones e convinto che il tempo di vita di una automobile (inmigliaia di chilometri percorse) sia una variabile aleatoria esponenzialedi parametro 120 Il signor Smith ha una macchina usata da vendereche ha percorso circa 10 000 chilometri

1 Se il signor Jones decide di comprarla che probabilita ha di farle farealmeno altri 20 000 chilometri prima che sia da buttare

2 Il modello assunto dal signor Jones e ragionevole

12 Sia X una variabile casuale binomiale di parametri n = 100 e p = 07

1 Tracciate la funzione di ripartizione di X2 Calcolate il primo quartile il quantile di ordine 09 e la mediana di X3 Calcolare la probabilita P(X le 60)4 Calcolare la probabilita P(X le 88)5 Trovare il piu piccolo valore x tale che P(X le x) ge 09

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 88 88

  • Lezione 1
    • Script in Python
    • Numpy
    • Esercizi
    • Pandas
    • Esercizi
      • Lezione 2
        • File csv
        • DataFrame
        • Accesso ai DataFrame
        • Frequenze
        • Esercizi
          • Lezione 3
            • Matplotlib
            • Grafici a Barre
            • Istogrammi
            • Cumulativa empirica
            • Boxplot
            • QQplot
            • Diagramma di Pareto
            • Esercizi
              • Lezione 4
                • Definizioni
                • Probabilitagrave condizionata
                • Indipendenza
                • Esercizi
                  • Lezione 5
                    • Variabili Aleatorie
                    • Funzione di Ripartizione
                    • Funzione di Densitagrave
                    • Valore Atteso
                    • Varianza
                    • Covarianza
                    • Esercizi
                      • Lezione 6
                        • Scipy - Variabili Discrete
                        • Scipy - Variabili continue
                        • Esercizi

Accesso tramite unrsquoespressione logica

gtgtgt df film[rsquoannorsquo gt 1998]

titolo

Il padrino False

Pulp Fiction False

Fight Club True

Quasi Amici True

gtgtgt df film[df film[rsquoannorsquo] gt 1998]

titolo paese anno durata genere voto

Fight Club USA 19990 1390 Thriller 40

Quasi Amici FRA 20110 1120 Commedia 35

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 32 88

Metodi dei DataFrame

La classe DataFrame ha diversi metodi Elenchiamo qui i piu importanti

DataFrameappend() permette di estendere il DataFrame

DataFramedrop duplicates() restituisce un DataFrame senza righeduplicate

DataFramedropna() Eliminare i valori Nan da un DataFrame

DataFramesort values() permette di ordinare il DataFrame

DataFramemax() DataFramemin() DataFramemean()DataFramemedian()

Per la completa documentazione si puo utilizzare il comandohelp(pdDataFrame) oppure andare al seguente linkhttpspandaspydataorgpandas-docsstablegenerated

pandasDataFramehtml

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 33 88

Frequenze

La frequenza assoluta indica il numero di volte che una dataosservazione occorre in un campione

La frequenza relativa e un valore tra 0 e 1 che permette di valutare inmaniera piu efficace la frequenza di un osservazione Si calcoladividendo la frequenza assoluta per il numero totale di casi

Per calcolare questa quantita in Pandas possiamo utilizzare la funzionevalue counts() che opera su una Series

In alternativa si puo utilizzare la funzione pdcrosstab che calcolaqueste frequenze in automatico restituendole in output in un DataFrame

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 34 88

Esercizi

Utilizzando il file dati-ospedalicsv dai csv del laboratorio

1 Leggere il file e visualizzarlo in un DataFrame

2 Calcolare le frequenze assolute e relative dellrsquoattributo Regioneusando crosstab

3 Ottenere la singola serie relativa allrsquoattributo Regione e calcolarne lafrequenza assoluta e relativa senza usare crosstab

4 Estrarre un sottodataframe contenente le colonne Nome (attributoDenominazione Str Pubblica New) e Numero di medici (attributoMedici SSN) degli ospedali aventi meno di 200 medici

5 Visualizzare il nome degli ospedali della regione Lombardia

6 Calcolare il numero medio di ingegneri (Ingegneri SSN) presenti negliospedali campani

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 35 88

Esercizi

7 Calcolare la varianza del numero di assistenti sociali (Assistenti socialiSSN) negli ospedali con piu di 400 medici

8 Qual e lrsquoospedale con meno medici

9 Visualizzare in ordine alfabetico il nome dei primi 10 ospedali pernumero di medici

10 Visualizzare il numero degli ospedali che hanno dichiarato il numerodi odontoiatri (per cui il valore e diverso da NaN) (OdontoiatriUniversitari)

11 Visualizzare il numero degli ospedali che hanno dichiarato il numerodi odontoiatri (Odontoiatri Universitari) e per cui questo numero emaggiore di 0

12 Calcolare le frequenze assolute per lrsquoattributo Odontoiatri SSNTrasformare questo risultato in frequenze relative

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 36 88

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) SAD 20182019 January 12 2019 37 88

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) SAD 20182019 January 12 2019 38 88

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) SAD 20182019 January 12 2019 39 88

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) SAD 20182019 January 12 2019 40 88

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) SAD 20182019 January 12 2019 41 88

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) SAD 20182019 January 12 2019 42 88

Grafici con le Series

In generale possiamo tracciare diversi tipi di grafici con le Series

rsquolinersquo line plot (default)

rsquobarrsquo vertical bar plot

rsquobarhrsquo horizontal bar plot

rsquohistrsquo histogram

rsquoboxrsquo boxplot

rsquokdersquo Kernel Density Estimation plot

rsquodensityrsquo same as rsquokdersquo

rsquoarearsquo area plot

rsquopiersquo pie plot

Per saperne di piu consultare questo link

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 43 88

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) SAD 20182019 January 12 2019 44 88

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) SAD 20182019 January 12 2019 45 88

Boxplot

Rappresenta la distribuzione di un vettore di numeri cerchiando gli outlier

gtgtgt weight = heroes[rsquoWeightrsquo]

gtgtgt weightplotbox()

gtgtgt pltshow()

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 46 88

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) SAD 20182019 January 12 2019 47 88

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) SAD 20182019 January 12 2019 48 88

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) SAD 20182019 January 12 2019 49 88

Esercizi - 1

Utilizzando il file capellicsv dai csv del laboratorio

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) SAD 20182019 January 12 2019 50 88

Esercizi - 2

Utilizzando il file dati-ospedalicsv dai csv del laboratorio

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 e canipdf

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 51 88

Sample space

Un esperimento e qualsiasi processo che produce una realizzazione (oosservazione) Lrsquoinsieme di tutte le possibili realizzazioni di un esperimentoviene detto sample space ed indicato con S

lancio di 2 monete

S = (T T ) (T C) (C T ) (C C)

gara di 3 cavalli (ab c)

S = tutti i possibili ordinamenti di(ab c)= (ab c) (a cb) (c b a)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 52 88

Eventi

lancio di 2 monete

S = (T T ) (T C) (C T ) (C C)

A = 2 monete uguali

A = (T T ) (C C)

B = 2 monete diverse

B = Ac = (T C) (C T )

gara di 3 cavalli

A = cavallo a vincente

A = (ab c) (a c b)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 53 88

Probabilita - 1

Consideriamo un esperimento con sample space S Supponiamo che adogni evento A sia associato un numero chiamato probabilita di A edindicato con P(A) che soddisfa le seguenti proprieta

1 Per ogni evento A la probabilita di A e un numero tra 0 e 1

0 le P(A) le 1

2 La probabilita del sample space S e 1

P(S) = 1

3 La probabilita dellrsquounione di eventi disgiunti e uguale alla somma delleprobabilita di tali eventi

P(A cupB) = P(A) + P(B)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 54 88

Probabilita - 2

In generale 2 eventi potrebbero non essere disgiunti

P(A cupB) = P(A) + P(B) minus P(A capB)

Esempio un certo negozio accetta pagamenti o con carte di credito VISAo Mastercard

1 22 dei clienti ha Mastercard

2 58 dei clienti ha VISA

3 14 dei clienti ha entrambe

Qual e la probabilita che un cliente ha almeno una delle 2 carte

P(A) = 022 P(B) = 058

P(A cupB) = P(A) + P(B) minus P(A capB) = 022 + 058 minus 014 = 066

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 55 88

Probabilita condizionata - 1

Se alcune informazioni riguardo lrsquoesito di un esperimento sono disponibiliparliamo di probabilita condizionata

Esempio lancio di 2 dadi

S = (11) (12) (65) (66)

Probabilita che la somma sia 10 (evento B) sapendo che il primo dadomostra 4 (evento A)

(41) (42) (43) (44) (45) (46)

P(B ∣A) = 16

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 56 88

Probabilita condizionata - 2

In generale

P(B ∣A) = P(A capB)P(A)

Supponiamo lrsquoesito sia in A

Per essere anche in B deve essere in entrambi A e B cioe in A capB

Sapendo che A e gia accaduto il nostro nuovo sample space diventa A

la probabilita di A capB viene calcolata rispetto ad A

Nel caso dei dadi

P(B ∣A) = P((46))P((41) (42) (43) (44) (45) (46)) = 136

16= 1

6

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 57 88

Indipendenza

In generale sapere che A e accaduto modifica le chance che B accadaNel caso cio non avvenga cioe se P(B ∣A) = P(B) allora i 2 eventi sidicono indipendenti In questo caso sapere che A e accaduto nonaggiunge alcuna informazione

SiccomeP(A capB) = P(B ∣A)P(A)

Abbiamo che B e indipendente da A se

P(A capB) = P(B)P(A)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 58 88

Esercizi - 1

1 Svolgere gli esercizi di combinatoria

2 Si consideri il seguente esperimento casuale rdquosi lancia tre volte unamonetardquo Qual e lo spazio degli esiti di questo esperimento casualeSi scriva esplicitamente lrsquoevento rdquosi ottengono piu teste che crocirdquo

3 Si consideri il seguente esperimento casuale rdquoSi tirano due dadirdquo Siconsiderino gli eventi E = rdquola somma dei punteggi e disparirdquo F = rdquoilprimo dado realizza un 1rdquo e G = rdquola somma dei punteggi e 5rdquo Sidescrivano gli eventi E cap F E cup F F capG E cap F c e E cap F capG

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 59 88

Esercizi - 2

4 Si consideri il seguente esperimento casuale rdquoUn sistema e compostoda 4 componenti ciascuno dei quali o funziona oppure e guasto Siosserva lo stato dei componenti ottenendo un vettore (x1 x2 x3 x4)dove xi e 1 oppure 0 a seconda che il componente i-esimo funzionioppure nordquo

1 Da quanti elementi e formato lo spazio degli esiti2 Il sistema nel suo insieme funziona fintantoche entrambi i componenti

1 e 2 oppure entrambi i componenti 3 e 4 funzionano Specifica tuttigli esiti dellrsquoevento il rdquosistema funzionardquo

3 Sia E lrsquoevento rdquoi componenti 1 e 3 sono guastirdquo Quanti esiti contiene

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 60 88

Esercizi - 3

5 Si dimostri che in uno spazio degli esiti Ω dotato di una probabilita Pper ogni evento E F sub Ω vale la disuguaglianza seguente

P(E cap F ) ge P(E) + P(F ) minus 1

6 Un gruppo di 5 bambini e 10 bambine e in fila in ordine casuale nelsenso che tutte le 15 possibili permutazioni si suppongonoequiprobabili

1 Qual e la probabilita che il quarto della fila sia un bambino2 E il dodicesimo3 Qual e la probabilita che un determinato bambino occupi la terza

posizione

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 61 88

Esercizi - 4

7 In un comune vi sono 5 alberghi Se 3 persone devono scegliere unalbergo in cui pernottare qual e la probabilita che finiscano tutte inalberghi differenti Che cosa stiamo assumendo senza dirloesplicitamente

8 La media del salario annuale di un gruppo di 100 lavoratori impiegatinellrsquoamministrazione di una grande azienda e di 130000 dollari conuna deviazione standard di 20000 dollari Se si prende una persona acaso da questo gruppo cosa possiamo dire sulla probabilita che il suosalario sia

1 tra i 90000 e i 170000 dollari2 superiore a 150000 dollari

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 62 88

Esercizi - 5

9 In una certa regione vi sono due ditte che producono forni amicroonde Quelli della fabbrica A sono difettosi con probabilita 005mentre quelli della fabbrica B con probabilita 001 Supponi di averacquistato due apparecchi prodotti dalla stessa ditta che puo essere laA o la B con probabilita del 50 Se il primo microonde e difettosoqual e la probabilita condizionata che sia difettoso anche il secondo

10 Hai chiesto ad un vicino di innaffiare una piantina delicata mentre seiin vacanza Pensi che senza acqua la piantina muoia con probabilita08 mentre se innaffiata questa probabilita si ridurrebbe a 015 Latua fiducia che il vicino si ricordi di innaffiarla e del 90

1 Qual e la probabilita che la pianta sia ancora viva al tuo ritorno2 Se fosse morta quale sarebbe la probabilita che il vicino si sia

dimenticato di innaffiarla

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 63 88

Esercizi - 6

11 Una compagnia di assicurazioni classifica i suoi clienti in tre fascebasso rischio medio rischio alto rischio Le sue statistiche indicanoche le probabilita che un cliente delle tre fasce abbia un incidenteentro un periodo di un anno sono rispettivamente 005 015 e 030Se il 20 dei clienti sono a basso rischio il 50 a medio rischio e il30 ad alto rischio che percentuale dei clienti avra mediamenteincidenti in un lasso di un anno Se un cliente non ha avuto incidentinel 1987 qual e la probabilita che appartenga a ciascuna delle trefasce

12 Se un votante scelto a caso e favorevole ad una certa riforma conprobabilita di 07 qual e la probabilita che su 10 votanti esattamente7 siano favorevoli

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 64 88

Variabili aleatorie

Una variabile aleatoria (o anche variabile aleatoria) e una variabile chepuo assumere valori diversi in dipendenza da qualche fenomeno aleatorio

fenomeno lancio di 2 dadivariabile aleatoria somma dei 2 dadi

fenomeno 3 lanci di una monetavariabile aleatoria numero di rdquotesterdquo complessivo

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 65 88

Funzione di Ripartizione

Sia X una variabile aleatoria Si chiama funzione di ripartizione di X lafunzione F che associa ad ogni numero reale a la probabilita che X siaminore o uguale ad a cioe P(X le a) = FX (a)

Nel caso della moneta (fair) lanciata 3 volte (X indica il numero di testecomplessivo)

FX (a) =

⎧⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎨⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎩

0 if a lt 0

18 per 0 le a lt 1

18 + 38 = 48 per 1 le a lt 2

48 + 38 = 78 per 2 le a lt 3

88 = 1 per a ge 3

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 66 88

Funzione di densita o di massa

Sia X una variabile aleatoria Si chiama funzione di densita di X lafunzione f che associa ad ogni numero reale a la probabilita che X siauguale ad a indicata con fX (a)

Nel caso della moneta (fair) lanciata 3 volte (X indica il numero di testecomplessivo)

fX (a) =

⎧⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎨⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎩

18 per a = 0

38 per a = 1

38 per a = 2

18 per a = 3

0 altrimenti

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 67 88

Valore Atteso

Chiamato anche media (expectation in inglese) e appunto una mediapesata dei possibili valori di una variabile aleatoria Il peso dato a ciascunvalore e la probabilita data a quello specifico valore

E[X ] =sumi

aiP(X = ai)

Esempio dado truccato

valore 6 con probabilita 712

valori da 1 a 5 con probabilita 112

La variabile aleatoria X indica la faccia risultante dal lancio di un dado

E[X ] = 1

12lowast 1 + 1

12lowast 2 + 1

12lowast 3 + 1

12lowast 4 + 1

12lowast 5 + 7

12lowast 6 = 475

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 68 88

Valore Atteso - Proprieta

Sia X una variabile aleatoria con valore atteso E[X ] Se c e una costanteallora anche cX e X + c sono variabili casuali In particolare valgono leseguenti proprieta

E[cX ] = cE[X ]E[X + c] = E[X ] + c

Sia Y una variabile aleatoria Allora

E[X +Y ] = E[X ] +E[Y ]se e solo se X e Y sono independenti

E[XY ] = E[X ]E[Y ]

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 69 88

Varianza

Ersquo il valore atteso del quadrato della differenza tra la variabile aleatoria e ilsuo valore atteso

Var(X ) = E[(X minusE[X ])2] = E[X 2] minus (E[X ])2

La radice quadrata viene detta deviazione standard di X

Esempio dado truccato

E[X 2] = 1

12lowast 12 + 1

12lowast 22 + 1

12lowast 32 + 1

12lowast 42 + 1

12lowast 52 + 7

12lowast 62 ≃ 255

Var(X ) = E[X 2] minus (E[X ])2 ≃ 255 minus 4752 ≃ 3

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 70 88

Varianza - proprieta

Sia X una variabile aleatoria e c una costante Allora valgono le seguentiproprieta

1 Var(cX ) = c2Var(X )

2 Var(X + c) = Var(X )

NOTA

Var(X +X ) ne Var(X ) +Var(X )

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 71 88

Covarianza

Siano X Y due variabili aleatorie con valore atteso rispettivamenteE[X ] = microX e E[Y ] = microY La covarianza e definita come segue

Cov(X Y ) = E[(X minus microX )(Y minus microY )] = = E[XY ] minus microXmicroY

Proprieta

1 Cov(X Y ) = Cov(Y X )2 Cov(X X ) = Var(X )3 Sia a una costante allora

Cov(aX Y ) = aCov(X Y )

4 Sia Z una variabile aleatoria allora

Cov(X + Z Y ) = Cov(X Y ) + Cov(Z Y )

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 72 88

Esercizi - 1

1 Consideriamo una variabile aleatoria X che puo assumere i valori 12o 3 Se sappiamo che

fX (1) = 1

3 fX (2) = 3

7

1 Quanto vale fX (3)2 Disegnare il grafico di questa funzione di massa3 Disegnare il grafico della relativa funzione di ripartizione

2 Dimostrare che se X1 e X2 hanno la stessa distribuzione allora

Cov(X1 +X2X1 minusX2) = 0

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 73 88

Esercizi - 2

3 La funzione di ripartizione di X e definita come segue

FX (x) =

⎧⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎨⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎩

0 per x le 0

x2 per 0 le x lt 1

23 per 1 le x lt 2

1112 per 2 le x lt 3

1 per x ge 3

Se ne tracci il graficoQuanto vale P(X gt 12)Quanto vale P(2 le X le 4)Quanto vale P(X le 3)Quanto vale P(X = 1)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 74 88

Esercizi - 3

4 Un tipo di prodotti vengono classificati a seconda dei loro difetti edella fabbrica che li ha prodotti Sia X1 il numero (1 o 2) dellafabbrica e sia X2 il numero di difetti per pezzo (che possono essere da0 a 3) di un prodotto scelto a caso tra la totalita di quelli esistentiLa tabella seguente riporta la funzione di massa di probabilitacongiunta per queste due variabili aleatorie discrete Le righe siriferiscono alla variabile X1 mentre le colonne alla variabile X2

Trova le distribuzioni marginali di X1 e X2Calcola media e varianza di X2

0 1 2 31 18 116 316 182 116 116 18 14

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 75 88

Scipy

Scipy e un modulo che permette di utilizzare varie distribuzioni diprobabilita sia di tipo discreto che continuo

La sintassi generale e la seguente Scipystatsltnome distribuzionegt

rvs(size=z) restituisce un vettore di numeri casuali estrattisecondo la distribuzione di lunghezza z

pdf(x) restituisce il vettore della densita della distribuzionevalutata nei valori del vettore di input x (pmf per le discrete)

cdf(x) restituisce il vettore della funzione di ripartizione (ocumulativa) della distribuzione valutata nei valori del vettore di inputx

ppf(q) restituisce il vettore dei quantili della distribuzione valutatanei valori del vettore di input q

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 76 88

Variabili aleatorie discrete Binomiale

gtgtgt from scipystats import binom

gtgtgt rv = binom(n p)

rvrvs(x) restituisce un vettore di x numeri estratti secondo unadistribuzione Binomiale di parametri n p

rvpmf(x) restituisce la probabilita di ottenere esattamente x

successi in un esperimento dicotomico (01) ripetuto n volte con unaprobabilita di successo p (x puo essere un vettore)

rvcdf(q) restituisce il valore della funzione di ripartizione in q (qpuo essere un vettore)

rvppf(p) restituisce il valore del quantile di ordine p

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 77 88

Variabili aleatorie discrete Ipergeometrica

Supponiamo di avere M = 20 animali di cui n = 7 cani Se vogliamosapere la probabilita di trovare un dato numero di cani se scegliamoN = 12 dei 20 animali in maniera casuale possiamo usare una distribuzioneipergeometrica in questo modo

gtgtgt from scipystats import hypergeom

gtgtgt [M n N] = [20 7 12]

gtgtgt rv = hypergeom(M n N)

rvpmf(x) restituisce la probabilita di estrarre esattamente x cani

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 78 88

Variabili aleatorie discrete Geometrica

gtgtgt from scipystats import geom

gtgtgt rv = geom(p)

rvpmf(x) restituisce la probabilita di avere un successo dopoesattamente x insuccessi in una successione di esperimenti dicotomici(esito 01) con una probabilita di successo p (x puo essere un vettore)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 79 88

Variabili aleatorie discrete Poisson

La distribuzione di Poisson viene usata spesso come modello per il numerodi volte per cui un evento avviene in un dato intervallo di tempo (ospazio) Ad esempio si puo utilizzare per misurare il numero di chiamatericevute da un call center in una mattinata

gtgtgt from scipystats import poisson

gtgtgt mu = 2

gtgtgt rv = poisson(mu)

rvpmf(x) restituisce il seguente valore

f (x) = exp(minusmicro)microx

x

In questo caso x rappresenta il numero di eventi per cui si vuole calcolarela probabilita sapendo che in media ne accadono micro

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 80 88

Variabili aleatorie continue Uniforme

In Scipy la funzione uniforme e soltanto continua Questo significa chenella generazione di numeri casuali otterro dati di tipo float Possiamotuttavia simulare una variabile discreta estraendo la parte intera delrisultato ottenuto

gtgtgt from scipystats import uniform

gtgtgt rv = uniform()

Il comando uniform() crea una distribuzione uniforme nellrsquointervallo[01] Possiamo creare una distribuzione uniforme qualsiasi usandouniform(x y - x) per lrsquointervallo [x y]

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 81 88

Variabili aleatorie continue

norm(mu sigma) variabile Gaussiana (o Normale) di media micro edeviazione standard σ

expon(scale = 1 lambda) variabile Esponenziale di parametroλ

Altre distribuzioni (con relativa documentazione) disponibili suhttpsdocsscipyorgdocscipyreferencestatshtml

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 82 88

Esercizi - 1

1 Unrsquourna contiene 10 palline di cui 4 bianche e 6 nere Si eseguono 5estrazioni con reimmissione

1 Tracciare grafico della funzione massa di probabilita della variabilecasuale X = rdquonumero di palline bianche estratterdquo

2 Calcolare la probabilita di estrarre 2 palline bianche3 Calcolare la probabilita di estrarre al piu 2 palline bianche4 Calcolare la probabilita di estrarre almeno 2 palline bianche5 Qual e il numero minimo x tale che la probabilita di estrarre al piu x

palline bianche sia almeno 08

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 83 88

Esercizi - 2

2 Si eseguono 10 estrazioni senza reimmissione da unrsquourna

1 Tracciare il grafico della funzione massa di probabilita della variabilecasuale X = rdquonumero di palline bianche estratterdquo nei seguenti casi

1 lrsquourna contiene 100 palline di cui 20 bianche e le restanti nere2 lrsquourna contiene 100 palline di cui 2 bianche e le restanti nere

2 Tracciare il grafico della funzione massa di probabilita della variabilecasuale X nel caso dellrsquourna 1 se si eseguono 25 estrazioni

3 Consideriamo lrsquourna 1 e N = 10 estrazioni Si aumenti il numero totaleM di palline nellrsquourna mantenendo uguale a 02 la frazione di pallinebianche Per ciascun valore di M confrontare graficamente ladistribuzione di probabilita del numero di palline bianche estratte nelcaso di estrazioni con e senza reimmissione Provare con 20 40 e 200palline bianche

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 84 88

Esercizi - 3

3 Calcolare la probabilita di ottenere piu teste che croci lanciando 7volte una moneta truccata con probabilita di avere croce pari a 045

4 Calcolare la probabilita di avere almeno 3 sei lanciando 5 dadi a 12facce

5 Calcolare la probabilita di estrarre 20 euro da un sacco contenente 47monete da 1 centesimo e 53 da 2 euro estraendo (uniformemente) acaso 10 monete senza reinserirle

6 Un grammo di uranio emette mediamente 2152 particelle α ognimillisecondo Qual e con buona approssimazione la probabilita che ungrammo di uranio emetta al piu 2000 particelle α in un millisecondo

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 85 88

Esercizi - 4

7 Un uomo si risveglia in mezzo al deserto senza acqua Dopo ogniminuto ha una probabilita del 3 di perdere conoscenza per via dellecondizioni estreme Calcolare la probabilita che lrsquouomo perdaconoscenza dopo almeno due ore e la probabilita che lrsquouomo perdaconoscenza dopo esattamente un quarto drsquoora

8 Sia X una variabile aleatoria normale di parametri micro = 10 e σ = 36Calcola

1 P(X gt 5)2 P(4 le X le 16)3 P(X le 8)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 86 88

Esercizi - 5

9 Il numero di errori tipografici per pagina di una certa rivista segue unadistribuzione di Poisson Sapendo che mediamente sono presenti 02errori per pagina determinare la probabilita che una pagina contenga

1 nessun refuso2 piu refusi

10 Arrivi alla fermata dellrsquoautobus alle 1000 e sei certo che ne passerauno in un momento distribuito uniformemente tra le 1000 e le 1030

1 Qual e la probabilita che tu debba aspettare piu di 10 minuti2 Se alle 1015 lrsquoautobus non e ancora arrivato qual e la probabilita che

tu debba aspettare almeno altri 10 minuti

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 87 88

Esercizi - 6

11 Il signor Jones e convinto che il tempo di vita di una automobile (inmigliaia di chilometri percorse) sia una variabile aleatoria esponenzialedi parametro 120 Il signor Smith ha una macchina usata da vendereche ha percorso circa 10 000 chilometri

1 Se il signor Jones decide di comprarla che probabilita ha di farle farealmeno altri 20 000 chilometri prima che sia da buttare

2 Il modello assunto dal signor Jones e ragionevole

12 Sia X una variabile casuale binomiale di parametri n = 100 e p = 07

1 Tracciate la funzione di ripartizione di X2 Calcolate il primo quartile il quantile di ordine 09 e la mediana di X3 Calcolare la probabilita P(X le 60)4 Calcolare la probabilita P(X le 88)5 Trovare il piu piccolo valore x tale che P(X le x) ge 09

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 88 88

  • Lezione 1
    • Script in Python
    • Numpy
    • Esercizi
    • Pandas
    • Esercizi
      • Lezione 2
        • File csv
        • DataFrame
        • Accesso ai DataFrame
        • Frequenze
        • Esercizi
          • Lezione 3
            • Matplotlib
            • Grafici a Barre
            • Istogrammi
            • Cumulativa empirica
            • Boxplot
            • QQplot
            • Diagramma di Pareto
            • Esercizi
              • Lezione 4
                • Definizioni
                • Probabilitagrave condizionata
                • Indipendenza
                • Esercizi
                  • Lezione 5
                    • Variabili Aleatorie
                    • Funzione di Ripartizione
                    • Funzione di Densitagrave
                    • Valore Atteso
                    • Varianza
                    • Covarianza
                    • Esercizi
                      • Lezione 6
                        • Scipy - Variabili Discrete
                        • Scipy - Variabili continue
                        • Esercizi

Metodi dei DataFrame

La classe DataFrame ha diversi metodi Elenchiamo qui i piu importanti

DataFrameappend() permette di estendere il DataFrame

DataFramedrop duplicates() restituisce un DataFrame senza righeduplicate

DataFramedropna() Eliminare i valori Nan da un DataFrame

DataFramesort values() permette di ordinare il DataFrame

DataFramemax() DataFramemin() DataFramemean()DataFramemedian()

Per la completa documentazione si puo utilizzare il comandohelp(pdDataFrame) oppure andare al seguente linkhttpspandaspydataorgpandas-docsstablegenerated

pandasDataFramehtml

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 33 88

Frequenze

La frequenza assoluta indica il numero di volte che una dataosservazione occorre in un campione

La frequenza relativa e un valore tra 0 e 1 che permette di valutare inmaniera piu efficace la frequenza di un osservazione Si calcoladividendo la frequenza assoluta per il numero totale di casi

Per calcolare questa quantita in Pandas possiamo utilizzare la funzionevalue counts() che opera su una Series

In alternativa si puo utilizzare la funzione pdcrosstab che calcolaqueste frequenze in automatico restituendole in output in un DataFrame

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 34 88

Esercizi

Utilizzando il file dati-ospedalicsv dai csv del laboratorio

1 Leggere il file e visualizzarlo in un DataFrame

2 Calcolare le frequenze assolute e relative dellrsquoattributo Regioneusando crosstab

3 Ottenere la singola serie relativa allrsquoattributo Regione e calcolarne lafrequenza assoluta e relativa senza usare crosstab

4 Estrarre un sottodataframe contenente le colonne Nome (attributoDenominazione Str Pubblica New) e Numero di medici (attributoMedici SSN) degli ospedali aventi meno di 200 medici

5 Visualizzare il nome degli ospedali della regione Lombardia

6 Calcolare il numero medio di ingegneri (Ingegneri SSN) presenti negliospedali campani

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 35 88

Esercizi

7 Calcolare la varianza del numero di assistenti sociali (Assistenti socialiSSN) negli ospedali con piu di 400 medici

8 Qual e lrsquoospedale con meno medici

9 Visualizzare in ordine alfabetico il nome dei primi 10 ospedali pernumero di medici

10 Visualizzare il numero degli ospedali che hanno dichiarato il numerodi odontoiatri (per cui il valore e diverso da NaN) (OdontoiatriUniversitari)

11 Visualizzare il numero degli ospedali che hanno dichiarato il numerodi odontoiatri (Odontoiatri Universitari) e per cui questo numero emaggiore di 0

12 Calcolare le frequenze assolute per lrsquoattributo Odontoiatri SSNTrasformare questo risultato in frequenze relative

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 36 88

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) SAD 20182019 January 12 2019 37 88

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) SAD 20182019 January 12 2019 38 88

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) SAD 20182019 January 12 2019 39 88

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) SAD 20182019 January 12 2019 40 88

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) SAD 20182019 January 12 2019 41 88

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) SAD 20182019 January 12 2019 42 88

Grafici con le Series

In generale possiamo tracciare diversi tipi di grafici con le Series

rsquolinersquo line plot (default)

rsquobarrsquo vertical bar plot

rsquobarhrsquo horizontal bar plot

rsquohistrsquo histogram

rsquoboxrsquo boxplot

rsquokdersquo Kernel Density Estimation plot

rsquodensityrsquo same as rsquokdersquo

rsquoarearsquo area plot

rsquopiersquo pie plot

Per saperne di piu consultare questo link

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 43 88

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) SAD 20182019 January 12 2019 44 88

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) SAD 20182019 January 12 2019 45 88

Boxplot

Rappresenta la distribuzione di un vettore di numeri cerchiando gli outlier

gtgtgt weight = heroes[rsquoWeightrsquo]

gtgtgt weightplotbox()

gtgtgt pltshow()

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 46 88

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) SAD 20182019 January 12 2019 47 88

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) SAD 20182019 January 12 2019 48 88

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) SAD 20182019 January 12 2019 49 88

Esercizi - 1

Utilizzando il file capellicsv dai csv del laboratorio

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) SAD 20182019 January 12 2019 50 88

Esercizi - 2

Utilizzando il file dati-ospedalicsv dai csv del laboratorio

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 e canipdf

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 51 88

Sample space

Un esperimento e qualsiasi processo che produce una realizzazione (oosservazione) Lrsquoinsieme di tutte le possibili realizzazioni di un esperimentoviene detto sample space ed indicato con S

lancio di 2 monete

S = (T T ) (T C) (C T ) (C C)

gara di 3 cavalli (ab c)

S = tutti i possibili ordinamenti di(ab c)= (ab c) (a cb) (c b a)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 52 88

Eventi

lancio di 2 monete

S = (T T ) (T C) (C T ) (C C)

A = 2 monete uguali

A = (T T ) (C C)

B = 2 monete diverse

B = Ac = (T C) (C T )

gara di 3 cavalli

A = cavallo a vincente

A = (ab c) (a c b)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 53 88

Probabilita - 1

Consideriamo un esperimento con sample space S Supponiamo che adogni evento A sia associato un numero chiamato probabilita di A edindicato con P(A) che soddisfa le seguenti proprieta

1 Per ogni evento A la probabilita di A e un numero tra 0 e 1

0 le P(A) le 1

2 La probabilita del sample space S e 1

P(S) = 1

3 La probabilita dellrsquounione di eventi disgiunti e uguale alla somma delleprobabilita di tali eventi

P(A cupB) = P(A) + P(B)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 54 88

Probabilita - 2

In generale 2 eventi potrebbero non essere disgiunti

P(A cupB) = P(A) + P(B) minus P(A capB)

Esempio un certo negozio accetta pagamenti o con carte di credito VISAo Mastercard

1 22 dei clienti ha Mastercard

2 58 dei clienti ha VISA

3 14 dei clienti ha entrambe

Qual e la probabilita che un cliente ha almeno una delle 2 carte

P(A) = 022 P(B) = 058

P(A cupB) = P(A) + P(B) minus P(A capB) = 022 + 058 minus 014 = 066

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 55 88

Probabilita condizionata - 1

Se alcune informazioni riguardo lrsquoesito di un esperimento sono disponibiliparliamo di probabilita condizionata

Esempio lancio di 2 dadi

S = (11) (12) (65) (66)

Probabilita che la somma sia 10 (evento B) sapendo che il primo dadomostra 4 (evento A)

(41) (42) (43) (44) (45) (46)

P(B ∣A) = 16

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 56 88

Probabilita condizionata - 2

In generale

P(B ∣A) = P(A capB)P(A)

Supponiamo lrsquoesito sia in A

Per essere anche in B deve essere in entrambi A e B cioe in A capB

Sapendo che A e gia accaduto il nostro nuovo sample space diventa A

la probabilita di A capB viene calcolata rispetto ad A

Nel caso dei dadi

P(B ∣A) = P((46))P((41) (42) (43) (44) (45) (46)) = 136

16= 1

6

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 57 88

Indipendenza

In generale sapere che A e accaduto modifica le chance che B accadaNel caso cio non avvenga cioe se P(B ∣A) = P(B) allora i 2 eventi sidicono indipendenti In questo caso sapere che A e accaduto nonaggiunge alcuna informazione

SiccomeP(A capB) = P(B ∣A)P(A)

Abbiamo che B e indipendente da A se

P(A capB) = P(B)P(A)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 58 88

Esercizi - 1

1 Svolgere gli esercizi di combinatoria

2 Si consideri il seguente esperimento casuale rdquosi lancia tre volte unamonetardquo Qual e lo spazio degli esiti di questo esperimento casualeSi scriva esplicitamente lrsquoevento rdquosi ottengono piu teste che crocirdquo

3 Si consideri il seguente esperimento casuale rdquoSi tirano due dadirdquo Siconsiderino gli eventi E = rdquola somma dei punteggi e disparirdquo F = rdquoilprimo dado realizza un 1rdquo e G = rdquola somma dei punteggi e 5rdquo Sidescrivano gli eventi E cap F E cup F F capG E cap F c e E cap F capG

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 59 88

Esercizi - 2

4 Si consideri il seguente esperimento casuale rdquoUn sistema e compostoda 4 componenti ciascuno dei quali o funziona oppure e guasto Siosserva lo stato dei componenti ottenendo un vettore (x1 x2 x3 x4)dove xi e 1 oppure 0 a seconda che il componente i-esimo funzionioppure nordquo

1 Da quanti elementi e formato lo spazio degli esiti2 Il sistema nel suo insieme funziona fintantoche entrambi i componenti

1 e 2 oppure entrambi i componenti 3 e 4 funzionano Specifica tuttigli esiti dellrsquoevento il rdquosistema funzionardquo

3 Sia E lrsquoevento rdquoi componenti 1 e 3 sono guastirdquo Quanti esiti contiene

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 60 88

Esercizi - 3

5 Si dimostri che in uno spazio degli esiti Ω dotato di una probabilita Pper ogni evento E F sub Ω vale la disuguaglianza seguente

P(E cap F ) ge P(E) + P(F ) minus 1

6 Un gruppo di 5 bambini e 10 bambine e in fila in ordine casuale nelsenso che tutte le 15 possibili permutazioni si suppongonoequiprobabili

1 Qual e la probabilita che il quarto della fila sia un bambino2 E il dodicesimo3 Qual e la probabilita che un determinato bambino occupi la terza

posizione

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 61 88

Esercizi - 4

7 In un comune vi sono 5 alberghi Se 3 persone devono scegliere unalbergo in cui pernottare qual e la probabilita che finiscano tutte inalberghi differenti Che cosa stiamo assumendo senza dirloesplicitamente

8 La media del salario annuale di un gruppo di 100 lavoratori impiegatinellrsquoamministrazione di una grande azienda e di 130000 dollari conuna deviazione standard di 20000 dollari Se si prende una persona acaso da questo gruppo cosa possiamo dire sulla probabilita che il suosalario sia

1 tra i 90000 e i 170000 dollari2 superiore a 150000 dollari

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 62 88

Esercizi - 5

9 In una certa regione vi sono due ditte che producono forni amicroonde Quelli della fabbrica A sono difettosi con probabilita 005mentre quelli della fabbrica B con probabilita 001 Supponi di averacquistato due apparecchi prodotti dalla stessa ditta che puo essere laA o la B con probabilita del 50 Se il primo microonde e difettosoqual e la probabilita condizionata che sia difettoso anche il secondo

10 Hai chiesto ad un vicino di innaffiare una piantina delicata mentre seiin vacanza Pensi che senza acqua la piantina muoia con probabilita08 mentre se innaffiata questa probabilita si ridurrebbe a 015 Latua fiducia che il vicino si ricordi di innaffiarla e del 90

1 Qual e la probabilita che la pianta sia ancora viva al tuo ritorno2 Se fosse morta quale sarebbe la probabilita che il vicino si sia

dimenticato di innaffiarla

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 63 88

Esercizi - 6

11 Una compagnia di assicurazioni classifica i suoi clienti in tre fascebasso rischio medio rischio alto rischio Le sue statistiche indicanoche le probabilita che un cliente delle tre fasce abbia un incidenteentro un periodo di un anno sono rispettivamente 005 015 e 030Se il 20 dei clienti sono a basso rischio il 50 a medio rischio e il30 ad alto rischio che percentuale dei clienti avra mediamenteincidenti in un lasso di un anno Se un cliente non ha avuto incidentinel 1987 qual e la probabilita che appartenga a ciascuna delle trefasce

12 Se un votante scelto a caso e favorevole ad una certa riforma conprobabilita di 07 qual e la probabilita che su 10 votanti esattamente7 siano favorevoli

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 64 88

Variabili aleatorie

Una variabile aleatoria (o anche variabile aleatoria) e una variabile chepuo assumere valori diversi in dipendenza da qualche fenomeno aleatorio

fenomeno lancio di 2 dadivariabile aleatoria somma dei 2 dadi

fenomeno 3 lanci di una monetavariabile aleatoria numero di rdquotesterdquo complessivo

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 65 88

Funzione di Ripartizione

Sia X una variabile aleatoria Si chiama funzione di ripartizione di X lafunzione F che associa ad ogni numero reale a la probabilita che X siaminore o uguale ad a cioe P(X le a) = FX (a)

Nel caso della moneta (fair) lanciata 3 volte (X indica il numero di testecomplessivo)

FX (a) =

⎧⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎨⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎩

0 if a lt 0

18 per 0 le a lt 1

18 + 38 = 48 per 1 le a lt 2

48 + 38 = 78 per 2 le a lt 3

88 = 1 per a ge 3

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 66 88

Funzione di densita o di massa

Sia X una variabile aleatoria Si chiama funzione di densita di X lafunzione f che associa ad ogni numero reale a la probabilita che X siauguale ad a indicata con fX (a)

Nel caso della moneta (fair) lanciata 3 volte (X indica il numero di testecomplessivo)

fX (a) =

⎧⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎨⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎩

18 per a = 0

38 per a = 1

38 per a = 2

18 per a = 3

0 altrimenti

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 67 88

Valore Atteso

Chiamato anche media (expectation in inglese) e appunto una mediapesata dei possibili valori di una variabile aleatoria Il peso dato a ciascunvalore e la probabilita data a quello specifico valore

E[X ] =sumi

aiP(X = ai)

Esempio dado truccato

valore 6 con probabilita 712

valori da 1 a 5 con probabilita 112

La variabile aleatoria X indica la faccia risultante dal lancio di un dado

E[X ] = 1

12lowast 1 + 1

12lowast 2 + 1

12lowast 3 + 1

12lowast 4 + 1

12lowast 5 + 7

12lowast 6 = 475

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 68 88

Valore Atteso - Proprieta

Sia X una variabile aleatoria con valore atteso E[X ] Se c e una costanteallora anche cX e X + c sono variabili casuali In particolare valgono leseguenti proprieta

E[cX ] = cE[X ]E[X + c] = E[X ] + c

Sia Y una variabile aleatoria Allora

E[X +Y ] = E[X ] +E[Y ]se e solo se X e Y sono independenti

E[XY ] = E[X ]E[Y ]

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 69 88

Varianza

Ersquo il valore atteso del quadrato della differenza tra la variabile aleatoria e ilsuo valore atteso

Var(X ) = E[(X minusE[X ])2] = E[X 2] minus (E[X ])2

La radice quadrata viene detta deviazione standard di X

Esempio dado truccato

E[X 2] = 1

12lowast 12 + 1

12lowast 22 + 1

12lowast 32 + 1

12lowast 42 + 1

12lowast 52 + 7

12lowast 62 ≃ 255

Var(X ) = E[X 2] minus (E[X ])2 ≃ 255 minus 4752 ≃ 3

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 70 88

Varianza - proprieta

Sia X una variabile aleatoria e c una costante Allora valgono le seguentiproprieta

1 Var(cX ) = c2Var(X )

2 Var(X + c) = Var(X )

NOTA

Var(X +X ) ne Var(X ) +Var(X )

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 71 88

Covarianza

Siano X Y due variabili aleatorie con valore atteso rispettivamenteE[X ] = microX e E[Y ] = microY La covarianza e definita come segue

Cov(X Y ) = E[(X minus microX )(Y minus microY )] = = E[XY ] minus microXmicroY

Proprieta

1 Cov(X Y ) = Cov(Y X )2 Cov(X X ) = Var(X )3 Sia a una costante allora

Cov(aX Y ) = aCov(X Y )

4 Sia Z una variabile aleatoria allora

Cov(X + Z Y ) = Cov(X Y ) + Cov(Z Y )

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 72 88

Esercizi - 1

1 Consideriamo una variabile aleatoria X che puo assumere i valori 12o 3 Se sappiamo che

fX (1) = 1

3 fX (2) = 3

7

1 Quanto vale fX (3)2 Disegnare il grafico di questa funzione di massa3 Disegnare il grafico della relativa funzione di ripartizione

2 Dimostrare che se X1 e X2 hanno la stessa distribuzione allora

Cov(X1 +X2X1 minusX2) = 0

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 73 88

Esercizi - 2

3 La funzione di ripartizione di X e definita come segue

FX (x) =

⎧⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎨⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎩

0 per x le 0

x2 per 0 le x lt 1

23 per 1 le x lt 2

1112 per 2 le x lt 3

1 per x ge 3

Se ne tracci il graficoQuanto vale P(X gt 12)Quanto vale P(2 le X le 4)Quanto vale P(X le 3)Quanto vale P(X = 1)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 74 88

Esercizi - 3

4 Un tipo di prodotti vengono classificati a seconda dei loro difetti edella fabbrica che li ha prodotti Sia X1 il numero (1 o 2) dellafabbrica e sia X2 il numero di difetti per pezzo (che possono essere da0 a 3) di un prodotto scelto a caso tra la totalita di quelli esistentiLa tabella seguente riporta la funzione di massa di probabilitacongiunta per queste due variabili aleatorie discrete Le righe siriferiscono alla variabile X1 mentre le colonne alla variabile X2

Trova le distribuzioni marginali di X1 e X2Calcola media e varianza di X2

0 1 2 31 18 116 316 182 116 116 18 14

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 75 88

Scipy

Scipy e un modulo che permette di utilizzare varie distribuzioni diprobabilita sia di tipo discreto che continuo

La sintassi generale e la seguente Scipystatsltnome distribuzionegt

rvs(size=z) restituisce un vettore di numeri casuali estrattisecondo la distribuzione di lunghezza z

pdf(x) restituisce il vettore della densita della distribuzionevalutata nei valori del vettore di input x (pmf per le discrete)

cdf(x) restituisce il vettore della funzione di ripartizione (ocumulativa) della distribuzione valutata nei valori del vettore di inputx

ppf(q) restituisce il vettore dei quantili della distribuzione valutatanei valori del vettore di input q

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 76 88

Variabili aleatorie discrete Binomiale

gtgtgt from scipystats import binom

gtgtgt rv = binom(n p)

rvrvs(x) restituisce un vettore di x numeri estratti secondo unadistribuzione Binomiale di parametri n p

rvpmf(x) restituisce la probabilita di ottenere esattamente x

successi in un esperimento dicotomico (01) ripetuto n volte con unaprobabilita di successo p (x puo essere un vettore)

rvcdf(q) restituisce il valore della funzione di ripartizione in q (qpuo essere un vettore)

rvppf(p) restituisce il valore del quantile di ordine p

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 77 88

Variabili aleatorie discrete Ipergeometrica

Supponiamo di avere M = 20 animali di cui n = 7 cani Se vogliamosapere la probabilita di trovare un dato numero di cani se scegliamoN = 12 dei 20 animali in maniera casuale possiamo usare una distribuzioneipergeometrica in questo modo

gtgtgt from scipystats import hypergeom

gtgtgt [M n N] = [20 7 12]

gtgtgt rv = hypergeom(M n N)

rvpmf(x) restituisce la probabilita di estrarre esattamente x cani

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 78 88

Variabili aleatorie discrete Geometrica

gtgtgt from scipystats import geom

gtgtgt rv = geom(p)

rvpmf(x) restituisce la probabilita di avere un successo dopoesattamente x insuccessi in una successione di esperimenti dicotomici(esito 01) con una probabilita di successo p (x puo essere un vettore)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 79 88

Variabili aleatorie discrete Poisson

La distribuzione di Poisson viene usata spesso come modello per il numerodi volte per cui un evento avviene in un dato intervallo di tempo (ospazio) Ad esempio si puo utilizzare per misurare il numero di chiamatericevute da un call center in una mattinata

gtgtgt from scipystats import poisson

gtgtgt mu = 2

gtgtgt rv = poisson(mu)

rvpmf(x) restituisce il seguente valore

f (x) = exp(minusmicro)microx

x

In questo caso x rappresenta il numero di eventi per cui si vuole calcolarela probabilita sapendo che in media ne accadono micro

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 80 88

Variabili aleatorie continue Uniforme

In Scipy la funzione uniforme e soltanto continua Questo significa chenella generazione di numeri casuali otterro dati di tipo float Possiamotuttavia simulare una variabile discreta estraendo la parte intera delrisultato ottenuto

gtgtgt from scipystats import uniform

gtgtgt rv = uniform()

Il comando uniform() crea una distribuzione uniforme nellrsquointervallo[01] Possiamo creare una distribuzione uniforme qualsiasi usandouniform(x y - x) per lrsquointervallo [x y]

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 81 88

Variabili aleatorie continue

norm(mu sigma) variabile Gaussiana (o Normale) di media micro edeviazione standard σ

expon(scale = 1 lambda) variabile Esponenziale di parametroλ

Altre distribuzioni (con relativa documentazione) disponibili suhttpsdocsscipyorgdocscipyreferencestatshtml

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 82 88

Esercizi - 1

1 Unrsquourna contiene 10 palline di cui 4 bianche e 6 nere Si eseguono 5estrazioni con reimmissione

1 Tracciare grafico della funzione massa di probabilita della variabilecasuale X = rdquonumero di palline bianche estratterdquo

2 Calcolare la probabilita di estrarre 2 palline bianche3 Calcolare la probabilita di estrarre al piu 2 palline bianche4 Calcolare la probabilita di estrarre almeno 2 palline bianche5 Qual e il numero minimo x tale che la probabilita di estrarre al piu x

palline bianche sia almeno 08

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 83 88

Esercizi - 2

2 Si eseguono 10 estrazioni senza reimmissione da unrsquourna

1 Tracciare il grafico della funzione massa di probabilita della variabilecasuale X = rdquonumero di palline bianche estratterdquo nei seguenti casi

1 lrsquourna contiene 100 palline di cui 20 bianche e le restanti nere2 lrsquourna contiene 100 palline di cui 2 bianche e le restanti nere

2 Tracciare il grafico della funzione massa di probabilita della variabilecasuale X nel caso dellrsquourna 1 se si eseguono 25 estrazioni

3 Consideriamo lrsquourna 1 e N = 10 estrazioni Si aumenti il numero totaleM di palline nellrsquourna mantenendo uguale a 02 la frazione di pallinebianche Per ciascun valore di M confrontare graficamente ladistribuzione di probabilita del numero di palline bianche estratte nelcaso di estrazioni con e senza reimmissione Provare con 20 40 e 200palline bianche

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 84 88

Esercizi - 3

3 Calcolare la probabilita di ottenere piu teste che croci lanciando 7volte una moneta truccata con probabilita di avere croce pari a 045

4 Calcolare la probabilita di avere almeno 3 sei lanciando 5 dadi a 12facce

5 Calcolare la probabilita di estrarre 20 euro da un sacco contenente 47monete da 1 centesimo e 53 da 2 euro estraendo (uniformemente) acaso 10 monete senza reinserirle

6 Un grammo di uranio emette mediamente 2152 particelle α ognimillisecondo Qual e con buona approssimazione la probabilita che ungrammo di uranio emetta al piu 2000 particelle α in un millisecondo

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 85 88

Esercizi - 4

7 Un uomo si risveglia in mezzo al deserto senza acqua Dopo ogniminuto ha una probabilita del 3 di perdere conoscenza per via dellecondizioni estreme Calcolare la probabilita che lrsquouomo perdaconoscenza dopo almeno due ore e la probabilita che lrsquouomo perdaconoscenza dopo esattamente un quarto drsquoora

8 Sia X una variabile aleatoria normale di parametri micro = 10 e σ = 36Calcola

1 P(X gt 5)2 P(4 le X le 16)3 P(X le 8)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 86 88

Esercizi - 5

9 Il numero di errori tipografici per pagina di una certa rivista segue unadistribuzione di Poisson Sapendo che mediamente sono presenti 02errori per pagina determinare la probabilita che una pagina contenga

1 nessun refuso2 piu refusi

10 Arrivi alla fermata dellrsquoautobus alle 1000 e sei certo che ne passerauno in un momento distribuito uniformemente tra le 1000 e le 1030

1 Qual e la probabilita che tu debba aspettare piu di 10 minuti2 Se alle 1015 lrsquoautobus non e ancora arrivato qual e la probabilita che

tu debba aspettare almeno altri 10 minuti

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 87 88

Esercizi - 6

11 Il signor Jones e convinto che il tempo di vita di una automobile (inmigliaia di chilometri percorse) sia una variabile aleatoria esponenzialedi parametro 120 Il signor Smith ha una macchina usata da vendereche ha percorso circa 10 000 chilometri

1 Se il signor Jones decide di comprarla che probabilita ha di farle farealmeno altri 20 000 chilometri prima che sia da buttare

2 Il modello assunto dal signor Jones e ragionevole

12 Sia X una variabile casuale binomiale di parametri n = 100 e p = 07

1 Tracciate la funzione di ripartizione di X2 Calcolate il primo quartile il quantile di ordine 09 e la mediana di X3 Calcolare la probabilita P(X le 60)4 Calcolare la probabilita P(X le 88)5 Trovare il piu piccolo valore x tale che P(X le x) ge 09

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 88 88

  • Lezione 1
    • Script in Python
    • Numpy
    • Esercizi
    • Pandas
    • Esercizi
      • Lezione 2
        • File csv
        • DataFrame
        • Accesso ai DataFrame
        • Frequenze
        • Esercizi
          • Lezione 3
            • Matplotlib
            • Grafici a Barre
            • Istogrammi
            • Cumulativa empirica
            • Boxplot
            • QQplot
            • Diagramma di Pareto
            • Esercizi
              • Lezione 4
                • Definizioni
                • Probabilitagrave condizionata
                • Indipendenza
                • Esercizi
                  • Lezione 5
                    • Variabili Aleatorie
                    • Funzione di Ripartizione
                    • Funzione di Densitagrave
                    • Valore Atteso
                    • Varianza
                    • Covarianza
                    • Esercizi
                      • Lezione 6
                        • Scipy - Variabili Discrete
                        • Scipy - Variabili continue
                        • Esercizi

Frequenze

La frequenza assoluta indica il numero di volte che una dataosservazione occorre in un campione

La frequenza relativa e un valore tra 0 e 1 che permette di valutare inmaniera piu efficace la frequenza di un osservazione Si calcoladividendo la frequenza assoluta per il numero totale di casi

Per calcolare questa quantita in Pandas possiamo utilizzare la funzionevalue counts() che opera su una Series

In alternativa si puo utilizzare la funzione pdcrosstab che calcolaqueste frequenze in automatico restituendole in output in un DataFrame

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 34 88

Esercizi

Utilizzando il file dati-ospedalicsv dai csv del laboratorio

1 Leggere il file e visualizzarlo in un DataFrame

2 Calcolare le frequenze assolute e relative dellrsquoattributo Regioneusando crosstab

3 Ottenere la singola serie relativa allrsquoattributo Regione e calcolarne lafrequenza assoluta e relativa senza usare crosstab

4 Estrarre un sottodataframe contenente le colonne Nome (attributoDenominazione Str Pubblica New) e Numero di medici (attributoMedici SSN) degli ospedali aventi meno di 200 medici

5 Visualizzare il nome degli ospedali della regione Lombardia

6 Calcolare il numero medio di ingegneri (Ingegneri SSN) presenti negliospedali campani

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 35 88

Esercizi

7 Calcolare la varianza del numero di assistenti sociali (Assistenti socialiSSN) negli ospedali con piu di 400 medici

8 Qual e lrsquoospedale con meno medici

9 Visualizzare in ordine alfabetico il nome dei primi 10 ospedali pernumero di medici

10 Visualizzare il numero degli ospedali che hanno dichiarato il numerodi odontoiatri (per cui il valore e diverso da NaN) (OdontoiatriUniversitari)

11 Visualizzare il numero degli ospedali che hanno dichiarato il numerodi odontoiatri (Odontoiatri Universitari) e per cui questo numero emaggiore di 0

12 Calcolare le frequenze assolute per lrsquoattributo Odontoiatri SSNTrasformare questo risultato in frequenze relative

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 36 88

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) SAD 20182019 January 12 2019 37 88

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) SAD 20182019 January 12 2019 38 88

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) SAD 20182019 January 12 2019 39 88

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) SAD 20182019 January 12 2019 40 88

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) SAD 20182019 January 12 2019 41 88

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) SAD 20182019 January 12 2019 42 88

Grafici con le Series

In generale possiamo tracciare diversi tipi di grafici con le Series

rsquolinersquo line plot (default)

rsquobarrsquo vertical bar plot

rsquobarhrsquo horizontal bar plot

rsquohistrsquo histogram

rsquoboxrsquo boxplot

rsquokdersquo Kernel Density Estimation plot

rsquodensityrsquo same as rsquokdersquo

rsquoarearsquo area plot

rsquopiersquo pie plot

Per saperne di piu consultare questo link

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 43 88

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) SAD 20182019 January 12 2019 44 88

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) SAD 20182019 January 12 2019 45 88

Boxplot

Rappresenta la distribuzione di un vettore di numeri cerchiando gli outlier

gtgtgt weight = heroes[rsquoWeightrsquo]

gtgtgt weightplotbox()

gtgtgt pltshow()

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 46 88

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) SAD 20182019 January 12 2019 47 88

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) SAD 20182019 January 12 2019 48 88

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) SAD 20182019 January 12 2019 49 88

Esercizi - 1

Utilizzando il file capellicsv dai csv del laboratorio

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) SAD 20182019 January 12 2019 50 88

Esercizi - 2

Utilizzando il file dati-ospedalicsv dai csv del laboratorio

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 e canipdf

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 51 88

Sample space

Un esperimento e qualsiasi processo che produce una realizzazione (oosservazione) Lrsquoinsieme di tutte le possibili realizzazioni di un esperimentoviene detto sample space ed indicato con S

lancio di 2 monete

S = (T T ) (T C) (C T ) (C C)

gara di 3 cavalli (ab c)

S = tutti i possibili ordinamenti di(ab c)= (ab c) (a cb) (c b a)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 52 88

Eventi

lancio di 2 monete

S = (T T ) (T C) (C T ) (C C)

A = 2 monete uguali

A = (T T ) (C C)

B = 2 monete diverse

B = Ac = (T C) (C T )

gara di 3 cavalli

A = cavallo a vincente

A = (ab c) (a c b)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 53 88

Probabilita - 1

Consideriamo un esperimento con sample space S Supponiamo che adogni evento A sia associato un numero chiamato probabilita di A edindicato con P(A) che soddisfa le seguenti proprieta

1 Per ogni evento A la probabilita di A e un numero tra 0 e 1

0 le P(A) le 1

2 La probabilita del sample space S e 1

P(S) = 1

3 La probabilita dellrsquounione di eventi disgiunti e uguale alla somma delleprobabilita di tali eventi

P(A cupB) = P(A) + P(B)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 54 88

Probabilita - 2

In generale 2 eventi potrebbero non essere disgiunti

P(A cupB) = P(A) + P(B) minus P(A capB)

Esempio un certo negozio accetta pagamenti o con carte di credito VISAo Mastercard

1 22 dei clienti ha Mastercard

2 58 dei clienti ha VISA

3 14 dei clienti ha entrambe

Qual e la probabilita che un cliente ha almeno una delle 2 carte

P(A) = 022 P(B) = 058

P(A cupB) = P(A) + P(B) minus P(A capB) = 022 + 058 minus 014 = 066

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 55 88

Probabilita condizionata - 1

Se alcune informazioni riguardo lrsquoesito di un esperimento sono disponibiliparliamo di probabilita condizionata

Esempio lancio di 2 dadi

S = (11) (12) (65) (66)

Probabilita che la somma sia 10 (evento B) sapendo che il primo dadomostra 4 (evento A)

(41) (42) (43) (44) (45) (46)

P(B ∣A) = 16

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 56 88

Probabilita condizionata - 2

In generale

P(B ∣A) = P(A capB)P(A)

Supponiamo lrsquoesito sia in A

Per essere anche in B deve essere in entrambi A e B cioe in A capB

Sapendo che A e gia accaduto il nostro nuovo sample space diventa A

la probabilita di A capB viene calcolata rispetto ad A

Nel caso dei dadi

P(B ∣A) = P((46))P((41) (42) (43) (44) (45) (46)) = 136

16= 1

6

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 57 88

Indipendenza

In generale sapere che A e accaduto modifica le chance che B accadaNel caso cio non avvenga cioe se P(B ∣A) = P(B) allora i 2 eventi sidicono indipendenti In questo caso sapere che A e accaduto nonaggiunge alcuna informazione

SiccomeP(A capB) = P(B ∣A)P(A)

Abbiamo che B e indipendente da A se

P(A capB) = P(B)P(A)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 58 88

Esercizi - 1

1 Svolgere gli esercizi di combinatoria

2 Si consideri il seguente esperimento casuale rdquosi lancia tre volte unamonetardquo Qual e lo spazio degli esiti di questo esperimento casualeSi scriva esplicitamente lrsquoevento rdquosi ottengono piu teste che crocirdquo

3 Si consideri il seguente esperimento casuale rdquoSi tirano due dadirdquo Siconsiderino gli eventi E = rdquola somma dei punteggi e disparirdquo F = rdquoilprimo dado realizza un 1rdquo e G = rdquola somma dei punteggi e 5rdquo Sidescrivano gli eventi E cap F E cup F F capG E cap F c e E cap F capG

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 59 88

Esercizi - 2

4 Si consideri il seguente esperimento casuale rdquoUn sistema e compostoda 4 componenti ciascuno dei quali o funziona oppure e guasto Siosserva lo stato dei componenti ottenendo un vettore (x1 x2 x3 x4)dove xi e 1 oppure 0 a seconda che il componente i-esimo funzionioppure nordquo

1 Da quanti elementi e formato lo spazio degli esiti2 Il sistema nel suo insieme funziona fintantoche entrambi i componenti

1 e 2 oppure entrambi i componenti 3 e 4 funzionano Specifica tuttigli esiti dellrsquoevento il rdquosistema funzionardquo

3 Sia E lrsquoevento rdquoi componenti 1 e 3 sono guastirdquo Quanti esiti contiene

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 60 88

Esercizi - 3

5 Si dimostri che in uno spazio degli esiti Ω dotato di una probabilita Pper ogni evento E F sub Ω vale la disuguaglianza seguente

P(E cap F ) ge P(E) + P(F ) minus 1

6 Un gruppo di 5 bambini e 10 bambine e in fila in ordine casuale nelsenso che tutte le 15 possibili permutazioni si suppongonoequiprobabili

1 Qual e la probabilita che il quarto della fila sia un bambino2 E il dodicesimo3 Qual e la probabilita che un determinato bambino occupi la terza

posizione

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 61 88

Esercizi - 4

7 In un comune vi sono 5 alberghi Se 3 persone devono scegliere unalbergo in cui pernottare qual e la probabilita che finiscano tutte inalberghi differenti Che cosa stiamo assumendo senza dirloesplicitamente

8 La media del salario annuale di un gruppo di 100 lavoratori impiegatinellrsquoamministrazione di una grande azienda e di 130000 dollari conuna deviazione standard di 20000 dollari Se si prende una persona acaso da questo gruppo cosa possiamo dire sulla probabilita che il suosalario sia

1 tra i 90000 e i 170000 dollari2 superiore a 150000 dollari

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 62 88

Esercizi - 5

9 In una certa regione vi sono due ditte che producono forni amicroonde Quelli della fabbrica A sono difettosi con probabilita 005mentre quelli della fabbrica B con probabilita 001 Supponi di averacquistato due apparecchi prodotti dalla stessa ditta che puo essere laA o la B con probabilita del 50 Se il primo microonde e difettosoqual e la probabilita condizionata che sia difettoso anche il secondo

10 Hai chiesto ad un vicino di innaffiare una piantina delicata mentre seiin vacanza Pensi che senza acqua la piantina muoia con probabilita08 mentre se innaffiata questa probabilita si ridurrebbe a 015 Latua fiducia che il vicino si ricordi di innaffiarla e del 90

1 Qual e la probabilita che la pianta sia ancora viva al tuo ritorno2 Se fosse morta quale sarebbe la probabilita che il vicino si sia

dimenticato di innaffiarla

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 63 88

Esercizi - 6

11 Una compagnia di assicurazioni classifica i suoi clienti in tre fascebasso rischio medio rischio alto rischio Le sue statistiche indicanoche le probabilita che un cliente delle tre fasce abbia un incidenteentro un periodo di un anno sono rispettivamente 005 015 e 030Se il 20 dei clienti sono a basso rischio il 50 a medio rischio e il30 ad alto rischio che percentuale dei clienti avra mediamenteincidenti in un lasso di un anno Se un cliente non ha avuto incidentinel 1987 qual e la probabilita che appartenga a ciascuna delle trefasce

12 Se un votante scelto a caso e favorevole ad una certa riforma conprobabilita di 07 qual e la probabilita che su 10 votanti esattamente7 siano favorevoli

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 64 88

Variabili aleatorie

Una variabile aleatoria (o anche variabile aleatoria) e una variabile chepuo assumere valori diversi in dipendenza da qualche fenomeno aleatorio

fenomeno lancio di 2 dadivariabile aleatoria somma dei 2 dadi

fenomeno 3 lanci di una monetavariabile aleatoria numero di rdquotesterdquo complessivo

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 65 88

Funzione di Ripartizione

Sia X una variabile aleatoria Si chiama funzione di ripartizione di X lafunzione F che associa ad ogni numero reale a la probabilita che X siaminore o uguale ad a cioe P(X le a) = FX (a)

Nel caso della moneta (fair) lanciata 3 volte (X indica il numero di testecomplessivo)

FX (a) =

⎧⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎨⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎩

0 if a lt 0

18 per 0 le a lt 1

18 + 38 = 48 per 1 le a lt 2

48 + 38 = 78 per 2 le a lt 3

88 = 1 per a ge 3

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 66 88

Funzione di densita o di massa

Sia X una variabile aleatoria Si chiama funzione di densita di X lafunzione f che associa ad ogni numero reale a la probabilita che X siauguale ad a indicata con fX (a)

Nel caso della moneta (fair) lanciata 3 volte (X indica il numero di testecomplessivo)

fX (a) =

⎧⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎨⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎩

18 per a = 0

38 per a = 1

38 per a = 2

18 per a = 3

0 altrimenti

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 67 88

Valore Atteso

Chiamato anche media (expectation in inglese) e appunto una mediapesata dei possibili valori di una variabile aleatoria Il peso dato a ciascunvalore e la probabilita data a quello specifico valore

E[X ] =sumi

aiP(X = ai)

Esempio dado truccato

valore 6 con probabilita 712

valori da 1 a 5 con probabilita 112

La variabile aleatoria X indica la faccia risultante dal lancio di un dado

E[X ] = 1

12lowast 1 + 1

12lowast 2 + 1

12lowast 3 + 1

12lowast 4 + 1

12lowast 5 + 7

12lowast 6 = 475

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 68 88

Valore Atteso - Proprieta

Sia X una variabile aleatoria con valore atteso E[X ] Se c e una costanteallora anche cX e X + c sono variabili casuali In particolare valgono leseguenti proprieta

E[cX ] = cE[X ]E[X + c] = E[X ] + c

Sia Y una variabile aleatoria Allora

E[X +Y ] = E[X ] +E[Y ]se e solo se X e Y sono independenti

E[XY ] = E[X ]E[Y ]

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 69 88

Varianza

Ersquo il valore atteso del quadrato della differenza tra la variabile aleatoria e ilsuo valore atteso

Var(X ) = E[(X minusE[X ])2] = E[X 2] minus (E[X ])2

La radice quadrata viene detta deviazione standard di X

Esempio dado truccato

E[X 2] = 1

12lowast 12 + 1

12lowast 22 + 1

12lowast 32 + 1

12lowast 42 + 1

12lowast 52 + 7

12lowast 62 ≃ 255

Var(X ) = E[X 2] minus (E[X ])2 ≃ 255 minus 4752 ≃ 3

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 70 88

Varianza - proprieta

Sia X una variabile aleatoria e c una costante Allora valgono le seguentiproprieta

1 Var(cX ) = c2Var(X )

2 Var(X + c) = Var(X )

NOTA

Var(X +X ) ne Var(X ) +Var(X )

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 71 88

Covarianza

Siano X Y due variabili aleatorie con valore atteso rispettivamenteE[X ] = microX e E[Y ] = microY La covarianza e definita come segue

Cov(X Y ) = E[(X minus microX )(Y minus microY )] = = E[XY ] minus microXmicroY

Proprieta

1 Cov(X Y ) = Cov(Y X )2 Cov(X X ) = Var(X )3 Sia a una costante allora

Cov(aX Y ) = aCov(X Y )

4 Sia Z una variabile aleatoria allora

Cov(X + Z Y ) = Cov(X Y ) + Cov(Z Y )

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 72 88

Esercizi - 1

1 Consideriamo una variabile aleatoria X che puo assumere i valori 12o 3 Se sappiamo che

fX (1) = 1

3 fX (2) = 3

7

1 Quanto vale fX (3)2 Disegnare il grafico di questa funzione di massa3 Disegnare il grafico della relativa funzione di ripartizione

2 Dimostrare che se X1 e X2 hanno la stessa distribuzione allora

Cov(X1 +X2X1 minusX2) = 0

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 73 88

Esercizi - 2

3 La funzione di ripartizione di X e definita come segue

FX (x) =

⎧⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎨⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎩

0 per x le 0

x2 per 0 le x lt 1

23 per 1 le x lt 2

1112 per 2 le x lt 3

1 per x ge 3

Se ne tracci il graficoQuanto vale P(X gt 12)Quanto vale P(2 le X le 4)Quanto vale P(X le 3)Quanto vale P(X = 1)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 74 88

Esercizi - 3

4 Un tipo di prodotti vengono classificati a seconda dei loro difetti edella fabbrica che li ha prodotti Sia X1 il numero (1 o 2) dellafabbrica e sia X2 il numero di difetti per pezzo (che possono essere da0 a 3) di un prodotto scelto a caso tra la totalita di quelli esistentiLa tabella seguente riporta la funzione di massa di probabilitacongiunta per queste due variabili aleatorie discrete Le righe siriferiscono alla variabile X1 mentre le colonne alla variabile X2

Trova le distribuzioni marginali di X1 e X2Calcola media e varianza di X2

0 1 2 31 18 116 316 182 116 116 18 14

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 75 88

Scipy

Scipy e un modulo che permette di utilizzare varie distribuzioni diprobabilita sia di tipo discreto che continuo

La sintassi generale e la seguente Scipystatsltnome distribuzionegt

rvs(size=z) restituisce un vettore di numeri casuali estrattisecondo la distribuzione di lunghezza z

pdf(x) restituisce il vettore della densita della distribuzionevalutata nei valori del vettore di input x (pmf per le discrete)

cdf(x) restituisce il vettore della funzione di ripartizione (ocumulativa) della distribuzione valutata nei valori del vettore di inputx

ppf(q) restituisce il vettore dei quantili della distribuzione valutatanei valori del vettore di input q

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 76 88

Variabili aleatorie discrete Binomiale

gtgtgt from scipystats import binom

gtgtgt rv = binom(n p)

rvrvs(x) restituisce un vettore di x numeri estratti secondo unadistribuzione Binomiale di parametri n p

rvpmf(x) restituisce la probabilita di ottenere esattamente x

successi in un esperimento dicotomico (01) ripetuto n volte con unaprobabilita di successo p (x puo essere un vettore)

rvcdf(q) restituisce il valore della funzione di ripartizione in q (qpuo essere un vettore)

rvppf(p) restituisce il valore del quantile di ordine p

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 77 88

Variabili aleatorie discrete Ipergeometrica

Supponiamo di avere M = 20 animali di cui n = 7 cani Se vogliamosapere la probabilita di trovare un dato numero di cani se scegliamoN = 12 dei 20 animali in maniera casuale possiamo usare una distribuzioneipergeometrica in questo modo

gtgtgt from scipystats import hypergeom

gtgtgt [M n N] = [20 7 12]

gtgtgt rv = hypergeom(M n N)

rvpmf(x) restituisce la probabilita di estrarre esattamente x cani

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 78 88

Variabili aleatorie discrete Geometrica

gtgtgt from scipystats import geom

gtgtgt rv = geom(p)

rvpmf(x) restituisce la probabilita di avere un successo dopoesattamente x insuccessi in una successione di esperimenti dicotomici(esito 01) con una probabilita di successo p (x puo essere un vettore)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 79 88

Variabili aleatorie discrete Poisson

La distribuzione di Poisson viene usata spesso come modello per il numerodi volte per cui un evento avviene in un dato intervallo di tempo (ospazio) Ad esempio si puo utilizzare per misurare il numero di chiamatericevute da un call center in una mattinata

gtgtgt from scipystats import poisson

gtgtgt mu = 2

gtgtgt rv = poisson(mu)

rvpmf(x) restituisce il seguente valore

f (x) = exp(minusmicro)microx

x

In questo caso x rappresenta il numero di eventi per cui si vuole calcolarela probabilita sapendo che in media ne accadono micro

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 80 88

Variabili aleatorie continue Uniforme

In Scipy la funzione uniforme e soltanto continua Questo significa chenella generazione di numeri casuali otterro dati di tipo float Possiamotuttavia simulare una variabile discreta estraendo la parte intera delrisultato ottenuto

gtgtgt from scipystats import uniform

gtgtgt rv = uniform()

Il comando uniform() crea una distribuzione uniforme nellrsquointervallo[01] Possiamo creare una distribuzione uniforme qualsiasi usandouniform(x y - x) per lrsquointervallo [x y]

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 81 88

Variabili aleatorie continue

norm(mu sigma) variabile Gaussiana (o Normale) di media micro edeviazione standard σ

expon(scale = 1 lambda) variabile Esponenziale di parametroλ

Altre distribuzioni (con relativa documentazione) disponibili suhttpsdocsscipyorgdocscipyreferencestatshtml

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 82 88

Esercizi - 1

1 Unrsquourna contiene 10 palline di cui 4 bianche e 6 nere Si eseguono 5estrazioni con reimmissione

1 Tracciare grafico della funzione massa di probabilita della variabilecasuale X = rdquonumero di palline bianche estratterdquo

2 Calcolare la probabilita di estrarre 2 palline bianche3 Calcolare la probabilita di estrarre al piu 2 palline bianche4 Calcolare la probabilita di estrarre almeno 2 palline bianche5 Qual e il numero minimo x tale che la probabilita di estrarre al piu x

palline bianche sia almeno 08

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 83 88

Esercizi - 2

2 Si eseguono 10 estrazioni senza reimmissione da unrsquourna

1 Tracciare il grafico della funzione massa di probabilita della variabilecasuale X = rdquonumero di palline bianche estratterdquo nei seguenti casi

1 lrsquourna contiene 100 palline di cui 20 bianche e le restanti nere2 lrsquourna contiene 100 palline di cui 2 bianche e le restanti nere

2 Tracciare il grafico della funzione massa di probabilita della variabilecasuale X nel caso dellrsquourna 1 se si eseguono 25 estrazioni

3 Consideriamo lrsquourna 1 e N = 10 estrazioni Si aumenti il numero totaleM di palline nellrsquourna mantenendo uguale a 02 la frazione di pallinebianche Per ciascun valore di M confrontare graficamente ladistribuzione di probabilita del numero di palline bianche estratte nelcaso di estrazioni con e senza reimmissione Provare con 20 40 e 200palline bianche

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 84 88

Esercizi - 3

3 Calcolare la probabilita di ottenere piu teste che croci lanciando 7volte una moneta truccata con probabilita di avere croce pari a 045

4 Calcolare la probabilita di avere almeno 3 sei lanciando 5 dadi a 12facce

5 Calcolare la probabilita di estrarre 20 euro da un sacco contenente 47monete da 1 centesimo e 53 da 2 euro estraendo (uniformemente) acaso 10 monete senza reinserirle

6 Un grammo di uranio emette mediamente 2152 particelle α ognimillisecondo Qual e con buona approssimazione la probabilita che ungrammo di uranio emetta al piu 2000 particelle α in un millisecondo

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 85 88

Esercizi - 4

7 Un uomo si risveglia in mezzo al deserto senza acqua Dopo ogniminuto ha una probabilita del 3 di perdere conoscenza per via dellecondizioni estreme Calcolare la probabilita che lrsquouomo perdaconoscenza dopo almeno due ore e la probabilita che lrsquouomo perdaconoscenza dopo esattamente un quarto drsquoora

8 Sia X una variabile aleatoria normale di parametri micro = 10 e σ = 36Calcola

1 P(X gt 5)2 P(4 le X le 16)3 P(X le 8)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 86 88

Esercizi - 5

9 Il numero di errori tipografici per pagina di una certa rivista segue unadistribuzione di Poisson Sapendo che mediamente sono presenti 02errori per pagina determinare la probabilita che una pagina contenga

1 nessun refuso2 piu refusi

10 Arrivi alla fermata dellrsquoautobus alle 1000 e sei certo che ne passerauno in un momento distribuito uniformemente tra le 1000 e le 1030

1 Qual e la probabilita che tu debba aspettare piu di 10 minuti2 Se alle 1015 lrsquoautobus non e ancora arrivato qual e la probabilita che

tu debba aspettare almeno altri 10 minuti

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 87 88

Esercizi - 6

11 Il signor Jones e convinto che il tempo di vita di una automobile (inmigliaia di chilometri percorse) sia una variabile aleatoria esponenzialedi parametro 120 Il signor Smith ha una macchina usata da vendereche ha percorso circa 10 000 chilometri

1 Se il signor Jones decide di comprarla che probabilita ha di farle farealmeno altri 20 000 chilometri prima che sia da buttare

2 Il modello assunto dal signor Jones e ragionevole

12 Sia X una variabile casuale binomiale di parametri n = 100 e p = 07

1 Tracciate la funzione di ripartizione di X2 Calcolate il primo quartile il quantile di ordine 09 e la mediana di X3 Calcolare la probabilita P(X le 60)4 Calcolare la probabilita P(X le 88)5 Trovare il piu piccolo valore x tale che P(X le x) ge 09

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 88 88

  • Lezione 1
    • Script in Python
    • Numpy
    • Esercizi
    • Pandas
    • Esercizi
      • Lezione 2
        • File csv
        • DataFrame
        • Accesso ai DataFrame
        • Frequenze
        • Esercizi
          • Lezione 3
            • Matplotlib
            • Grafici a Barre
            • Istogrammi
            • Cumulativa empirica
            • Boxplot
            • QQplot
            • Diagramma di Pareto
            • Esercizi
              • Lezione 4
                • Definizioni
                • Probabilitagrave condizionata
                • Indipendenza
                • Esercizi
                  • Lezione 5
                    • Variabili Aleatorie
                    • Funzione di Ripartizione
                    • Funzione di Densitagrave
                    • Valore Atteso
                    • Varianza
                    • Covarianza
                    • Esercizi
                      • Lezione 6
                        • Scipy - Variabili Discrete
                        • Scipy - Variabili continue
                        • Esercizi

Esercizi

Utilizzando il file dati-ospedalicsv dai csv del laboratorio

1 Leggere il file e visualizzarlo in un DataFrame

2 Calcolare le frequenze assolute e relative dellrsquoattributo Regioneusando crosstab

3 Ottenere la singola serie relativa allrsquoattributo Regione e calcolarne lafrequenza assoluta e relativa senza usare crosstab

4 Estrarre un sottodataframe contenente le colonne Nome (attributoDenominazione Str Pubblica New) e Numero di medici (attributoMedici SSN) degli ospedali aventi meno di 200 medici

5 Visualizzare il nome degli ospedali della regione Lombardia

6 Calcolare il numero medio di ingegneri (Ingegneri SSN) presenti negliospedali campani

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 35 88

Esercizi

7 Calcolare la varianza del numero di assistenti sociali (Assistenti socialiSSN) negli ospedali con piu di 400 medici

8 Qual e lrsquoospedale con meno medici

9 Visualizzare in ordine alfabetico il nome dei primi 10 ospedali pernumero di medici

10 Visualizzare il numero degli ospedali che hanno dichiarato il numerodi odontoiatri (per cui il valore e diverso da NaN) (OdontoiatriUniversitari)

11 Visualizzare il numero degli ospedali che hanno dichiarato il numerodi odontoiatri (Odontoiatri Universitari) e per cui questo numero emaggiore di 0

12 Calcolare le frequenze assolute per lrsquoattributo Odontoiatri SSNTrasformare questo risultato in frequenze relative

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 36 88

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) SAD 20182019 January 12 2019 37 88

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) SAD 20182019 January 12 2019 38 88

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) SAD 20182019 January 12 2019 39 88

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) SAD 20182019 January 12 2019 40 88

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) SAD 20182019 January 12 2019 41 88

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) SAD 20182019 January 12 2019 42 88

Grafici con le Series

In generale possiamo tracciare diversi tipi di grafici con le Series

rsquolinersquo line plot (default)

rsquobarrsquo vertical bar plot

rsquobarhrsquo horizontal bar plot

rsquohistrsquo histogram

rsquoboxrsquo boxplot

rsquokdersquo Kernel Density Estimation plot

rsquodensityrsquo same as rsquokdersquo

rsquoarearsquo area plot

rsquopiersquo pie plot

Per saperne di piu consultare questo link

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 43 88

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) SAD 20182019 January 12 2019 44 88

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) SAD 20182019 January 12 2019 45 88

Boxplot

Rappresenta la distribuzione di un vettore di numeri cerchiando gli outlier

gtgtgt weight = heroes[rsquoWeightrsquo]

gtgtgt weightplotbox()

gtgtgt pltshow()

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 46 88

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) SAD 20182019 January 12 2019 47 88

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) SAD 20182019 January 12 2019 48 88

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) SAD 20182019 January 12 2019 49 88

Esercizi - 1

Utilizzando il file capellicsv dai csv del laboratorio

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) SAD 20182019 January 12 2019 50 88

Esercizi - 2

Utilizzando il file dati-ospedalicsv dai csv del laboratorio

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 e canipdf

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 51 88

Sample space

Un esperimento e qualsiasi processo che produce una realizzazione (oosservazione) Lrsquoinsieme di tutte le possibili realizzazioni di un esperimentoviene detto sample space ed indicato con S

lancio di 2 monete

S = (T T ) (T C) (C T ) (C C)

gara di 3 cavalli (ab c)

S = tutti i possibili ordinamenti di(ab c)= (ab c) (a cb) (c b a)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 52 88

Eventi

lancio di 2 monete

S = (T T ) (T C) (C T ) (C C)

A = 2 monete uguali

A = (T T ) (C C)

B = 2 monete diverse

B = Ac = (T C) (C T )

gara di 3 cavalli

A = cavallo a vincente

A = (ab c) (a c b)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 53 88

Probabilita - 1

Consideriamo un esperimento con sample space S Supponiamo che adogni evento A sia associato un numero chiamato probabilita di A edindicato con P(A) che soddisfa le seguenti proprieta

1 Per ogni evento A la probabilita di A e un numero tra 0 e 1

0 le P(A) le 1

2 La probabilita del sample space S e 1

P(S) = 1

3 La probabilita dellrsquounione di eventi disgiunti e uguale alla somma delleprobabilita di tali eventi

P(A cupB) = P(A) + P(B)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 54 88

Probabilita - 2

In generale 2 eventi potrebbero non essere disgiunti

P(A cupB) = P(A) + P(B) minus P(A capB)

Esempio un certo negozio accetta pagamenti o con carte di credito VISAo Mastercard

1 22 dei clienti ha Mastercard

2 58 dei clienti ha VISA

3 14 dei clienti ha entrambe

Qual e la probabilita che un cliente ha almeno una delle 2 carte

P(A) = 022 P(B) = 058

P(A cupB) = P(A) + P(B) minus P(A capB) = 022 + 058 minus 014 = 066

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 55 88

Probabilita condizionata - 1

Se alcune informazioni riguardo lrsquoesito di un esperimento sono disponibiliparliamo di probabilita condizionata

Esempio lancio di 2 dadi

S = (11) (12) (65) (66)

Probabilita che la somma sia 10 (evento B) sapendo che il primo dadomostra 4 (evento A)

(41) (42) (43) (44) (45) (46)

P(B ∣A) = 16

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 56 88

Probabilita condizionata - 2

In generale

P(B ∣A) = P(A capB)P(A)

Supponiamo lrsquoesito sia in A

Per essere anche in B deve essere in entrambi A e B cioe in A capB

Sapendo che A e gia accaduto il nostro nuovo sample space diventa A

la probabilita di A capB viene calcolata rispetto ad A

Nel caso dei dadi

P(B ∣A) = P((46))P((41) (42) (43) (44) (45) (46)) = 136

16= 1

6

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 57 88

Indipendenza

In generale sapere che A e accaduto modifica le chance che B accadaNel caso cio non avvenga cioe se P(B ∣A) = P(B) allora i 2 eventi sidicono indipendenti In questo caso sapere che A e accaduto nonaggiunge alcuna informazione

SiccomeP(A capB) = P(B ∣A)P(A)

Abbiamo che B e indipendente da A se

P(A capB) = P(B)P(A)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 58 88

Esercizi - 1

1 Svolgere gli esercizi di combinatoria

2 Si consideri il seguente esperimento casuale rdquosi lancia tre volte unamonetardquo Qual e lo spazio degli esiti di questo esperimento casualeSi scriva esplicitamente lrsquoevento rdquosi ottengono piu teste che crocirdquo

3 Si consideri il seguente esperimento casuale rdquoSi tirano due dadirdquo Siconsiderino gli eventi E = rdquola somma dei punteggi e disparirdquo F = rdquoilprimo dado realizza un 1rdquo e G = rdquola somma dei punteggi e 5rdquo Sidescrivano gli eventi E cap F E cup F F capG E cap F c e E cap F capG

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 59 88

Esercizi - 2

4 Si consideri il seguente esperimento casuale rdquoUn sistema e compostoda 4 componenti ciascuno dei quali o funziona oppure e guasto Siosserva lo stato dei componenti ottenendo un vettore (x1 x2 x3 x4)dove xi e 1 oppure 0 a seconda che il componente i-esimo funzionioppure nordquo

1 Da quanti elementi e formato lo spazio degli esiti2 Il sistema nel suo insieme funziona fintantoche entrambi i componenti

1 e 2 oppure entrambi i componenti 3 e 4 funzionano Specifica tuttigli esiti dellrsquoevento il rdquosistema funzionardquo

3 Sia E lrsquoevento rdquoi componenti 1 e 3 sono guastirdquo Quanti esiti contiene

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 60 88

Esercizi - 3

5 Si dimostri che in uno spazio degli esiti Ω dotato di una probabilita Pper ogni evento E F sub Ω vale la disuguaglianza seguente

P(E cap F ) ge P(E) + P(F ) minus 1

6 Un gruppo di 5 bambini e 10 bambine e in fila in ordine casuale nelsenso che tutte le 15 possibili permutazioni si suppongonoequiprobabili

1 Qual e la probabilita che il quarto della fila sia un bambino2 E il dodicesimo3 Qual e la probabilita che un determinato bambino occupi la terza

posizione

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 61 88

Esercizi - 4

7 In un comune vi sono 5 alberghi Se 3 persone devono scegliere unalbergo in cui pernottare qual e la probabilita che finiscano tutte inalberghi differenti Che cosa stiamo assumendo senza dirloesplicitamente

8 La media del salario annuale di un gruppo di 100 lavoratori impiegatinellrsquoamministrazione di una grande azienda e di 130000 dollari conuna deviazione standard di 20000 dollari Se si prende una persona acaso da questo gruppo cosa possiamo dire sulla probabilita che il suosalario sia

1 tra i 90000 e i 170000 dollari2 superiore a 150000 dollari

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 62 88

Esercizi - 5

9 In una certa regione vi sono due ditte che producono forni amicroonde Quelli della fabbrica A sono difettosi con probabilita 005mentre quelli della fabbrica B con probabilita 001 Supponi di averacquistato due apparecchi prodotti dalla stessa ditta che puo essere laA o la B con probabilita del 50 Se il primo microonde e difettosoqual e la probabilita condizionata che sia difettoso anche il secondo

10 Hai chiesto ad un vicino di innaffiare una piantina delicata mentre seiin vacanza Pensi che senza acqua la piantina muoia con probabilita08 mentre se innaffiata questa probabilita si ridurrebbe a 015 Latua fiducia che il vicino si ricordi di innaffiarla e del 90

1 Qual e la probabilita che la pianta sia ancora viva al tuo ritorno2 Se fosse morta quale sarebbe la probabilita che il vicino si sia

dimenticato di innaffiarla

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 63 88

Esercizi - 6

11 Una compagnia di assicurazioni classifica i suoi clienti in tre fascebasso rischio medio rischio alto rischio Le sue statistiche indicanoche le probabilita che un cliente delle tre fasce abbia un incidenteentro un periodo di un anno sono rispettivamente 005 015 e 030Se il 20 dei clienti sono a basso rischio il 50 a medio rischio e il30 ad alto rischio che percentuale dei clienti avra mediamenteincidenti in un lasso di un anno Se un cliente non ha avuto incidentinel 1987 qual e la probabilita che appartenga a ciascuna delle trefasce

12 Se un votante scelto a caso e favorevole ad una certa riforma conprobabilita di 07 qual e la probabilita che su 10 votanti esattamente7 siano favorevoli

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 64 88

Variabili aleatorie

Una variabile aleatoria (o anche variabile aleatoria) e una variabile chepuo assumere valori diversi in dipendenza da qualche fenomeno aleatorio

fenomeno lancio di 2 dadivariabile aleatoria somma dei 2 dadi

fenomeno 3 lanci di una monetavariabile aleatoria numero di rdquotesterdquo complessivo

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 65 88

Funzione di Ripartizione

Sia X una variabile aleatoria Si chiama funzione di ripartizione di X lafunzione F che associa ad ogni numero reale a la probabilita che X siaminore o uguale ad a cioe P(X le a) = FX (a)

Nel caso della moneta (fair) lanciata 3 volte (X indica il numero di testecomplessivo)

FX (a) =

⎧⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎨⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎩

0 if a lt 0

18 per 0 le a lt 1

18 + 38 = 48 per 1 le a lt 2

48 + 38 = 78 per 2 le a lt 3

88 = 1 per a ge 3

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 66 88

Funzione di densita o di massa

Sia X una variabile aleatoria Si chiama funzione di densita di X lafunzione f che associa ad ogni numero reale a la probabilita che X siauguale ad a indicata con fX (a)

Nel caso della moneta (fair) lanciata 3 volte (X indica il numero di testecomplessivo)

fX (a) =

⎧⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎨⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎩

18 per a = 0

38 per a = 1

38 per a = 2

18 per a = 3

0 altrimenti

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 67 88

Valore Atteso

Chiamato anche media (expectation in inglese) e appunto una mediapesata dei possibili valori di una variabile aleatoria Il peso dato a ciascunvalore e la probabilita data a quello specifico valore

E[X ] =sumi

aiP(X = ai)

Esempio dado truccato

valore 6 con probabilita 712

valori da 1 a 5 con probabilita 112

La variabile aleatoria X indica la faccia risultante dal lancio di un dado

E[X ] = 1

12lowast 1 + 1

12lowast 2 + 1

12lowast 3 + 1

12lowast 4 + 1

12lowast 5 + 7

12lowast 6 = 475

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 68 88

Valore Atteso - Proprieta

Sia X una variabile aleatoria con valore atteso E[X ] Se c e una costanteallora anche cX e X + c sono variabili casuali In particolare valgono leseguenti proprieta

E[cX ] = cE[X ]E[X + c] = E[X ] + c

Sia Y una variabile aleatoria Allora

E[X +Y ] = E[X ] +E[Y ]se e solo se X e Y sono independenti

E[XY ] = E[X ]E[Y ]

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 69 88

Varianza

Ersquo il valore atteso del quadrato della differenza tra la variabile aleatoria e ilsuo valore atteso

Var(X ) = E[(X minusE[X ])2] = E[X 2] minus (E[X ])2

La radice quadrata viene detta deviazione standard di X

Esempio dado truccato

E[X 2] = 1

12lowast 12 + 1

12lowast 22 + 1

12lowast 32 + 1

12lowast 42 + 1

12lowast 52 + 7

12lowast 62 ≃ 255

Var(X ) = E[X 2] minus (E[X ])2 ≃ 255 minus 4752 ≃ 3

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 70 88

Varianza - proprieta

Sia X una variabile aleatoria e c una costante Allora valgono le seguentiproprieta

1 Var(cX ) = c2Var(X )

2 Var(X + c) = Var(X )

NOTA

Var(X +X ) ne Var(X ) +Var(X )

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 71 88

Covarianza

Siano X Y due variabili aleatorie con valore atteso rispettivamenteE[X ] = microX e E[Y ] = microY La covarianza e definita come segue

Cov(X Y ) = E[(X minus microX )(Y minus microY )] = = E[XY ] minus microXmicroY

Proprieta

1 Cov(X Y ) = Cov(Y X )2 Cov(X X ) = Var(X )3 Sia a una costante allora

Cov(aX Y ) = aCov(X Y )

4 Sia Z una variabile aleatoria allora

Cov(X + Z Y ) = Cov(X Y ) + Cov(Z Y )

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 72 88

Esercizi - 1

1 Consideriamo una variabile aleatoria X che puo assumere i valori 12o 3 Se sappiamo che

fX (1) = 1

3 fX (2) = 3

7

1 Quanto vale fX (3)2 Disegnare il grafico di questa funzione di massa3 Disegnare il grafico della relativa funzione di ripartizione

2 Dimostrare che se X1 e X2 hanno la stessa distribuzione allora

Cov(X1 +X2X1 minusX2) = 0

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 73 88

Esercizi - 2

3 La funzione di ripartizione di X e definita come segue

FX (x) =

⎧⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎨⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎩

0 per x le 0

x2 per 0 le x lt 1

23 per 1 le x lt 2

1112 per 2 le x lt 3

1 per x ge 3

Se ne tracci il graficoQuanto vale P(X gt 12)Quanto vale P(2 le X le 4)Quanto vale P(X le 3)Quanto vale P(X = 1)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 74 88

Esercizi - 3

4 Un tipo di prodotti vengono classificati a seconda dei loro difetti edella fabbrica che li ha prodotti Sia X1 il numero (1 o 2) dellafabbrica e sia X2 il numero di difetti per pezzo (che possono essere da0 a 3) di un prodotto scelto a caso tra la totalita di quelli esistentiLa tabella seguente riporta la funzione di massa di probabilitacongiunta per queste due variabili aleatorie discrete Le righe siriferiscono alla variabile X1 mentre le colonne alla variabile X2

Trova le distribuzioni marginali di X1 e X2Calcola media e varianza di X2

0 1 2 31 18 116 316 182 116 116 18 14

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 75 88

Scipy

Scipy e un modulo che permette di utilizzare varie distribuzioni diprobabilita sia di tipo discreto che continuo

La sintassi generale e la seguente Scipystatsltnome distribuzionegt

rvs(size=z) restituisce un vettore di numeri casuali estrattisecondo la distribuzione di lunghezza z

pdf(x) restituisce il vettore della densita della distribuzionevalutata nei valori del vettore di input x (pmf per le discrete)

cdf(x) restituisce il vettore della funzione di ripartizione (ocumulativa) della distribuzione valutata nei valori del vettore di inputx

ppf(q) restituisce il vettore dei quantili della distribuzione valutatanei valori del vettore di input q

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 76 88

Variabili aleatorie discrete Binomiale

gtgtgt from scipystats import binom

gtgtgt rv = binom(n p)

rvrvs(x) restituisce un vettore di x numeri estratti secondo unadistribuzione Binomiale di parametri n p

rvpmf(x) restituisce la probabilita di ottenere esattamente x

successi in un esperimento dicotomico (01) ripetuto n volte con unaprobabilita di successo p (x puo essere un vettore)

rvcdf(q) restituisce il valore della funzione di ripartizione in q (qpuo essere un vettore)

rvppf(p) restituisce il valore del quantile di ordine p

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 77 88

Variabili aleatorie discrete Ipergeometrica

Supponiamo di avere M = 20 animali di cui n = 7 cani Se vogliamosapere la probabilita di trovare un dato numero di cani se scegliamoN = 12 dei 20 animali in maniera casuale possiamo usare una distribuzioneipergeometrica in questo modo

gtgtgt from scipystats import hypergeom

gtgtgt [M n N] = [20 7 12]

gtgtgt rv = hypergeom(M n N)

rvpmf(x) restituisce la probabilita di estrarre esattamente x cani

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 78 88

Variabili aleatorie discrete Geometrica

gtgtgt from scipystats import geom

gtgtgt rv = geom(p)

rvpmf(x) restituisce la probabilita di avere un successo dopoesattamente x insuccessi in una successione di esperimenti dicotomici(esito 01) con una probabilita di successo p (x puo essere un vettore)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 79 88

Variabili aleatorie discrete Poisson

La distribuzione di Poisson viene usata spesso come modello per il numerodi volte per cui un evento avviene in un dato intervallo di tempo (ospazio) Ad esempio si puo utilizzare per misurare il numero di chiamatericevute da un call center in una mattinata

gtgtgt from scipystats import poisson

gtgtgt mu = 2

gtgtgt rv = poisson(mu)

rvpmf(x) restituisce il seguente valore

f (x) = exp(minusmicro)microx

x

In questo caso x rappresenta il numero di eventi per cui si vuole calcolarela probabilita sapendo che in media ne accadono micro

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 80 88

Variabili aleatorie continue Uniforme

In Scipy la funzione uniforme e soltanto continua Questo significa chenella generazione di numeri casuali otterro dati di tipo float Possiamotuttavia simulare una variabile discreta estraendo la parte intera delrisultato ottenuto

gtgtgt from scipystats import uniform

gtgtgt rv = uniform()

Il comando uniform() crea una distribuzione uniforme nellrsquointervallo[01] Possiamo creare una distribuzione uniforme qualsiasi usandouniform(x y - x) per lrsquointervallo [x y]

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 81 88

Variabili aleatorie continue

norm(mu sigma) variabile Gaussiana (o Normale) di media micro edeviazione standard σ

expon(scale = 1 lambda) variabile Esponenziale di parametroλ

Altre distribuzioni (con relativa documentazione) disponibili suhttpsdocsscipyorgdocscipyreferencestatshtml

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 82 88

Esercizi - 1

1 Unrsquourna contiene 10 palline di cui 4 bianche e 6 nere Si eseguono 5estrazioni con reimmissione

1 Tracciare grafico della funzione massa di probabilita della variabilecasuale X = rdquonumero di palline bianche estratterdquo

2 Calcolare la probabilita di estrarre 2 palline bianche3 Calcolare la probabilita di estrarre al piu 2 palline bianche4 Calcolare la probabilita di estrarre almeno 2 palline bianche5 Qual e il numero minimo x tale che la probabilita di estrarre al piu x

palline bianche sia almeno 08

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 83 88

Esercizi - 2

2 Si eseguono 10 estrazioni senza reimmissione da unrsquourna

1 Tracciare il grafico della funzione massa di probabilita della variabilecasuale X = rdquonumero di palline bianche estratterdquo nei seguenti casi

1 lrsquourna contiene 100 palline di cui 20 bianche e le restanti nere2 lrsquourna contiene 100 palline di cui 2 bianche e le restanti nere

2 Tracciare il grafico della funzione massa di probabilita della variabilecasuale X nel caso dellrsquourna 1 se si eseguono 25 estrazioni

3 Consideriamo lrsquourna 1 e N = 10 estrazioni Si aumenti il numero totaleM di palline nellrsquourna mantenendo uguale a 02 la frazione di pallinebianche Per ciascun valore di M confrontare graficamente ladistribuzione di probabilita del numero di palline bianche estratte nelcaso di estrazioni con e senza reimmissione Provare con 20 40 e 200palline bianche

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 84 88

Esercizi - 3

3 Calcolare la probabilita di ottenere piu teste che croci lanciando 7volte una moneta truccata con probabilita di avere croce pari a 045

4 Calcolare la probabilita di avere almeno 3 sei lanciando 5 dadi a 12facce

5 Calcolare la probabilita di estrarre 20 euro da un sacco contenente 47monete da 1 centesimo e 53 da 2 euro estraendo (uniformemente) acaso 10 monete senza reinserirle

6 Un grammo di uranio emette mediamente 2152 particelle α ognimillisecondo Qual e con buona approssimazione la probabilita che ungrammo di uranio emetta al piu 2000 particelle α in un millisecondo

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 85 88

Esercizi - 4

7 Un uomo si risveglia in mezzo al deserto senza acqua Dopo ogniminuto ha una probabilita del 3 di perdere conoscenza per via dellecondizioni estreme Calcolare la probabilita che lrsquouomo perdaconoscenza dopo almeno due ore e la probabilita che lrsquouomo perdaconoscenza dopo esattamente un quarto drsquoora

8 Sia X una variabile aleatoria normale di parametri micro = 10 e σ = 36Calcola

1 P(X gt 5)2 P(4 le X le 16)3 P(X le 8)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 86 88

Esercizi - 5

9 Il numero di errori tipografici per pagina di una certa rivista segue unadistribuzione di Poisson Sapendo che mediamente sono presenti 02errori per pagina determinare la probabilita che una pagina contenga

1 nessun refuso2 piu refusi

10 Arrivi alla fermata dellrsquoautobus alle 1000 e sei certo che ne passerauno in un momento distribuito uniformemente tra le 1000 e le 1030

1 Qual e la probabilita che tu debba aspettare piu di 10 minuti2 Se alle 1015 lrsquoautobus non e ancora arrivato qual e la probabilita che

tu debba aspettare almeno altri 10 minuti

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 87 88

Esercizi - 6

11 Il signor Jones e convinto che il tempo di vita di una automobile (inmigliaia di chilometri percorse) sia una variabile aleatoria esponenzialedi parametro 120 Il signor Smith ha una macchina usata da vendereche ha percorso circa 10 000 chilometri

1 Se il signor Jones decide di comprarla che probabilita ha di farle farealmeno altri 20 000 chilometri prima che sia da buttare

2 Il modello assunto dal signor Jones e ragionevole

12 Sia X una variabile casuale binomiale di parametri n = 100 e p = 07

1 Tracciate la funzione di ripartizione di X2 Calcolate il primo quartile il quantile di ordine 09 e la mediana di X3 Calcolare la probabilita P(X le 60)4 Calcolare la probabilita P(X le 88)5 Trovare il piu piccolo valore x tale che P(X le x) ge 09

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 88 88

  • Lezione 1
    • Script in Python
    • Numpy
    • Esercizi
    • Pandas
    • Esercizi
      • Lezione 2
        • File csv
        • DataFrame
        • Accesso ai DataFrame
        • Frequenze
        • Esercizi
          • Lezione 3
            • Matplotlib
            • Grafici a Barre
            • Istogrammi
            • Cumulativa empirica
            • Boxplot
            • QQplot
            • Diagramma di Pareto
            • Esercizi
              • Lezione 4
                • Definizioni
                • Probabilitagrave condizionata
                • Indipendenza
                • Esercizi
                  • Lezione 5
                    • Variabili Aleatorie
                    • Funzione di Ripartizione
                    • Funzione di Densitagrave
                    • Valore Atteso
                    • Varianza
                    • Covarianza
                    • Esercizi
                      • Lezione 6
                        • Scipy - Variabili Discrete
                        • Scipy - Variabili continue
                        • Esercizi

Esercizi

7 Calcolare la varianza del numero di assistenti sociali (Assistenti socialiSSN) negli ospedali con piu di 400 medici

8 Qual e lrsquoospedale con meno medici

9 Visualizzare in ordine alfabetico il nome dei primi 10 ospedali pernumero di medici

10 Visualizzare il numero degli ospedali che hanno dichiarato il numerodi odontoiatri (per cui il valore e diverso da NaN) (OdontoiatriUniversitari)

11 Visualizzare il numero degli ospedali che hanno dichiarato il numerodi odontoiatri (Odontoiatri Universitari) e per cui questo numero emaggiore di 0

12 Calcolare le frequenze assolute per lrsquoattributo Odontoiatri SSNTrasformare questo risultato in frequenze relative

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 36 88

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) SAD 20182019 January 12 2019 37 88

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) SAD 20182019 January 12 2019 38 88

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) SAD 20182019 January 12 2019 39 88

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) SAD 20182019 January 12 2019 40 88

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) SAD 20182019 January 12 2019 41 88

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) SAD 20182019 January 12 2019 42 88

Grafici con le Series

In generale possiamo tracciare diversi tipi di grafici con le Series

rsquolinersquo line plot (default)

rsquobarrsquo vertical bar plot

rsquobarhrsquo horizontal bar plot

rsquohistrsquo histogram

rsquoboxrsquo boxplot

rsquokdersquo Kernel Density Estimation plot

rsquodensityrsquo same as rsquokdersquo

rsquoarearsquo area plot

rsquopiersquo pie plot

Per saperne di piu consultare questo link

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 43 88

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) SAD 20182019 January 12 2019 44 88

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) SAD 20182019 January 12 2019 45 88

Boxplot

Rappresenta la distribuzione di un vettore di numeri cerchiando gli outlier

gtgtgt weight = heroes[rsquoWeightrsquo]

gtgtgt weightplotbox()

gtgtgt pltshow()

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 46 88

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) SAD 20182019 January 12 2019 47 88

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) SAD 20182019 January 12 2019 48 88

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) SAD 20182019 January 12 2019 49 88

Esercizi - 1

Utilizzando il file capellicsv dai csv del laboratorio

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) SAD 20182019 January 12 2019 50 88

Esercizi - 2

Utilizzando il file dati-ospedalicsv dai csv del laboratorio

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 e canipdf

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 51 88

Sample space

Un esperimento e qualsiasi processo che produce una realizzazione (oosservazione) Lrsquoinsieme di tutte le possibili realizzazioni di un esperimentoviene detto sample space ed indicato con S

lancio di 2 monete

S = (T T ) (T C) (C T ) (C C)

gara di 3 cavalli (ab c)

S = tutti i possibili ordinamenti di(ab c)= (ab c) (a cb) (c b a)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 52 88

Eventi

lancio di 2 monete

S = (T T ) (T C) (C T ) (C C)

A = 2 monete uguali

A = (T T ) (C C)

B = 2 monete diverse

B = Ac = (T C) (C T )

gara di 3 cavalli

A = cavallo a vincente

A = (ab c) (a c b)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 53 88

Probabilita - 1

Consideriamo un esperimento con sample space S Supponiamo che adogni evento A sia associato un numero chiamato probabilita di A edindicato con P(A) che soddisfa le seguenti proprieta

1 Per ogni evento A la probabilita di A e un numero tra 0 e 1

0 le P(A) le 1

2 La probabilita del sample space S e 1

P(S) = 1

3 La probabilita dellrsquounione di eventi disgiunti e uguale alla somma delleprobabilita di tali eventi

P(A cupB) = P(A) + P(B)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 54 88

Probabilita - 2

In generale 2 eventi potrebbero non essere disgiunti

P(A cupB) = P(A) + P(B) minus P(A capB)

Esempio un certo negozio accetta pagamenti o con carte di credito VISAo Mastercard

1 22 dei clienti ha Mastercard

2 58 dei clienti ha VISA

3 14 dei clienti ha entrambe

Qual e la probabilita che un cliente ha almeno una delle 2 carte

P(A) = 022 P(B) = 058

P(A cupB) = P(A) + P(B) minus P(A capB) = 022 + 058 minus 014 = 066

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 55 88

Probabilita condizionata - 1

Se alcune informazioni riguardo lrsquoesito di un esperimento sono disponibiliparliamo di probabilita condizionata

Esempio lancio di 2 dadi

S = (11) (12) (65) (66)

Probabilita che la somma sia 10 (evento B) sapendo che il primo dadomostra 4 (evento A)

(41) (42) (43) (44) (45) (46)

P(B ∣A) = 16

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 56 88

Probabilita condizionata - 2

In generale

P(B ∣A) = P(A capB)P(A)

Supponiamo lrsquoesito sia in A

Per essere anche in B deve essere in entrambi A e B cioe in A capB

Sapendo che A e gia accaduto il nostro nuovo sample space diventa A

la probabilita di A capB viene calcolata rispetto ad A

Nel caso dei dadi

P(B ∣A) = P((46))P((41) (42) (43) (44) (45) (46)) = 136

16= 1

6

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 57 88

Indipendenza

In generale sapere che A e accaduto modifica le chance che B accadaNel caso cio non avvenga cioe se P(B ∣A) = P(B) allora i 2 eventi sidicono indipendenti In questo caso sapere che A e accaduto nonaggiunge alcuna informazione

SiccomeP(A capB) = P(B ∣A)P(A)

Abbiamo che B e indipendente da A se

P(A capB) = P(B)P(A)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 58 88

Esercizi - 1

1 Svolgere gli esercizi di combinatoria

2 Si consideri il seguente esperimento casuale rdquosi lancia tre volte unamonetardquo Qual e lo spazio degli esiti di questo esperimento casualeSi scriva esplicitamente lrsquoevento rdquosi ottengono piu teste che crocirdquo

3 Si consideri il seguente esperimento casuale rdquoSi tirano due dadirdquo Siconsiderino gli eventi E = rdquola somma dei punteggi e disparirdquo F = rdquoilprimo dado realizza un 1rdquo e G = rdquola somma dei punteggi e 5rdquo Sidescrivano gli eventi E cap F E cup F F capG E cap F c e E cap F capG

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 59 88

Esercizi - 2

4 Si consideri il seguente esperimento casuale rdquoUn sistema e compostoda 4 componenti ciascuno dei quali o funziona oppure e guasto Siosserva lo stato dei componenti ottenendo un vettore (x1 x2 x3 x4)dove xi e 1 oppure 0 a seconda che il componente i-esimo funzionioppure nordquo

1 Da quanti elementi e formato lo spazio degli esiti2 Il sistema nel suo insieme funziona fintantoche entrambi i componenti

1 e 2 oppure entrambi i componenti 3 e 4 funzionano Specifica tuttigli esiti dellrsquoevento il rdquosistema funzionardquo

3 Sia E lrsquoevento rdquoi componenti 1 e 3 sono guastirdquo Quanti esiti contiene

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 60 88

Esercizi - 3

5 Si dimostri che in uno spazio degli esiti Ω dotato di una probabilita Pper ogni evento E F sub Ω vale la disuguaglianza seguente

P(E cap F ) ge P(E) + P(F ) minus 1

6 Un gruppo di 5 bambini e 10 bambine e in fila in ordine casuale nelsenso che tutte le 15 possibili permutazioni si suppongonoequiprobabili

1 Qual e la probabilita che il quarto della fila sia un bambino2 E il dodicesimo3 Qual e la probabilita che un determinato bambino occupi la terza

posizione

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 61 88

Esercizi - 4

7 In un comune vi sono 5 alberghi Se 3 persone devono scegliere unalbergo in cui pernottare qual e la probabilita che finiscano tutte inalberghi differenti Che cosa stiamo assumendo senza dirloesplicitamente

8 La media del salario annuale di un gruppo di 100 lavoratori impiegatinellrsquoamministrazione di una grande azienda e di 130000 dollari conuna deviazione standard di 20000 dollari Se si prende una persona acaso da questo gruppo cosa possiamo dire sulla probabilita che il suosalario sia

1 tra i 90000 e i 170000 dollari2 superiore a 150000 dollari

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 62 88

Esercizi - 5

9 In una certa regione vi sono due ditte che producono forni amicroonde Quelli della fabbrica A sono difettosi con probabilita 005mentre quelli della fabbrica B con probabilita 001 Supponi di averacquistato due apparecchi prodotti dalla stessa ditta che puo essere laA o la B con probabilita del 50 Se il primo microonde e difettosoqual e la probabilita condizionata che sia difettoso anche il secondo

10 Hai chiesto ad un vicino di innaffiare una piantina delicata mentre seiin vacanza Pensi che senza acqua la piantina muoia con probabilita08 mentre se innaffiata questa probabilita si ridurrebbe a 015 Latua fiducia che il vicino si ricordi di innaffiarla e del 90

1 Qual e la probabilita che la pianta sia ancora viva al tuo ritorno2 Se fosse morta quale sarebbe la probabilita che il vicino si sia

dimenticato di innaffiarla

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 63 88

Esercizi - 6

11 Una compagnia di assicurazioni classifica i suoi clienti in tre fascebasso rischio medio rischio alto rischio Le sue statistiche indicanoche le probabilita che un cliente delle tre fasce abbia un incidenteentro un periodo di un anno sono rispettivamente 005 015 e 030Se il 20 dei clienti sono a basso rischio il 50 a medio rischio e il30 ad alto rischio che percentuale dei clienti avra mediamenteincidenti in un lasso di un anno Se un cliente non ha avuto incidentinel 1987 qual e la probabilita che appartenga a ciascuna delle trefasce

12 Se un votante scelto a caso e favorevole ad una certa riforma conprobabilita di 07 qual e la probabilita che su 10 votanti esattamente7 siano favorevoli

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 64 88

Variabili aleatorie

Una variabile aleatoria (o anche variabile aleatoria) e una variabile chepuo assumere valori diversi in dipendenza da qualche fenomeno aleatorio

fenomeno lancio di 2 dadivariabile aleatoria somma dei 2 dadi

fenomeno 3 lanci di una monetavariabile aleatoria numero di rdquotesterdquo complessivo

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 65 88

Funzione di Ripartizione

Sia X una variabile aleatoria Si chiama funzione di ripartizione di X lafunzione F che associa ad ogni numero reale a la probabilita che X siaminore o uguale ad a cioe P(X le a) = FX (a)

Nel caso della moneta (fair) lanciata 3 volte (X indica il numero di testecomplessivo)

FX (a) =

⎧⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎨⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎩

0 if a lt 0

18 per 0 le a lt 1

18 + 38 = 48 per 1 le a lt 2

48 + 38 = 78 per 2 le a lt 3

88 = 1 per a ge 3

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 66 88

Funzione di densita o di massa

Sia X una variabile aleatoria Si chiama funzione di densita di X lafunzione f che associa ad ogni numero reale a la probabilita che X siauguale ad a indicata con fX (a)

Nel caso della moneta (fair) lanciata 3 volte (X indica il numero di testecomplessivo)

fX (a) =

⎧⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎨⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎩

18 per a = 0

38 per a = 1

38 per a = 2

18 per a = 3

0 altrimenti

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 67 88

Valore Atteso

Chiamato anche media (expectation in inglese) e appunto una mediapesata dei possibili valori di una variabile aleatoria Il peso dato a ciascunvalore e la probabilita data a quello specifico valore

E[X ] =sumi

aiP(X = ai)

Esempio dado truccato

valore 6 con probabilita 712

valori da 1 a 5 con probabilita 112

La variabile aleatoria X indica la faccia risultante dal lancio di un dado

E[X ] = 1

12lowast 1 + 1

12lowast 2 + 1

12lowast 3 + 1

12lowast 4 + 1

12lowast 5 + 7

12lowast 6 = 475

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 68 88

Valore Atteso - Proprieta

Sia X una variabile aleatoria con valore atteso E[X ] Se c e una costanteallora anche cX e X + c sono variabili casuali In particolare valgono leseguenti proprieta

E[cX ] = cE[X ]E[X + c] = E[X ] + c

Sia Y una variabile aleatoria Allora

E[X +Y ] = E[X ] +E[Y ]se e solo se X e Y sono independenti

E[XY ] = E[X ]E[Y ]

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 69 88

Varianza

Ersquo il valore atteso del quadrato della differenza tra la variabile aleatoria e ilsuo valore atteso

Var(X ) = E[(X minusE[X ])2] = E[X 2] minus (E[X ])2

La radice quadrata viene detta deviazione standard di X

Esempio dado truccato

E[X 2] = 1

12lowast 12 + 1

12lowast 22 + 1

12lowast 32 + 1

12lowast 42 + 1

12lowast 52 + 7

12lowast 62 ≃ 255

Var(X ) = E[X 2] minus (E[X ])2 ≃ 255 minus 4752 ≃ 3

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 70 88

Varianza - proprieta

Sia X una variabile aleatoria e c una costante Allora valgono le seguentiproprieta

1 Var(cX ) = c2Var(X )

2 Var(X + c) = Var(X )

NOTA

Var(X +X ) ne Var(X ) +Var(X )

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 71 88

Covarianza

Siano X Y due variabili aleatorie con valore atteso rispettivamenteE[X ] = microX e E[Y ] = microY La covarianza e definita come segue

Cov(X Y ) = E[(X minus microX )(Y minus microY )] = = E[XY ] minus microXmicroY

Proprieta

1 Cov(X Y ) = Cov(Y X )2 Cov(X X ) = Var(X )3 Sia a una costante allora

Cov(aX Y ) = aCov(X Y )

4 Sia Z una variabile aleatoria allora

Cov(X + Z Y ) = Cov(X Y ) + Cov(Z Y )

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 72 88

Esercizi - 1

1 Consideriamo una variabile aleatoria X che puo assumere i valori 12o 3 Se sappiamo che

fX (1) = 1

3 fX (2) = 3

7

1 Quanto vale fX (3)2 Disegnare il grafico di questa funzione di massa3 Disegnare il grafico della relativa funzione di ripartizione

2 Dimostrare che se X1 e X2 hanno la stessa distribuzione allora

Cov(X1 +X2X1 minusX2) = 0

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 73 88

Esercizi - 2

3 La funzione di ripartizione di X e definita come segue

FX (x) =

⎧⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎨⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎩

0 per x le 0

x2 per 0 le x lt 1

23 per 1 le x lt 2

1112 per 2 le x lt 3

1 per x ge 3

Se ne tracci il graficoQuanto vale P(X gt 12)Quanto vale P(2 le X le 4)Quanto vale P(X le 3)Quanto vale P(X = 1)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 74 88

Esercizi - 3

4 Un tipo di prodotti vengono classificati a seconda dei loro difetti edella fabbrica che li ha prodotti Sia X1 il numero (1 o 2) dellafabbrica e sia X2 il numero di difetti per pezzo (che possono essere da0 a 3) di un prodotto scelto a caso tra la totalita di quelli esistentiLa tabella seguente riporta la funzione di massa di probabilitacongiunta per queste due variabili aleatorie discrete Le righe siriferiscono alla variabile X1 mentre le colonne alla variabile X2

Trova le distribuzioni marginali di X1 e X2Calcola media e varianza di X2

0 1 2 31 18 116 316 182 116 116 18 14

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 75 88

Scipy

Scipy e un modulo che permette di utilizzare varie distribuzioni diprobabilita sia di tipo discreto che continuo

La sintassi generale e la seguente Scipystatsltnome distribuzionegt

rvs(size=z) restituisce un vettore di numeri casuali estrattisecondo la distribuzione di lunghezza z

pdf(x) restituisce il vettore della densita della distribuzionevalutata nei valori del vettore di input x (pmf per le discrete)

cdf(x) restituisce il vettore della funzione di ripartizione (ocumulativa) della distribuzione valutata nei valori del vettore di inputx

ppf(q) restituisce il vettore dei quantili della distribuzione valutatanei valori del vettore di input q

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 76 88

Variabili aleatorie discrete Binomiale

gtgtgt from scipystats import binom

gtgtgt rv = binom(n p)

rvrvs(x) restituisce un vettore di x numeri estratti secondo unadistribuzione Binomiale di parametri n p

rvpmf(x) restituisce la probabilita di ottenere esattamente x

successi in un esperimento dicotomico (01) ripetuto n volte con unaprobabilita di successo p (x puo essere un vettore)

rvcdf(q) restituisce il valore della funzione di ripartizione in q (qpuo essere un vettore)

rvppf(p) restituisce il valore del quantile di ordine p

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 77 88

Variabili aleatorie discrete Ipergeometrica

Supponiamo di avere M = 20 animali di cui n = 7 cani Se vogliamosapere la probabilita di trovare un dato numero di cani se scegliamoN = 12 dei 20 animali in maniera casuale possiamo usare una distribuzioneipergeometrica in questo modo

gtgtgt from scipystats import hypergeom

gtgtgt [M n N] = [20 7 12]

gtgtgt rv = hypergeom(M n N)

rvpmf(x) restituisce la probabilita di estrarre esattamente x cani

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 78 88

Variabili aleatorie discrete Geometrica

gtgtgt from scipystats import geom

gtgtgt rv = geom(p)

rvpmf(x) restituisce la probabilita di avere un successo dopoesattamente x insuccessi in una successione di esperimenti dicotomici(esito 01) con una probabilita di successo p (x puo essere un vettore)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 79 88

Variabili aleatorie discrete Poisson

La distribuzione di Poisson viene usata spesso come modello per il numerodi volte per cui un evento avviene in un dato intervallo di tempo (ospazio) Ad esempio si puo utilizzare per misurare il numero di chiamatericevute da un call center in una mattinata

gtgtgt from scipystats import poisson

gtgtgt mu = 2

gtgtgt rv = poisson(mu)

rvpmf(x) restituisce il seguente valore

f (x) = exp(minusmicro)microx

x

In questo caso x rappresenta il numero di eventi per cui si vuole calcolarela probabilita sapendo che in media ne accadono micro

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 80 88

Variabili aleatorie continue Uniforme

In Scipy la funzione uniforme e soltanto continua Questo significa chenella generazione di numeri casuali otterro dati di tipo float Possiamotuttavia simulare una variabile discreta estraendo la parte intera delrisultato ottenuto

gtgtgt from scipystats import uniform

gtgtgt rv = uniform()

Il comando uniform() crea una distribuzione uniforme nellrsquointervallo[01] Possiamo creare una distribuzione uniforme qualsiasi usandouniform(x y - x) per lrsquointervallo [x y]

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 81 88

Variabili aleatorie continue

norm(mu sigma) variabile Gaussiana (o Normale) di media micro edeviazione standard σ

expon(scale = 1 lambda) variabile Esponenziale di parametroλ

Altre distribuzioni (con relativa documentazione) disponibili suhttpsdocsscipyorgdocscipyreferencestatshtml

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 82 88

Esercizi - 1

1 Unrsquourna contiene 10 palline di cui 4 bianche e 6 nere Si eseguono 5estrazioni con reimmissione

1 Tracciare grafico della funzione massa di probabilita della variabilecasuale X = rdquonumero di palline bianche estratterdquo

2 Calcolare la probabilita di estrarre 2 palline bianche3 Calcolare la probabilita di estrarre al piu 2 palline bianche4 Calcolare la probabilita di estrarre almeno 2 palline bianche5 Qual e il numero minimo x tale che la probabilita di estrarre al piu x

palline bianche sia almeno 08

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 83 88

Esercizi - 2

2 Si eseguono 10 estrazioni senza reimmissione da unrsquourna

1 Tracciare il grafico della funzione massa di probabilita della variabilecasuale X = rdquonumero di palline bianche estratterdquo nei seguenti casi

1 lrsquourna contiene 100 palline di cui 20 bianche e le restanti nere2 lrsquourna contiene 100 palline di cui 2 bianche e le restanti nere

2 Tracciare il grafico della funzione massa di probabilita della variabilecasuale X nel caso dellrsquourna 1 se si eseguono 25 estrazioni

3 Consideriamo lrsquourna 1 e N = 10 estrazioni Si aumenti il numero totaleM di palline nellrsquourna mantenendo uguale a 02 la frazione di pallinebianche Per ciascun valore di M confrontare graficamente ladistribuzione di probabilita del numero di palline bianche estratte nelcaso di estrazioni con e senza reimmissione Provare con 20 40 e 200palline bianche

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 84 88

Esercizi - 3

3 Calcolare la probabilita di ottenere piu teste che croci lanciando 7volte una moneta truccata con probabilita di avere croce pari a 045

4 Calcolare la probabilita di avere almeno 3 sei lanciando 5 dadi a 12facce

5 Calcolare la probabilita di estrarre 20 euro da un sacco contenente 47monete da 1 centesimo e 53 da 2 euro estraendo (uniformemente) acaso 10 monete senza reinserirle

6 Un grammo di uranio emette mediamente 2152 particelle α ognimillisecondo Qual e con buona approssimazione la probabilita che ungrammo di uranio emetta al piu 2000 particelle α in un millisecondo

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 85 88

Esercizi - 4

7 Un uomo si risveglia in mezzo al deserto senza acqua Dopo ogniminuto ha una probabilita del 3 di perdere conoscenza per via dellecondizioni estreme Calcolare la probabilita che lrsquouomo perdaconoscenza dopo almeno due ore e la probabilita che lrsquouomo perdaconoscenza dopo esattamente un quarto drsquoora

8 Sia X una variabile aleatoria normale di parametri micro = 10 e σ = 36Calcola

1 P(X gt 5)2 P(4 le X le 16)3 P(X le 8)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 86 88

Esercizi - 5

9 Il numero di errori tipografici per pagina di una certa rivista segue unadistribuzione di Poisson Sapendo che mediamente sono presenti 02errori per pagina determinare la probabilita che una pagina contenga

1 nessun refuso2 piu refusi

10 Arrivi alla fermata dellrsquoautobus alle 1000 e sei certo che ne passerauno in un momento distribuito uniformemente tra le 1000 e le 1030

1 Qual e la probabilita che tu debba aspettare piu di 10 minuti2 Se alle 1015 lrsquoautobus non e ancora arrivato qual e la probabilita che

tu debba aspettare almeno altri 10 minuti

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 87 88

Esercizi - 6

11 Il signor Jones e convinto che il tempo di vita di una automobile (inmigliaia di chilometri percorse) sia una variabile aleatoria esponenzialedi parametro 120 Il signor Smith ha una macchina usata da vendereche ha percorso circa 10 000 chilometri

1 Se il signor Jones decide di comprarla che probabilita ha di farle farealmeno altri 20 000 chilometri prima che sia da buttare

2 Il modello assunto dal signor Jones e ragionevole

12 Sia X una variabile casuale binomiale di parametri n = 100 e p = 07

1 Tracciate la funzione di ripartizione di X2 Calcolate il primo quartile il quantile di ordine 09 e la mediana di X3 Calcolare la probabilita P(X le 60)4 Calcolare la probabilita P(X le 88)5 Trovare il piu piccolo valore x tale che P(X le x) ge 09

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 88 88

  • Lezione 1
    • Script in Python
    • Numpy
    • Esercizi
    • Pandas
    • Esercizi
      • Lezione 2
        • File csv
        • DataFrame
        • Accesso ai DataFrame
        • Frequenze
        • Esercizi
          • Lezione 3
            • Matplotlib
            • Grafici a Barre
            • Istogrammi
            • Cumulativa empirica
            • Boxplot
            • QQplot
            • Diagramma di Pareto
            • Esercizi
              • Lezione 4
                • Definizioni
                • Probabilitagrave condizionata
                • Indipendenza
                • Esercizi
                  • Lezione 5
                    • Variabili Aleatorie
                    • Funzione di Ripartizione
                    • Funzione di Densitagrave
                    • Valore Atteso
                    • Varianza
                    • Covarianza
                    • Esercizi
                      • Lezione 6
                        • Scipy - Variabili Discrete
                        • Scipy - Variabili continue
                        • 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) SAD 20182019 January 12 2019 37 88

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) SAD 20182019 January 12 2019 38 88

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) SAD 20182019 January 12 2019 39 88

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) SAD 20182019 January 12 2019 40 88

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) SAD 20182019 January 12 2019 41 88

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) SAD 20182019 January 12 2019 42 88

Grafici con le Series

In generale possiamo tracciare diversi tipi di grafici con le Series

rsquolinersquo line plot (default)

rsquobarrsquo vertical bar plot

rsquobarhrsquo horizontal bar plot

rsquohistrsquo histogram

rsquoboxrsquo boxplot

rsquokdersquo Kernel Density Estimation plot

rsquodensityrsquo same as rsquokdersquo

rsquoarearsquo area plot

rsquopiersquo pie plot

Per saperne di piu consultare questo link

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 43 88

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) SAD 20182019 January 12 2019 44 88

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) SAD 20182019 January 12 2019 45 88

Boxplot

Rappresenta la distribuzione di un vettore di numeri cerchiando gli outlier

gtgtgt weight = heroes[rsquoWeightrsquo]

gtgtgt weightplotbox()

gtgtgt pltshow()

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 46 88

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) SAD 20182019 January 12 2019 47 88

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) SAD 20182019 January 12 2019 48 88

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) SAD 20182019 January 12 2019 49 88

Esercizi - 1

Utilizzando il file capellicsv dai csv del laboratorio

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) SAD 20182019 January 12 2019 50 88

Esercizi - 2

Utilizzando il file dati-ospedalicsv dai csv del laboratorio

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 e canipdf

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 51 88

Sample space

Un esperimento e qualsiasi processo che produce una realizzazione (oosservazione) Lrsquoinsieme di tutte le possibili realizzazioni di un esperimentoviene detto sample space ed indicato con S

lancio di 2 monete

S = (T T ) (T C) (C T ) (C C)

gara di 3 cavalli (ab c)

S = tutti i possibili ordinamenti di(ab c)= (ab c) (a cb) (c b a)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 52 88

Eventi

lancio di 2 monete

S = (T T ) (T C) (C T ) (C C)

A = 2 monete uguali

A = (T T ) (C C)

B = 2 monete diverse

B = Ac = (T C) (C T )

gara di 3 cavalli

A = cavallo a vincente

A = (ab c) (a c b)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 53 88

Probabilita - 1

Consideriamo un esperimento con sample space S Supponiamo che adogni evento A sia associato un numero chiamato probabilita di A edindicato con P(A) che soddisfa le seguenti proprieta

1 Per ogni evento A la probabilita di A e un numero tra 0 e 1

0 le P(A) le 1

2 La probabilita del sample space S e 1

P(S) = 1

3 La probabilita dellrsquounione di eventi disgiunti e uguale alla somma delleprobabilita di tali eventi

P(A cupB) = P(A) + P(B)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 54 88

Probabilita - 2

In generale 2 eventi potrebbero non essere disgiunti

P(A cupB) = P(A) + P(B) minus P(A capB)

Esempio un certo negozio accetta pagamenti o con carte di credito VISAo Mastercard

1 22 dei clienti ha Mastercard

2 58 dei clienti ha VISA

3 14 dei clienti ha entrambe

Qual e la probabilita che un cliente ha almeno una delle 2 carte

P(A) = 022 P(B) = 058

P(A cupB) = P(A) + P(B) minus P(A capB) = 022 + 058 minus 014 = 066

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 55 88

Probabilita condizionata - 1

Se alcune informazioni riguardo lrsquoesito di un esperimento sono disponibiliparliamo di probabilita condizionata

Esempio lancio di 2 dadi

S = (11) (12) (65) (66)

Probabilita che la somma sia 10 (evento B) sapendo che il primo dadomostra 4 (evento A)

(41) (42) (43) (44) (45) (46)

P(B ∣A) = 16

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 56 88

Probabilita condizionata - 2

In generale

P(B ∣A) = P(A capB)P(A)

Supponiamo lrsquoesito sia in A

Per essere anche in B deve essere in entrambi A e B cioe in A capB

Sapendo che A e gia accaduto il nostro nuovo sample space diventa A

la probabilita di A capB viene calcolata rispetto ad A

Nel caso dei dadi

P(B ∣A) = P((46))P((41) (42) (43) (44) (45) (46)) = 136

16= 1

6

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 57 88

Indipendenza

In generale sapere che A e accaduto modifica le chance che B accadaNel caso cio non avvenga cioe se P(B ∣A) = P(B) allora i 2 eventi sidicono indipendenti In questo caso sapere che A e accaduto nonaggiunge alcuna informazione

SiccomeP(A capB) = P(B ∣A)P(A)

Abbiamo che B e indipendente da A se

P(A capB) = P(B)P(A)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 58 88

Esercizi - 1

1 Svolgere gli esercizi di combinatoria

2 Si consideri il seguente esperimento casuale rdquosi lancia tre volte unamonetardquo Qual e lo spazio degli esiti di questo esperimento casualeSi scriva esplicitamente lrsquoevento rdquosi ottengono piu teste che crocirdquo

3 Si consideri il seguente esperimento casuale rdquoSi tirano due dadirdquo Siconsiderino gli eventi E = rdquola somma dei punteggi e disparirdquo F = rdquoilprimo dado realizza un 1rdquo e G = rdquola somma dei punteggi e 5rdquo Sidescrivano gli eventi E cap F E cup F F capG E cap F c e E cap F capG

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 59 88

Esercizi - 2

4 Si consideri il seguente esperimento casuale rdquoUn sistema e compostoda 4 componenti ciascuno dei quali o funziona oppure e guasto Siosserva lo stato dei componenti ottenendo un vettore (x1 x2 x3 x4)dove xi e 1 oppure 0 a seconda che il componente i-esimo funzionioppure nordquo

1 Da quanti elementi e formato lo spazio degli esiti2 Il sistema nel suo insieme funziona fintantoche entrambi i componenti

1 e 2 oppure entrambi i componenti 3 e 4 funzionano Specifica tuttigli esiti dellrsquoevento il rdquosistema funzionardquo

3 Sia E lrsquoevento rdquoi componenti 1 e 3 sono guastirdquo Quanti esiti contiene

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 60 88

Esercizi - 3

5 Si dimostri che in uno spazio degli esiti Ω dotato di una probabilita Pper ogni evento E F sub Ω vale la disuguaglianza seguente

P(E cap F ) ge P(E) + P(F ) minus 1

6 Un gruppo di 5 bambini e 10 bambine e in fila in ordine casuale nelsenso che tutte le 15 possibili permutazioni si suppongonoequiprobabili

1 Qual e la probabilita che il quarto della fila sia un bambino2 E il dodicesimo3 Qual e la probabilita che un determinato bambino occupi la terza

posizione

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 61 88

Esercizi - 4

7 In un comune vi sono 5 alberghi Se 3 persone devono scegliere unalbergo in cui pernottare qual e la probabilita che finiscano tutte inalberghi differenti Che cosa stiamo assumendo senza dirloesplicitamente

8 La media del salario annuale di un gruppo di 100 lavoratori impiegatinellrsquoamministrazione di una grande azienda e di 130000 dollari conuna deviazione standard di 20000 dollari Se si prende una persona acaso da questo gruppo cosa possiamo dire sulla probabilita che il suosalario sia

1 tra i 90000 e i 170000 dollari2 superiore a 150000 dollari

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 62 88

Esercizi - 5

9 In una certa regione vi sono due ditte che producono forni amicroonde Quelli della fabbrica A sono difettosi con probabilita 005mentre quelli della fabbrica B con probabilita 001 Supponi di averacquistato due apparecchi prodotti dalla stessa ditta che puo essere laA o la B con probabilita del 50 Se il primo microonde e difettosoqual e la probabilita condizionata che sia difettoso anche il secondo

10 Hai chiesto ad un vicino di innaffiare una piantina delicata mentre seiin vacanza Pensi che senza acqua la piantina muoia con probabilita08 mentre se innaffiata questa probabilita si ridurrebbe a 015 Latua fiducia che il vicino si ricordi di innaffiarla e del 90

1 Qual e la probabilita che la pianta sia ancora viva al tuo ritorno2 Se fosse morta quale sarebbe la probabilita che il vicino si sia

dimenticato di innaffiarla

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 63 88

Esercizi - 6

11 Una compagnia di assicurazioni classifica i suoi clienti in tre fascebasso rischio medio rischio alto rischio Le sue statistiche indicanoche le probabilita che un cliente delle tre fasce abbia un incidenteentro un periodo di un anno sono rispettivamente 005 015 e 030Se il 20 dei clienti sono a basso rischio il 50 a medio rischio e il30 ad alto rischio che percentuale dei clienti avra mediamenteincidenti in un lasso di un anno Se un cliente non ha avuto incidentinel 1987 qual e la probabilita che appartenga a ciascuna delle trefasce

12 Se un votante scelto a caso e favorevole ad una certa riforma conprobabilita di 07 qual e la probabilita che su 10 votanti esattamente7 siano favorevoli

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 64 88

Variabili aleatorie

Una variabile aleatoria (o anche variabile aleatoria) e una variabile chepuo assumere valori diversi in dipendenza da qualche fenomeno aleatorio

fenomeno lancio di 2 dadivariabile aleatoria somma dei 2 dadi

fenomeno 3 lanci di una monetavariabile aleatoria numero di rdquotesterdquo complessivo

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 65 88

Funzione di Ripartizione

Sia X una variabile aleatoria Si chiama funzione di ripartizione di X lafunzione F che associa ad ogni numero reale a la probabilita che X siaminore o uguale ad a cioe P(X le a) = FX (a)

Nel caso della moneta (fair) lanciata 3 volte (X indica il numero di testecomplessivo)

FX (a) =

⎧⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎨⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎩

0 if a lt 0

18 per 0 le a lt 1

18 + 38 = 48 per 1 le a lt 2

48 + 38 = 78 per 2 le a lt 3

88 = 1 per a ge 3

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 66 88

Funzione di densita o di massa

Sia X una variabile aleatoria Si chiama funzione di densita di X lafunzione f che associa ad ogni numero reale a la probabilita che X siauguale ad a indicata con fX (a)

Nel caso della moneta (fair) lanciata 3 volte (X indica il numero di testecomplessivo)

fX (a) =

⎧⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎨⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎩

18 per a = 0

38 per a = 1

38 per a = 2

18 per a = 3

0 altrimenti

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 67 88

Valore Atteso

Chiamato anche media (expectation in inglese) e appunto una mediapesata dei possibili valori di una variabile aleatoria Il peso dato a ciascunvalore e la probabilita data a quello specifico valore

E[X ] =sumi

aiP(X = ai)

Esempio dado truccato

valore 6 con probabilita 712

valori da 1 a 5 con probabilita 112

La variabile aleatoria X indica la faccia risultante dal lancio di un dado

E[X ] = 1

12lowast 1 + 1

12lowast 2 + 1

12lowast 3 + 1

12lowast 4 + 1

12lowast 5 + 7

12lowast 6 = 475

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 68 88

Valore Atteso - Proprieta

Sia X una variabile aleatoria con valore atteso E[X ] Se c e una costanteallora anche cX e X + c sono variabili casuali In particolare valgono leseguenti proprieta

E[cX ] = cE[X ]E[X + c] = E[X ] + c

Sia Y una variabile aleatoria Allora

E[X +Y ] = E[X ] +E[Y ]se e solo se X e Y sono independenti

E[XY ] = E[X ]E[Y ]

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 69 88

Varianza

Ersquo il valore atteso del quadrato della differenza tra la variabile aleatoria e ilsuo valore atteso

Var(X ) = E[(X minusE[X ])2] = E[X 2] minus (E[X ])2

La radice quadrata viene detta deviazione standard di X

Esempio dado truccato

E[X 2] = 1

12lowast 12 + 1

12lowast 22 + 1

12lowast 32 + 1

12lowast 42 + 1

12lowast 52 + 7

12lowast 62 ≃ 255

Var(X ) = E[X 2] minus (E[X ])2 ≃ 255 minus 4752 ≃ 3

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 70 88

Varianza - proprieta

Sia X una variabile aleatoria e c una costante Allora valgono le seguentiproprieta

1 Var(cX ) = c2Var(X )

2 Var(X + c) = Var(X )

NOTA

Var(X +X ) ne Var(X ) +Var(X )

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 71 88

Covarianza

Siano X Y due variabili aleatorie con valore atteso rispettivamenteE[X ] = microX e E[Y ] = microY La covarianza e definita come segue

Cov(X Y ) = E[(X minus microX )(Y minus microY )] = = E[XY ] minus microXmicroY

Proprieta

1 Cov(X Y ) = Cov(Y X )2 Cov(X X ) = Var(X )3 Sia a una costante allora

Cov(aX Y ) = aCov(X Y )

4 Sia Z una variabile aleatoria allora

Cov(X + Z Y ) = Cov(X Y ) + Cov(Z Y )

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 72 88

Esercizi - 1

1 Consideriamo una variabile aleatoria X che puo assumere i valori 12o 3 Se sappiamo che

fX (1) = 1

3 fX (2) = 3

7

1 Quanto vale fX (3)2 Disegnare il grafico di questa funzione di massa3 Disegnare il grafico della relativa funzione di ripartizione

2 Dimostrare che se X1 e X2 hanno la stessa distribuzione allora

Cov(X1 +X2X1 minusX2) = 0

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 73 88

Esercizi - 2

3 La funzione di ripartizione di X e definita come segue

FX (x) =

⎧⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎨⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎩

0 per x le 0

x2 per 0 le x lt 1

23 per 1 le x lt 2

1112 per 2 le x lt 3

1 per x ge 3

Se ne tracci il graficoQuanto vale P(X gt 12)Quanto vale P(2 le X le 4)Quanto vale P(X le 3)Quanto vale P(X = 1)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 74 88

Esercizi - 3

4 Un tipo di prodotti vengono classificati a seconda dei loro difetti edella fabbrica che li ha prodotti Sia X1 il numero (1 o 2) dellafabbrica e sia X2 il numero di difetti per pezzo (che possono essere da0 a 3) di un prodotto scelto a caso tra la totalita di quelli esistentiLa tabella seguente riporta la funzione di massa di probabilitacongiunta per queste due variabili aleatorie discrete Le righe siriferiscono alla variabile X1 mentre le colonne alla variabile X2

Trova le distribuzioni marginali di X1 e X2Calcola media e varianza di X2

0 1 2 31 18 116 316 182 116 116 18 14

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 75 88

Scipy

Scipy e un modulo che permette di utilizzare varie distribuzioni diprobabilita sia di tipo discreto che continuo

La sintassi generale e la seguente Scipystatsltnome distribuzionegt

rvs(size=z) restituisce un vettore di numeri casuali estrattisecondo la distribuzione di lunghezza z

pdf(x) restituisce il vettore della densita della distribuzionevalutata nei valori del vettore di input x (pmf per le discrete)

cdf(x) restituisce il vettore della funzione di ripartizione (ocumulativa) della distribuzione valutata nei valori del vettore di inputx

ppf(q) restituisce il vettore dei quantili della distribuzione valutatanei valori del vettore di input q

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 76 88

Variabili aleatorie discrete Binomiale

gtgtgt from scipystats import binom

gtgtgt rv = binom(n p)

rvrvs(x) restituisce un vettore di x numeri estratti secondo unadistribuzione Binomiale di parametri n p

rvpmf(x) restituisce la probabilita di ottenere esattamente x

successi in un esperimento dicotomico (01) ripetuto n volte con unaprobabilita di successo p (x puo essere un vettore)

rvcdf(q) restituisce il valore della funzione di ripartizione in q (qpuo essere un vettore)

rvppf(p) restituisce il valore del quantile di ordine p

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 77 88

Variabili aleatorie discrete Ipergeometrica

Supponiamo di avere M = 20 animali di cui n = 7 cani Se vogliamosapere la probabilita di trovare un dato numero di cani se scegliamoN = 12 dei 20 animali in maniera casuale possiamo usare una distribuzioneipergeometrica in questo modo

gtgtgt from scipystats import hypergeom

gtgtgt [M n N] = [20 7 12]

gtgtgt rv = hypergeom(M n N)

rvpmf(x) restituisce la probabilita di estrarre esattamente x cani

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 78 88

Variabili aleatorie discrete Geometrica

gtgtgt from scipystats import geom

gtgtgt rv = geom(p)

rvpmf(x) restituisce la probabilita di avere un successo dopoesattamente x insuccessi in una successione di esperimenti dicotomici(esito 01) con una probabilita di successo p (x puo essere un vettore)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 79 88

Variabili aleatorie discrete Poisson

La distribuzione di Poisson viene usata spesso come modello per il numerodi volte per cui un evento avviene in un dato intervallo di tempo (ospazio) Ad esempio si puo utilizzare per misurare il numero di chiamatericevute da un call center in una mattinata

gtgtgt from scipystats import poisson

gtgtgt mu = 2

gtgtgt rv = poisson(mu)

rvpmf(x) restituisce il seguente valore

f (x) = exp(minusmicro)microx

x

In questo caso x rappresenta il numero di eventi per cui si vuole calcolarela probabilita sapendo che in media ne accadono micro

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 80 88

Variabili aleatorie continue Uniforme

In Scipy la funzione uniforme e soltanto continua Questo significa chenella generazione di numeri casuali otterro dati di tipo float Possiamotuttavia simulare una variabile discreta estraendo la parte intera delrisultato ottenuto

gtgtgt from scipystats import uniform

gtgtgt rv = uniform()

Il comando uniform() crea una distribuzione uniforme nellrsquointervallo[01] Possiamo creare una distribuzione uniforme qualsiasi usandouniform(x y - x) per lrsquointervallo [x y]

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 81 88

Variabili aleatorie continue

norm(mu sigma) variabile Gaussiana (o Normale) di media micro edeviazione standard σ

expon(scale = 1 lambda) variabile Esponenziale di parametroλ

Altre distribuzioni (con relativa documentazione) disponibili suhttpsdocsscipyorgdocscipyreferencestatshtml

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 82 88

Esercizi - 1

1 Unrsquourna contiene 10 palline di cui 4 bianche e 6 nere Si eseguono 5estrazioni con reimmissione

1 Tracciare grafico della funzione massa di probabilita della variabilecasuale X = rdquonumero di palline bianche estratterdquo

2 Calcolare la probabilita di estrarre 2 palline bianche3 Calcolare la probabilita di estrarre al piu 2 palline bianche4 Calcolare la probabilita di estrarre almeno 2 palline bianche5 Qual e il numero minimo x tale che la probabilita di estrarre al piu x

palline bianche sia almeno 08

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 83 88

Esercizi - 2

2 Si eseguono 10 estrazioni senza reimmissione da unrsquourna

1 Tracciare il grafico della funzione massa di probabilita della variabilecasuale X = rdquonumero di palline bianche estratterdquo nei seguenti casi

1 lrsquourna contiene 100 palline di cui 20 bianche e le restanti nere2 lrsquourna contiene 100 palline di cui 2 bianche e le restanti nere

2 Tracciare il grafico della funzione massa di probabilita della variabilecasuale X nel caso dellrsquourna 1 se si eseguono 25 estrazioni

3 Consideriamo lrsquourna 1 e N = 10 estrazioni Si aumenti il numero totaleM di palline nellrsquourna mantenendo uguale a 02 la frazione di pallinebianche Per ciascun valore di M confrontare graficamente ladistribuzione di probabilita del numero di palline bianche estratte nelcaso di estrazioni con e senza reimmissione Provare con 20 40 e 200palline bianche

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 84 88

Esercizi - 3

3 Calcolare la probabilita di ottenere piu teste che croci lanciando 7volte una moneta truccata con probabilita di avere croce pari a 045

4 Calcolare la probabilita di avere almeno 3 sei lanciando 5 dadi a 12facce

5 Calcolare la probabilita di estrarre 20 euro da un sacco contenente 47monete da 1 centesimo e 53 da 2 euro estraendo (uniformemente) acaso 10 monete senza reinserirle

6 Un grammo di uranio emette mediamente 2152 particelle α ognimillisecondo Qual e con buona approssimazione la probabilita che ungrammo di uranio emetta al piu 2000 particelle α in un millisecondo

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 85 88

Esercizi - 4

7 Un uomo si risveglia in mezzo al deserto senza acqua Dopo ogniminuto ha una probabilita del 3 di perdere conoscenza per via dellecondizioni estreme Calcolare la probabilita che lrsquouomo perdaconoscenza dopo almeno due ore e la probabilita che lrsquouomo perdaconoscenza dopo esattamente un quarto drsquoora

8 Sia X una variabile aleatoria normale di parametri micro = 10 e σ = 36Calcola

1 P(X gt 5)2 P(4 le X le 16)3 P(X le 8)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 86 88

Esercizi - 5

9 Il numero di errori tipografici per pagina di una certa rivista segue unadistribuzione di Poisson Sapendo che mediamente sono presenti 02errori per pagina determinare la probabilita che una pagina contenga

1 nessun refuso2 piu refusi

10 Arrivi alla fermata dellrsquoautobus alle 1000 e sei certo che ne passerauno in un momento distribuito uniformemente tra le 1000 e le 1030

1 Qual e la probabilita che tu debba aspettare piu di 10 minuti2 Se alle 1015 lrsquoautobus non e ancora arrivato qual e la probabilita che

tu debba aspettare almeno altri 10 minuti

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 87 88

Esercizi - 6

11 Il signor Jones e convinto che il tempo di vita di una automobile (inmigliaia di chilometri percorse) sia una variabile aleatoria esponenzialedi parametro 120 Il signor Smith ha una macchina usata da vendereche ha percorso circa 10 000 chilometri

1 Se il signor Jones decide di comprarla che probabilita ha di farle farealmeno altri 20 000 chilometri prima che sia da buttare

2 Il modello assunto dal signor Jones e ragionevole

12 Sia X una variabile casuale binomiale di parametri n = 100 e p = 07

1 Tracciate la funzione di ripartizione di X2 Calcolate il primo quartile il quantile di ordine 09 e la mediana di X3 Calcolare la probabilita P(X le 60)4 Calcolare la probabilita P(X le 88)5 Trovare il piu piccolo valore x tale che P(X le x) ge 09

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 88 88

  • Lezione 1
    • Script in Python
    • Numpy
    • Esercizi
    • Pandas
    • Esercizi
      • Lezione 2
        • File csv
        • DataFrame
        • Accesso ai DataFrame
        • Frequenze
        • Esercizi
          • Lezione 3
            • Matplotlib
            • Grafici a Barre
            • Istogrammi
            • Cumulativa empirica
            • Boxplot
            • QQplot
            • Diagramma di Pareto
            • Esercizi
              • Lezione 4
                • Definizioni
                • Probabilitagrave condizionata
                • Indipendenza
                • Esercizi
                  • Lezione 5
                    • Variabili Aleatorie
                    • Funzione di Ripartizione
                    • Funzione di Densitagrave
                    • Valore Atteso
                    • Varianza
                    • Covarianza
                    • Esercizi
                      • Lezione 6
                        • Scipy - Variabili Discrete
                        • Scipy - Variabili continue
                        • 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) SAD 20182019 January 12 2019 38 88

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) SAD 20182019 January 12 2019 39 88

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) SAD 20182019 January 12 2019 40 88

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) SAD 20182019 January 12 2019 41 88

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) SAD 20182019 January 12 2019 42 88

Grafici con le Series

In generale possiamo tracciare diversi tipi di grafici con le Series

rsquolinersquo line plot (default)

rsquobarrsquo vertical bar plot

rsquobarhrsquo horizontal bar plot

rsquohistrsquo histogram

rsquoboxrsquo boxplot

rsquokdersquo Kernel Density Estimation plot

rsquodensityrsquo same as rsquokdersquo

rsquoarearsquo area plot

rsquopiersquo pie plot

Per saperne di piu consultare questo link

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 43 88

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) SAD 20182019 January 12 2019 44 88

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) SAD 20182019 January 12 2019 45 88

Boxplot

Rappresenta la distribuzione di un vettore di numeri cerchiando gli outlier

gtgtgt weight = heroes[rsquoWeightrsquo]

gtgtgt weightplotbox()

gtgtgt pltshow()

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 46 88

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) SAD 20182019 January 12 2019 47 88

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) SAD 20182019 January 12 2019 48 88

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) SAD 20182019 January 12 2019 49 88

Esercizi - 1

Utilizzando il file capellicsv dai csv del laboratorio

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) SAD 20182019 January 12 2019 50 88

Esercizi - 2

Utilizzando il file dati-ospedalicsv dai csv del laboratorio

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 e canipdf

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 51 88

Sample space

Un esperimento e qualsiasi processo che produce una realizzazione (oosservazione) Lrsquoinsieme di tutte le possibili realizzazioni di un esperimentoviene detto sample space ed indicato con S

lancio di 2 monete

S = (T T ) (T C) (C T ) (C C)

gara di 3 cavalli (ab c)

S = tutti i possibili ordinamenti di(ab c)= (ab c) (a cb) (c b a)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 52 88

Eventi

lancio di 2 monete

S = (T T ) (T C) (C T ) (C C)

A = 2 monete uguali

A = (T T ) (C C)

B = 2 monete diverse

B = Ac = (T C) (C T )

gara di 3 cavalli

A = cavallo a vincente

A = (ab c) (a c b)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 53 88

Probabilita - 1

Consideriamo un esperimento con sample space S Supponiamo che adogni evento A sia associato un numero chiamato probabilita di A edindicato con P(A) che soddisfa le seguenti proprieta

1 Per ogni evento A la probabilita di A e un numero tra 0 e 1

0 le P(A) le 1

2 La probabilita del sample space S e 1

P(S) = 1

3 La probabilita dellrsquounione di eventi disgiunti e uguale alla somma delleprobabilita di tali eventi

P(A cupB) = P(A) + P(B)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 54 88

Probabilita - 2

In generale 2 eventi potrebbero non essere disgiunti

P(A cupB) = P(A) + P(B) minus P(A capB)

Esempio un certo negozio accetta pagamenti o con carte di credito VISAo Mastercard

1 22 dei clienti ha Mastercard

2 58 dei clienti ha VISA

3 14 dei clienti ha entrambe

Qual e la probabilita che un cliente ha almeno una delle 2 carte

P(A) = 022 P(B) = 058

P(A cupB) = P(A) + P(B) minus P(A capB) = 022 + 058 minus 014 = 066

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 55 88

Probabilita condizionata - 1

Se alcune informazioni riguardo lrsquoesito di un esperimento sono disponibiliparliamo di probabilita condizionata

Esempio lancio di 2 dadi

S = (11) (12) (65) (66)

Probabilita che la somma sia 10 (evento B) sapendo che il primo dadomostra 4 (evento A)

(41) (42) (43) (44) (45) (46)

P(B ∣A) = 16

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 56 88

Probabilita condizionata - 2

In generale

P(B ∣A) = P(A capB)P(A)

Supponiamo lrsquoesito sia in A

Per essere anche in B deve essere in entrambi A e B cioe in A capB

Sapendo che A e gia accaduto il nostro nuovo sample space diventa A

la probabilita di A capB viene calcolata rispetto ad A

Nel caso dei dadi

P(B ∣A) = P((46))P((41) (42) (43) (44) (45) (46)) = 136

16= 1

6

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 57 88

Indipendenza

In generale sapere che A e accaduto modifica le chance che B accadaNel caso cio non avvenga cioe se P(B ∣A) = P(B) allora i 2 eventi sidicono indipendenti In questo caso sapere che A e accaduto nonaggiunge alcuna informazione

SiccomeP(A capB) = P(B ∣A)P(A)

Abbiamo che B e indipendente da A se

P(A capB) = P(B)P(A)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 58 88

Esercizi - 1

1 Svolgere gli esercizi di combinatoria

2 Si consideri il seguente esperimento casuale rdquosi lancia tre volte unamonetardquo Qual e lo spazio degli esiti di questo esperimento casualeSi scriva esplicitamente lrsquoevento rdquosi ottengono piu teste che crocirdquo

3 Si consideri il seguente esperimento casuale rdquoSi tirano due dadirdquo Siconsiderino gli eventi E = rdquola somma dei punteggi e disparirdquo F = rdquoilprimo dado realizza un 1rdquo e G = rdquola somma dei punteggi e 5rdquo Sidescrivano gli eventi E cap F E cup F F capG E cap F c e E cap F capG

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 59 88

Esercizi - 2

4 Si consideri il seguente esperimento casuale rdquoUn sistema e compostoda 4 componenti ciascuno dei quali o funziona oppure e guasto Siosserva lo stato dei componenti ottenendo un vettore (x1 x2 x3 x4)dove xi e 1 oppure 0 a seconda che il componente i-esimo funzionioppure nordquo

1 Da quanti elementi e formato lo spazio degli esiti2 Il sistema nel suo insieme funziona fintantoche entrambi i componenti

1 e 2 oppure entrambi i componenti 3 e 4 funzionano Specifica tuttigli esiti dellrsquoevento il rdquosistema funzionardquo

3 Sia E lrsquoevento rdquoi componenti 1 e 3 sono guastirdquo Quanti esiti contiene

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 60 88

Esercizi - 3

5 Si dimostri che in uno spazio degli esiti Ω dotato di una probabilita Pper ogni evento E F sub Ω vale la disuguaglianza seguente

P(E cap F ) ge P(E) + P(F ) minus 1

6 Un gruppo di 5 bambini e 10 bambine e in fila in ordine casuale nelsenso che tutte le 15 possibili permutazioni si suppongonoequiprobabili

1 Qual e la probabilita che il quarto della fila sia un bambino2 E il dodicesimo3 Qual e la probabilita che un determinato bambino occupi la terza

posizione

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 61 88

Esercizi - 4

7 In un comune vi sono 5 alberghi Se 3 persone devono scegliere unalbergo in cui pernottare qual e la probabilita che finiscano tutte inalberghi differenti Che cosa stiamo assumendo senza dirloesplicitamente

8 La media del salario annuale di un gruppo di 100 lavoratori impiegatinellrsquoamministrazione di una grande azienda e di 130000 dollari conuna deviazione standard di 20000 dollari Se si prende una persona acaso da questo gruppo cosa possiamo dire sulla probabilita che il suosalario sia

1 tra i 90000 e i 170000 dollari2 superiore a 150000 dollari

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 62 88

Esercizi - 5

9 In una certa regione vi sono due ditte che producono forni amicroonde Quelli della fabbrica A sono difettosi con probabilita 005mentre quelli della fabbrica B con probabilita 001 Supponi di averacquistato due apparecchi prodotti dalla stessa ditta che puo essere laA o la B con probabilita del 50 Se il primo microonde e difettosoqual e la probabilita condizionata che sia difettoso anche il secondo

10 Hai chiesto ad un vicino di innaffiare una piantina delicata mentre seiin vacanza Pensi che senza acqua la piantina muoia con probabilita08 mentre se innaffiata questa probabilita si ridurrebbe a 015 Latua fiducia che il vicino si ricordi di innaffiarla e del 90

1 Qual e la probabilita che la pianta sia ancora viva al tuo ritorno2 Se fosse morta quale sarebbe la probabilita che il vicino si sia

dimenticato di innaffiarla

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 63 88

Esercizi - 6

11 Una compagnia di assicurazioni classifica i suoi clienti in tre fascebasso rischio medio rischio alto rischio Le sue statistiche indicanoche le probabilita che un cliente delle tre fasce abbia un incidenteentro un periodo di un anno sono rispettivamente 005 015 e 030Se il 20 dei clienti sono a basso rischio il 50 a medio rischio e il30 ad alto rischio che percentuale dei clienti avra mediamenteincidenti in un lasso di un anno Se un cliente non ha avuto incidentinel 1987 qual e la probabilita che appartenga a ciascuna delle trefasce

12 Se un votante scelto a caso e favorevole ad una certa riforma conprobabilita di 07 qual e la probabilita che su 10 votanti esattamente7 siano favorevoli

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 64 88

Variabili aleatorie

Una variabile aleatoria (o anche variabile aleatoria) e una variabile chepuo assumere valori diversi in dipendenza da qualche fenomeno aleatorio

fenomeno lancio di 2 dadivariabile aleatoria somma dei 2 dadi

fenomeno 3 lanci di una monetavariabile aleatoria numero di rdquotesterdquo complessivo

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 65 88

Funzione di Ripartizione

Sia X una variabile aleatoria Si chiama funzione di ripartizione di X lafunzione F che associa ad ogni numero reale a la probabilita che X siaminore o uguale ad a cioe P(X le a) = FX (a)

Nel caso della moneta (fair) lanciata 3 volte (X indica il numero di testecomplessivo)

FX (a) =

⎧⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎨⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎩

0 if a lt 0

18 per 0 le a lt 1

18 + 38 = 48 per 1 le a lt 2

48 + 38 = 78 per 2 le a lt 3

88 = 1 per a ge 3

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 66 88

Funzione di densita o di massa

Sia X una variabile aleatoria Si chiama funzione di densita di X lafunzione f che associa ad ogni numero reale a la probabilita che X siauguale ad a indicata con fX (a)

Nel caso della moneta (fair) lanciata 3 volte (X indica il numero di testecomplessivo)

fX (a) =

⎧⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎨⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎩

18 per a = 0

38 per a = 1

38 per a = 2

18 per a = 3

0 altrimenti

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 67 88

Valore Atteso

Chiamato anche media (expectation in inglese) e appunto una mediapesata dei possibili valori di una variabile aleatoria Il peso dato a ciascunvalore e la probabilita data a quello specifico valore

E[X ] =sumi

aiP(X = ai)

Esempio dado truccato

valore 6 con probabilita 712

valori da 1 a 5 con probabilita 112

La variabile aleatoria X indica la faccia risultante dal lancio di un dado

E[X ] = 1

12lowast 1 + 1

12lowast 2 + 1

12lowast 3 + 1

12lowast 4 + 1

12lowast 5 + 7

12lowast 6 = 475

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 68 88

Valore Atteso - Proprieta

Sia X una variabile aleatoria con valore atteso E[X ] Se c e una costanteallora anche cX e X + c sono variabili casuali In particolare valgono leseguenti proprieta

E[cX ] = cE[X ]E[X + c] = E[X ] + c

Sia Y una variabile aleatoria Allora

E[X +Y ] = E[X ] +E[Y ]se e solo se X e Y sono independenti

E[XY ] = E[X ]E[Y ]

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 69 88

Varianza

Ersquo il valore atteso del quadrato della differenza tra la variabile aleatoria e ilsuo valore atteso

Var(X ) = E[(X minusE[X ])2] = E[X 2] minus (E[X ])2

La radice quadrata viene detta deviazione standard di X

Esempio dado truccato

E[X 2] = 1

12lowast 12 + 1

12lowast 22 + 1

12lowast 32 + 1

12lowast 42 + 1

12lowast 52 + 7

12lowast 62 ≃ 255

Var(X ) = E[X 2] minus (E[X ])2 ≃ 255 minus 4752 ≃ 3

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 70 88

Varianza - proprieta

Sia X una variabile aleatoria e c una costante Allora valgono le seguentiproprieta

1 Var(cX ) = c2Var(X )

2 Var(X + c) = Var(X )

NOTA

Var(X +X ) ne Var(X ) +Var(X )

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 71 88

Covarianza

Siano X Y due variabili aleatorie con valore atteso rispettivamenteE[X ] = microX e E[Y ] = microY La covarianza e definita come segue

Cov(X Y ) = E[(X minus microX )(Y minus microY )] = = E[XY ] minus microXmicroY

Proprieta

1 Cov(X Y ) = Cov(Y X )2 Cov(X X ) = Var(X )3 Sia a una costante allora

Cov(aX Y ) = aCov(X Y )

4 Sia Z una variabile aleatoria allora

Cov(X + Z Y ) = Cov(X Y ) + Cov(Z Y )

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 72 88

Esercizi - 1

1 Consideriamo una variabile aleatoria X che puo assumere i valori 12o 3 Se sappiamo che

fX (1) = 1

3 fX (2) = 3

7

1 Quanto vale fX (3)2 Disegnare il grafico di questa funzione di massa3 Disegnare il grafico della relativa funzione di ripartizione

2 Dimostrare che se X1 e X2 hanno la stessa distribuzione allora

Cov(X1 +X2X1 minusX2) = 0

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 73 88

Esercizi - 2

3 La funzione di ripartizione di X e definita come segue

FX (x) =

⎧⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎨⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎩

0 per x le 0

x2 per 0 le x lt 1

23 per 1 le x lt 2

1112 per 2 le x lt 3

1 per x ge 3

Se ne tracci il graficoQuanto vale P(X gt 12)Quanto vale P(2 le X le 4)Quanto vale P(X le 3)Quanto vale P(X = 1)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 74 88

Esercizi - 3

4 Un tipo di prodotti vengono classificati a seconda dei loro difetti edella fabbrica che li ha prodotti Sia X1 il numero (1 o 2) dellafabbrica e sia X2 il numero di difetti per pezzo (che possono essere da0 a 3) di un prodotto scelto a caso tra la totalita di quelli esistentiLa tabella seguente riporta la funzione di massa di probabilitacongiunta per queste due variabili aleatorie discrete Le righe siriferiscono alla variabile X1 mentre le colonne alla variabile X2

Trova le distribuzioni marginali di X1 e X2Calcola media e varianza di X2

0 1 2 31 18 116 316 182 116 116 18 14

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 75 88

Scipy

Scipy e un modulo che permette di utilizzare varie distribuzioni diprobabilita sia di tipo discreto che continuo

La sintassi generale e la seguente Scipystatsltnome distribuzionegt

rvs(size=z) restituisce un vettore di numeri casuali estrattisecondo la distribuzione di lunghezza z

pdf(x) restituisce il vettore della densita della distribuzionevalutata nei valori del vettore di input x (pmf per le discrete)

cdf(x) restituisce il vettore della funzione di ripartizione (ocumulativa) della distribuzione valutata nei valori del vettore di inputx

ppf(q) restituisce il vettore dei quantili della distribuzione valutatanei valori del vettore di input q

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 76 88

Variabili aleatorie discrete Binomiale

gtgtgt from scipystats import binom

gtgtgt rv = binom(n p)

rvrvs(x) restituisce un vettore di x numeri estratti secondo unadistribuzione Binomiale di parametri n p

rvpmf(x) restituisce la probabilita di ottenere esattamente x

successi in un esperimento dicotomico (01) ripetuto n volte con unaprobabilita di successo p (x puo essere un vettore)

rvcdf(q) restituisce il valore della funzione di ripartizione in q (qpuo essere un vettore)

rvppf(p) restituisce il valore del quantile di ordine p

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 77 88

Variabili aleatorie discrete Ipergeometrica

Supponiamo di avere M = 20 animali di cui n = 7 cani Se vogliamosapere la probabilita di trovare un dato numero di cani se scegliamoN = 12 dei 20 animali in maniera casuale possiamo usare una distribuzioneipergeometrica in questo modo

gtgtgt from scipystats import hypergeom

gtgtgt [M n N] = [20 7 12]

gtgtgt rv = hypergeom(M n N)

rvpmf(x) restituisce la probabilita di estrarre esattamente x cani

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 78 88

Variabili aleatorie discrete Geometrica

gtgtgt from scipystats import geom

gtgtgt rv = geom(p)

rvpmf(x) restituisce la probabilita di avere un successo dopoesattamente x insuccessi in una successione di esperimenti dicotomici(esito 01) con una probabilita di successo p (x puo essere un vettore)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 79 88

Variabili aleatorie discrete Poisson

La distribuzione di Poisson viene usata spesso come modello per il numerodi volte per cui un evento avviene in un dato intervallo di tempo (ospazio) Ad esempio si puo utilizzare per misurare il numero di chiamatericevute da un call center in una mattinata

gtgtgt from scipystats import poisson

gtgtgt mu = 2

gtgtgt rv = poisson(mu)

rvpmf(x) restituisce il seguente valore

f (x) = exp(minusmicro)microx

x

In questo caso x rappresenta il numero di eventi per cui si vuole calcolarela probabilita sapendo che in media ne accadono micro

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 80 88

Variabili aleatorie continue Uniforme

In Scipy la funzione uniforme e soltanto continua Questo significa chenella generazione di numeri casuali otterro dati di tipo float Possiamotuttavia simulare una variabile discreta estraendo la parte intera delrisultato ottenuto

gtgtgt from scipystats import uniform

gtgtgt rv = uniform()

Il comando uniform() crea una distribuzione uniforme nellrsquointervallo[01] Possiamo creare una distribuzione uniforme qualsiasi usandouniform(x y - x) per lrsquointervallo [x y]

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 81 88

Variabili aleatorie continue

norm(mu sigma) variabile Gaussiana (o Normale) di media micro edeviazione standard σ

expon(scale = 1 lambda) variabile Esponenziale di parametroλ

Altre distribuzioni (con relativa documentazione) disponibili suhttpsdocsscipyorgdocscipyreferencestatshtml

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 82 88

Esercizi - 1

1 Unrsquourna contiene 10 palline di cui 4 bianche e 6 nere Si eseguono 5estrazioni con reimmissione

1 Tracciare grafico della funzione massa di probabilita della variabilecasuale X = rdquonumero di palline bianche estratterdquo

2 Calcolare la probabilita di estrarre 2 palline bianche3 Calcolare la probabilita di estrarre al piu 2 palline bianche4 Calcolare la probabilita di estrarre almeno 2 palline bianche5 Qual e il numero minimo x tale che la probabilita di estrarre al piu x

palline bianche sia almeno 08

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 83 88

Esercizi - 2

2 Si eseguono 10 estrazioni senza reimmissione da unrsquourna

1 Tracciare il grafico della funzione massa di probabilita della variabilecasuale X = rdquonumero di palline bianche estratterdquo nei seguenti casi

1 lrsquourna contiene 100 palline di cui 20 bianche e le restanti nere2 lrsquourna contiene 100 palline di cui 2 bianche e le restanti nere

2 Tracciare il grafico della funzione massa di probabilita della variabilecasuale X nel caso dellrsquourna 1 se si eseguono 25 estrazioni

3 Consideriamo lrsquourna 1 e N = 10 estrazioni Si aumenti il numero totaleM di palline nellrsquourna mantenendo uguale a 02 la frazione di pallinebianche Per ciascun valore di M confrontare graficamente ladistribuzione di probabilita del numero di palline bianche estratte nelcaso di estrazioni con e senza reimmissione Provare con 20 40 e 200palline bianche

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 84 88

Esercizi - 3

3 Calcolare la probabilita di ottenere piu teste che croci lanciando 7volte una moneta truccata con probabilita di avere croce pari a 045

4 Calcolare la probabilita di avere almeno 3 sei lanciando 5 dadi a 12facce

5 Calcolare la probabilita di estrarre 20 euro da un sacco contenente 47monete da 1 centesimo e 53 da 2 euro estraendo (uniformemente) acaso 10 monete senza reinserirle

6 Un grammo di uranio emette mediamente 2152 particelle α ognimillisecondo Qual e con buona approssimazione la probabilita che ungrammo di uranio emetta al piu 2000 particelle α in un millisecondo

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 85 88

Esercizi - 4

7 Un uomo si risveglia in mezzo al deserto senza acqua Dopo ogniminuto ha una probabilita del 3 di perdere conoscenza per via dellecondizioni estreme Calcolare la probabilita che lrsquouomo perdaconoscenza dopo almeno due ore e la probabilita che lrsquouomo perdaconoscenza dopo esattamente un quarto drsquoora

8 Sia X una variabile aleatoria normale di parametri micro = 10 e σ = 36Calcola

1 P(X gt 5)2 P(4 le X le 16)3 P(X le 8)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 86 88

Esercizi - 5

9 Il numero di errori tipografici per pagina di una certa rivista segue unadistribuzione di Poisson Sapendo che mediamente sono presenti 02errori per pagina determinare la probabilita che una pagina contenga

1 nessun refuso2 piu refusi

10 Arrivi alla fermata dellrsquoautobus alle 1000 e sei certo che ne passerauno in un momento distribuito uniformemente tra le 1000 e le 1030

1 Qual e la probabilita che tu debba aspettare piu di 10 minuti2 Se alle 1015 lrsquoautobus non e ancora arrivato qual e la probabilita che

tu debba aspettare almeno altri 10 minuti

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 87 88

Esercizi - 6

11 Il signor Jones e convinto che il tempo di vita di una automobile (inmigliaia di chilometri percorse) sia una variabile aleatoria esponenzialedi parametro 120 Il signor Smith ha una macchina usata da vendereche ha percorso circa 10 000 chilometri

1 Se il signor Jones decide di comprarla che probabilita ha di farle farealmeno altri 20 000 chilometri prima che sia da buttare

2 Il modello assunto dal signor Jones e ragionevole

12 Sia X una variabile casuale binomiale di parametri n = 100 e p = 07

1 Tracciate la funzione di ripartizione di X2 Calcolate il primo quartile il quantile di ordine 09 e la mediana di X3 Calcolare la probabilita P(X le 60)4 Calcolare la probabilita P(X le 88)5 Trovare il piu piccolo valore x tale che P(X le x) ge 09

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 88 88

  • Lezione 1
    • Script in Python
    • Numpy
    • Esercizi
    • Pandas
    • Esercizi
      • Lezione 2
        • File csv
        • DataFrame
        • Accesso ai DataFrame
        • Frequenze
        • Esercizi
          • Lezione 3
            • Matplotlib
            • Grafici a Barre
            • Istogrammi
            • Cumulativa empirica
            • Boxplot
            • QQplot
            • Diagramma di Pareto
            • Esercizi
              • Lezione 4
                • Definizioni
                • Probabilitagrave condizionata
                • Indipendenza
                • Esercizi
                  • Lezione 5
                    • Variabili Aleatorie
                    • Funzione di Ripartizione
                    • Funzione di Densitagrave
                    • Valore Atteso
                    • Varianza
                    • Covarianza
                    • Esercizi
                      • Lezione 6
                        • Scipy - Variabili Discrete
                        • Scipy - Variabili continue
                        • 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) SAD 20182019 January 12 2019 39 88

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) SAD 20182019 January 12 2019 40 88

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) SAD 20182019 January 12 2019 41 88

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) SAD 20182019 January 12 2019 42 88

Grafici con le Series

In generale possiamo tracciare diversi tipi di grafici con le Series

rsquolinersquo line plot (default)

rsquobarrsquo vertical bar plot

rsquobarhrsquo horizontal bar plot

rsquohistrsquo histogram

rsquoboxrsquo boxplot

rsquokdersquo Kernel Density Estimation plot

rsquodensityrsquo same as rsquokdersquo

rsquoarearsquo area plot

rsquopiersquo pie plot

Per saperne di piu consultare questo link

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 43 88

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) SAD 20182019 January 12 2019 44 88

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) SAD 20182019 January 12 2019 45 88

Boxplot

Rappresenta la distribuzione di un vettore di numeri cerchiando gli outlier

gtgtgt weight = heroes[rsquoWeightrsquo]

gtgtgt weightplotbox()

gtgtgt pltshow()

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 46 88

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) SAD 20182019 January 12 2019 47 88

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) SAD 20182019 January 12 2019 48 88

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) SAD 20182019 January 12 2019 49 88

Esercizi - 1

Utilizzando il file capellicsv dai csv del laboratorio

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) SAD 20182019 January 12 2019 50 88

Esercizi - 2

Utilizzando il file dati-ospedalicsv dai csv del laboratorio

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 e canipdf

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 51 88

Sample space

Un esperimento e qualsiasi processo che produce una realizzazione (oosservazione) Lrsquoinsieme di tutte le possibili realizzazioni di un esperimentoviene detto sample space ed indicato con S

lancio di 2 monete

S = (T T ) (T C) (C T ) (C C)

gara di 3 cavalli (ab c)

S = tutti i possibili ordinamenti di(ab c)= (ab c) (a cb) (c b a)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 52 88

Eventi

lancio di 2 monete

S = (T T ) (T C) (C T ) (C C)

A = 2 monete uguali

A = (T T ) (C C)

B = 2 monete diverse

B = Ac = (T C) (C T )

gara di 3 cavalli

A = cavallo a vincente

A = (ab c) (a c b)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 53 88

Probabilita - 1

Consideriamo un esperimento con sample space S Supponiamo che adogni evento A sia associato un numero chiamato probabilita di A edindicato con P(A) che soddisfa le seguenti proprieta

1 Per ogni evento A la probabilita di A e un numero tra 0 e 1

0 le P(A) le 1

2 La probabilita del sample space S e 1

P(S) = 1

3 La probabilita dellrsquounione di eventi disgiunti e uguale alla somma delleprobabilita di tali eventi

P(A cupB) = P(A) + P(B)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 54 88

Probabilita - 2

In generale 2 eventi potrebbero non essere disgiunti

P(A cupB) = P(A) + P(B) minus P(A capB)

Esempio un certo negozio accetta pagamenti o con carte di credito VISAo Mastercard

1 22 dei clienti ha Mastercard

2 58 dei clienti ha VISA

3 14 dei clienti ha entrambe

Qual e la probabilita che un cliente ha almeno una delle 2 carte

P(A) = 022 P(B) = 058

P(A cupB) = P(A) + P(B) minus P(A capB) = 022 + 058 minus 014 = 066

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 55 88

Probabilita condizionata - 1

Se alcune informazioni riguardo lrsquoesito di un esperimento sono disponibiliparliamo di probabilita condizionata

Esempio lancio di 2 dadi

S = (11) (12) (65) (66)

Probabilita che la somma sia 10 (evento B) sapendo che il primo dadomostra 4 (evento A)

(41) (42) (43) (44) (45) (46)

P(B ∣A) = 16

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 56 88

Probabilita condizionata - 2

In generale

P(B ∣A) = P(A capB)P(A)

Supponiamo lrsquoesito sia in A

Per essere anche in B deve essere in entrambi A e B cioe in A capB

Sapendo che A e gia accaduto il nostro nuovo sample space diventa A

la probabilita di A capB viene calcolata rispetto ad A

Nel caso dei dadi

P(B ∣A) = P((46))P((41) (42) (43) (44) (45) (46)) = 136

16= 1

6

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 57 88

Indipendenza

In generale sapere che A e accaduto modifica le chance che B accadaNel caso cio non avvenga cioe se P(B ∣A) = P(B) allora i 2 eventi sidicono indipendenti In questo caso sapere che A e accaduto nonaggiunge alcuna informazione

SiccomeP(A capB) = P(B ∣A)P(A)

Abbiamo che B e indipendente da A se

P(A capB) = P(B)P(A)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 58 88

Esercizi - 1

1 Svolgere gli esercizi di combinatoria

2 Si consideri il seguente esperimento casuale rdquosi lancia tre volte unamonetardquo Qual e lo spazio degli esiti di questo esperimento casualeSi scriva esplicitamente lrsquoevento rdquosi ottengono piu teste che crocirdquo

3 Si consideri il seguente esperimento casuale rdquoSi tirano due dadirdquo Siconsiderino gli eventi E = rdquola somma dei punteggi e disparirdquo F = rdquoilprimo dado realizza un 1rdquo e G = rdquola somma dei punteggi e 5rdquo Sidescrivano gli eventi E cap F E cup F F capG E cap F c e E cap F capG

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 59 88

Esercizi - 2

4 Si consideri il seguente esperimento casuale rdquoUn sistema e compostoda 4 componenti ciascuno dei quali o funziona oppure e guasto Siosserva lo stato dei componenti ottenendo un vettore (x1 x2 x3 x4)dove xi e 1 oppure 0 a seconda che il componente i-esimo funzionioppure nordquo

1 Da quanti elementi e formato lo spazio degli esiti2 Il sistema nel suo insieme funziona fintantoche entrambi i componenti

1 e 2 oppure entrambi i componenti 3 e 4 funzionano Specifica tuttigli esiti dellrsquoevento il rdquosistema funzionardquo

3 Sia E lrsquoevento rdquoi componenti 1 e 3 sono guastirdquo Quanti esiti contiene

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 60 88

Esercizi - 3

5 Si dimostri che in uno spazio degli esiti Ω dotato di una probabilita Pper ogni evento E F sub Ω vale la disuguaglianza seguente

P(E cap F ) ge P(E) + P(F ) minus 1

6 Un gruppo di 5 bambini e 10 bambine e in fila in ordine casuale nelsenso che tutte le 15 possibili permutazioni si suppongonoequiprobabili

1 Qual e la probabilita che il quarto della fila sia un bambino2 E il dodicesimo3 Qual e la probabilita che un determinato bambino occupi la terza

posizione

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 61 88

Esercizi - 4

7 In un comune vi sono 5 alberghi Se 3 persone devono scegliere unalbergo in cui pernottare qual e la probabilita che finiscano tutte inalberghi differenti Che cosa stiamo assumendo senza dirloesplicitamente

8 La media del salario annuale di un gruppo di 100 lavoratori impiegatinellrsquoamministrazione di una grande azienda e di 130000 dollari conuna deviazione standard di 20000 dollari Se si prende una persona acaso da questo gruppo cosa possiamo dire sulla probabilita che il suosalario sia

1 tra i 90000 e i 170000 dollari2 superiore a 150000 dollari

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 62 88

Esercizi - 5

9 In una certa regione vi sono due ditte che producono forni amicroonde Quelli della fabbrica A sono difettosi con probabilita 005mentre quelli della fabbrica B con probabilita 001 Supponi di averacquistato due apparecchi prodotti dalla stessa ditta che puo essere laA o la B con probabilita del 50 Se il primo microonde e difettosoqual e la probabilita condizionata che sia difettoso anche il secondo

10 Hai chiesto ad un vicino di innaffiare una piantina delicata mentre seiin vacanza Pensi che senza acqua la piantina muoia con probabilita08 mentre se innaffiata questa probabilita si ridurrebbe a 015 Latua fiducia che il vicino si ricordi di innaffiarla e del 90

1 Qual e la probabilita che la pianta sia ancora viva al tuo ritorno2 Se fosse morta quale sarebbe la probabilita che il vicino si sia

dimenticato di innaffiarla

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 63 88

Esercizi - 6

11 Una compagnia di assicurazioni classifica i suoi clienti in tre fascebasso rischio medio rischio alto rischio Le sue statistiche indicanoche le probabilita che un cliente delle tre fasce abbia un incidenteentro un periodo di un anno sono rispettivamente 005 015 e 030Se il 20 dei clienti sono a basso rischio il 50 a medio rischio e il30 ad alto rischio che percentuale dei clienti avra mediamenteincidenti in un lasso di un anno Se un cliente non ha avuto incidentinel 1987 qual e la probabilita che appartenga a ciascuna delle trefasce

12 Se un votante scelto a caso e favorevole ad una certa riforma conprobabilita di 07 qual e la probabilita che su 10 votanti esattamente7 siano favorevoli

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 64 88

Variabili aleatorie

Una variabile aleatoria (o anche variabile aleatoria) e una variabile chepuo assumere valori diversi in dipendenza da qualche fenomeno aleatorio

fenomeno lancio di 2 dadivariabile aleatoria somma dei 2 dadi

fenomeno 3 lanci di una monetavariabile aleatoria numero di rdquotesterdquo complessivo

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 65 88

Funzione di Ripartizione

Sia X una variabile aleatoria Si chiama funzione di ripartizione di X lafunzione F che associa ad ogni numero reale a la probabilita che X siaminore o uguale ad a cioe P(X le a) = FX (a)

Nel caso della moneta (fair) lanciata 3 volte (X indica il numero di testecomplessivo)

FX (a) =

⎧⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎨⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎩

0 if a lt 0

18 per 0 le a lt 1

18 + 38 = 48 per 1 le a lt 2

48 + 38 = 78 per 2 le a lt 3

88 = 1 per a ge 3

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 66 88

Funzione di densita o di massa

Sia X una variabile aleatoria Si chiama funzione di densita di X lafunzione f che associa ad ogni numero reale a la probabilita che X siauguale ad a indicata con fX (a)

Nel caso della moneta (fair) lanciata 3 volte (X indica il numero di testecomplessivo)

fX (a) =

⎧⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎨⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎩

18 per a = 0

38 per a = 1

38 per a = 2

18 per a = 3

0 altrimenti

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 67 88

Valore Atteso

Chiamato anche media (expectation in inglese) e appunto una mediapesata dei possibili valori di una variabile aleatoria Il peso dato a ciascunvalore e la probabilita data a quello specifico valore

E[X ] =sumi

aiP(X = ai)

Esempio dado truccato

valore 6 con probabilita 712

valori da 1 a 5 con probabilita 112

La variabile aleatoria X indica la faccia risultante dal lancio di un dado

E[X ] = 1

12lowast 1 + 1

12lowast 2 + 1

12lowast 3 + 1

12lowast 4 + 1

12lowast 5 + 7

12lowast 6 = 475

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 68 88

Valore Atteso - Proprieta

Sia X una variabile aleatoria con valore atteso E[X ] Se c e una costanteallora anche cX e X + c sono variabili casuali In particolare valgono leseguenti proprieta

E[cX ] = cE[X ]E[X + c] = E[X ] + c

Sia Y una variabile aleatoria Allora

E[X +Y ] = E[X ] +E[Y ]se e solo se X e Y sono independenti

E[XY ] = E[X ]E[Y ]

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 69 88

Varianza

Ersquo il valore atteso del quadrato della differenza tra la variabile aleatoria e ilsuo valore atteso

Var(X ) = E[(X minusE[X ])2] = E[X 2] minus (E[X ])2

La radice quadrata viene detta deviazione standard di X

Esempio dado truccato

E[X 2] = 1

12lowast 12 + 1

12lowast 22 + 1

12lowast 32 + 1

12lowast 42 + 1

12lowast 52 + 7

12lowast 62 ≃ 255

Var(X ) = E[X 2] minus (E[X ])2 ≃ 255 minus 4752 ≃ 3

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 70 88

Varianza - proprieta

Sia X una variabile aleatoria e c una costante Allora valgono le seguentiproprieta

1 Var(cX ) = c2Var(X )

2 Var(X + c) = Var(X )

NOTA

Var(X +X ) ne Var(X ) +Var(X )

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 71 88

Covarianza

Siano X Y due variabili aleatorie con valore atteso rispettivamenteE[X ] = microX e E[Y ] = microY La covarianza e definita come segue

Cov(X Y ) = E[(X minus microX )(Y minus microY )] = = E[XY ] minus microXmicroY

Proprieta

1 Cov(X Y ) = Cov(Y X )2 Cov(X X ) = Var(X )3 Sia a una costante allora

Cov(aX Y ) = aCov(X Y )

4 Sia Z una variabile aleatoria allora

Cov(X + Z Y ) = Cov(X Y ) + Cov(Z Y )

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 72 88

Esercizi - 1

1 Consideriamo una variabile aleatoria X che puo assumere i valori 12o 3 Se sappiamo che

fX (1) = 1

3 fX (2) = 3

7

1 Quanto vale fX (3)2 Disegnare il grafico di questa funzione di massa3 Disegnare il grafico della relativa funzione di ripartizione

2 Dimostrare che se X1 e X2 hanno la stessa distribuzione allora

Cov(X1 +X2X1 minusX2) = 0

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 73 88

Esercizi - 2

3 La funzione di ripartizione di X e definita come segue

FX (x) =

⎧⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎨⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎩

0 per x le 0

x2 per 0 le x lt 1

23 per 1 le x lt 2

1112 per 2 le x lt 3

1 per x ge 3

Se ne tracci il graficoQuanto vale P(X gt 12)Quanto vale P(2 le X le 4)Quanto vale P(X le 3)Quanto vale P(X = 1)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 74 88

Esercizi - 3

4 Un tipo di prodotti vengono classificati a seconda dei loro difetti edella fabbrica che li ha prodotti Sia X1 il numero (1 o 2) dellafabbrica e sia X2 il numero di difetti per pezzo (che possono essere da0 a 3) di un prodotto scelto a caso tra la totalita di quelli esistentiLa tabella seguente riporta la funzione di massa di probabilitacongiunta per queste due variabili aleatorie discrete Le righe siriferiscono alla variabile X1 mentre le colonne alla variabile X2

Trova le distribuzioni marginali di X1 e X2Calcola media e varianza di X2

0 1 2 31 18 116 316 182 116 116 18 14

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 75 88

Scipy

Scipy e un modulo che permette di utilizzare varie distribuzioni diprobabilita sia di tipo discreto che continuo

La sintassi generale e la seguente Scipystatsltnome distribuzionegt

rvs(size=z) restituisce un vettore di numeri casuali estrattisecondo la distribuzione di lunghezza z

pdf(x) restituisce il vettore della densita della distribuzionevalutata nei valori del vettore di input x (pmf per le discrete)

cdf(x) restituisce il vettore della funzione di ripartizione (ocumulativa) della distribuzione valutata nei valori del vettore di inputx

ppf(q) restituisce il vettore dei quantili della distribuzione valutatanei valori del vettore di input q

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 76 88

Variabili aleatorie discrete Binomiale

gtgtgt from scipystats import binom

gtgtgt rv = binom(n p)

rvrvs(x) restituisce un vettore di x numeri estratti secondo unadistribuzione Binomiale di parametri n p

rvpmf(x) restituisce la probabilita di ottenere esattamente x

successi in un esperimento dicotomico (01) ripetuto n volte con unaprobabilita di successo p (x puo essere un vettore)

rvcdf(q) restituisce il valore della funzione di ripartizione in q (qpuo essere un vettore)

rvppf(p) restituisce il valore del quantile di ordine p

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 77 88

Variabili aleatorie discrete Ipergeometrica

Supponiamo di avere M = 20 animali di cui n = 7 cani Se vogliamosapere la probabilita di trovare un dato numero di cani se scegliamoN = 12 dei 20 animali in maniera casuale possiamo usare una distribuzioneipergeometrica in questo modo

gtgtgt from scipystats import hypergeom

gtgtgt [M n N] = [20 7 12]

gtgtgt rv = hypergeom(M n N)

rvpmf(x) restituisce la probabilita di estrarre esattamente x cani

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 78 88

Variabili aleatorie discrete Geometrica

gtgtgt from scipystats import geom

gtgtgt rv = geom(p)

rvpmf(x) restituisce la probabilita di avere un successo dopoesattamente x insuccessi in una successione di esperimenti dicotomici(esito 01) con una probabilita di successo p (x puo essere un vettore)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 79 88

Variabili aleatorie discrete Poisson

La distribuzione di Poisson viene usata spesso come modello per il numerodi volte per cui un evento avviene in un dato intervallo di tempo (ospazio) Ad esempio si puo utilizzare per misurare il numero di chiamatericevute da un call center in una mattinata

gtgtgt from scipystats import poisson

gtgtgt mu = 2

gtgtgt rv = poisson(mu)

rvpmf(x) restituisce il seguente valore

f (x) = exp(minusmicro)microx

x

In questo caso x rappresenta il numero di eventi per cui si vuole calcolarela probabilita sapendo che in media ne accadono micro

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 80 88

Variabili aleatorie continue Uniforme

In Scipy la funzione uniforme e soltanto continua Questo significa chenella generazione di numeri casuali otterro dati di tipo float Possiamotuttavia simulare una variabile discreta estraendo la parte intera delrisultato ottenuto

gtgtgt from scipystats import uniform

gtgtgt rv = uniform()

Il comando uniform() crea una distribuzione uniforme nellrsquointervallo[01] Possiamo creare una distribuzione uniforme qualsiasi usandouniform(x y - x) per lrsquointervallo [x y]

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 81 88

Variabili aleatorie continue

norm(mu sigma) variabile Gaussiana (o Normale) di media micro edeviazione standard σ

expon(scale = 1 lambda) variabile Esponenziale di parametroλ

Altre distribuzioni (con relativa documentazione) disponibili suhttpsdocsscipyorgdocscipyreferencestatshtml

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 82 88

Esercizi - 1

1 Unrsquourna contiene 10 palline di cui 4 bianche e 6 nere Si eseguono 5estrazioni con reimmissione

1 Tracciare grafico della funzione massa di probabilita della variabilecasuale X = rdquonumero di palline bianche estratterdquo

2 Calcolare la probabilita di estrarre 2 palline bianche3 Calcolare la probabilita di estrarre al piu 2 palline bianche4 Calcolare la probabilita di estrarre almeno 2 palline bianche5 Qual e il numero minimo x tale che la probabilita di estrarre al piu x

palline bianche sia almeno 08

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 83 88

Esercizi - 2

2 Si eseguono 10 estrazioni senza reimmissione da unrsquourna

1 Tracciare il grafico della funzione massa di probabilita della variabilecasuale X = rdquonumero di palline bianche estratterdquo nei seguenti casi

1 lrsquourna contiene 100 palline di cui 20 bianche e le restanti nere2 lrsquourna contiene 100 palline di cui 2 bianche e le restanti nere

2 Tracciare il grafico della funzione massa di probabilita della variabilecasuale X nel caso dellrsquourna 1 se si eseguono 25 estrazioni

3 Consideriamo lrsquourna 1 e N = 10 estrazioni Si aumenti il numero totaleM di palline nellrsquourna mantenendo uguale a 02 la frazione di pallinebianche Per ciascun valore di M confrontare graficamente ladistribuzione di probabilita del numero di palline bianche estratte nelcaso di estrazioni con e senza reimmissione Provare con 20 40 e 200palline bianche

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 84 88

Esercizi - 3

3 Calcolare la probabilita di ottenere piu teste che croci lanciando 7volte una moneta truccata con probabilita di avere croce pari a 045

4 Calcolare la probabilita di avere almeno 3 sei lanciando 5 dadi a 12facce

5 Calcolare la probabilita di estrarre 20 euro da un sacco contenente 47monete da 1 centesimo e 53 da 2 euro estraendo (uniformemente) acaso 10 monete senza reinserirle

6 Un grammo di uranio emette mediamente 2152 particelle α ognimillisecondo Qual e con buona approssimazione la probabilita che ungrammo di uranio emetta al piu 2000 particelle α in un millisecondo

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 85 88

Esercizi - 4

7 Un uomo si risveglia in mezzo al deserto senza acqua Dopo ogniminuto ha una probabilita del 3 di perdere conoscenza per via dellecondizioni estreme Calcolare la probabilita che lrsquouomo perdaconoscenza dopo almeno due ore e la probabilita che lrsquouomo perdaconoscenza dopo esattamente un quarto drsquoora

8 Sia X una variabile aleatoria normale di parametri micro = 10 e σ = 36Calcola

1 P(X gt 5)2 P(4 le X le 16)3 P(X le 8)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 86 88

Esercizi - 5

9 Il numero di errori tipografici per pagina di una certa rivista segue unadistribuzione di Poisson Sapendo che mediamente sono presenti 02errori per pagina determinare la probabilita che una pagina contenga

1 nessun refuso2 piu refusi

10 Arrivi alla fermata dellrsquoautobus alle 1000 e sei certo che ne passerauno in un momento distribuito uniformemente tra le 1000 e le 1030

1 Qual e la probabilita che tu debba aspettare piu di 10 minuti2 Se alle 1015 lrsquoautobus non e ancora arrivato qual e la probabilita che

tu debba aspettare almeno altri 10 minuti

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 87 88

Esercizi - 6

11 Il signor Jones e convinto che il tempo di vita di una automobile (inmigliaia di chilometri percorse) sia una variabile aleatoria esponenzialedi parametro 120 Il signor Smith ha una macchina usata da vendereche ha percorso circa 10 000 chilometri

1 Se il signor Jones decide di comprarla che probabilita ha di farle farealmeno altri 20 000 chilometri prima che sia da buttare

2 Il modello assunto dal signor Jones e ragionevole

12 Sia X una variabile casuale binomiale di parametri n = 100 e p = 07

1 Tracciate la funzione di ripartizione di X2 Calcolate il primo quartile il quantile di ordine 09 e la mediana di X3 Calcolare la probabilita P(X le 60)4 Calcolare la probabilita P(X le 88)5 Trovare il piu piccolo valore x tale che P(X le x) ge 09

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 88 88

  • Lezione 1
    • Script in Python
    • Numpy
    • Esercizi
    • Pandas
    • Esercizi
      • Lezione 2
        • File csv
        • DataFrame
        • Accesso ai DataFrame
        • Frequenze
        • Esercizi
          • Lezione 3
            • Matplotlib
            • Grafici a Barre
            • Istogrammi
            • Cumulativa empirica
            • Boxplot
            • QQplot
            • Diagramma di Pareto
            • Esercizi
              • Lezione 4
                • Definizioni
                • Probabilitagrave condizionata
                • Indipendenza
                • Esercizi
                  • Lezione 5
                    • Variabili Aleatorie
                    • Funzione di Ripartizione
                    • Funzione di Densitagrave
                    • Valore Atteso
                    • Varianza
                    • Covarianza
                    • Esercizi
                      • Lezione 6
                        • Scipy - Variabili Discrete
                        • Scipy - Variabili continue
                        • 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) SAD 20182019 January 12 2019 40 88

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) SAD 20182019 January 12 2019 41 88

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) SAD 20182019 January 12 2019 42 88

Grafici con le Series

In generale possiamo tracciare diversi tipi di grafici con le Series

rsquolinersquo line plot (default)

rsquobarrsquo vertical bar plot

rsquobarhrsquo horizontal bar plot

rsquohistrsquo histogram

rsquoboxrsquo boxplot

rsquokdersquo Kernel Density Estimation plot

rsquodensityrsquo same as rsquokdersquo

rsquoarearsquo area plot

rsquopiersquo pie plot

Per saperne di piu consultare questo link

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 43 88

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) SAD 20182019 January 12 2019 44 88

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) SAD 20182019 January 12 2019 45 88

Boxplot

Rappresenta la distribuzione di un vettore di numeri cerchiando gli outlier

gtgtgt weight = heroes[rsquoWeightrsquo]

gtgtgt weightplotbox()

gtgtgt pltshow()

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 46 88

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) SAD 20182019 January 12 2019 47 88

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) SAD 20182019 January 12 2019 48 88

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) SAD 20182019 January 12 2019 49 88

Esercizi - 1

Utilizzando il file capellicsv dai csv del laboratorio

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) SAD 20182019 January 12 2019 50 88

Esercizi - 2

Utilizzando il file dati-ospedalicsv dai csv del laboratorio

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 e canipdf

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 51 88

Sample space

Un esperimento e qualsiasi processo che produce una realizzazione (oosservazione) Lrsquoinsieme di tutte le possibili realizzazioni di un esperimentoviene detto sample space ed indicato con S

lancio di 2 monete

S = (T T ) (T C) (C T ) (C C)

gara di 3 cavalli (ab c)

S = tutti i possibili ordinamenti di(ab c)= (ab c) (a cb) (c b a)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 52 88

Eventi

lancio di 2 monete

S = (T T ) (T C) (C T ) (C C)

A = 2 monete uguali

A = (T T ) (C C)

B = 2 monete diverse

B = Ac = (T C) (C T )

gara di 3 cavalli

A = cavallo a vincente

A = (ab c) (a c b)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 53 88

Probabilita - 1

Consideriamo un esperimento con sample space S Supponiamo che adogni evento A sia associato un numero chiamato probabilita di A edindicato con P(A) che soddisfa le seguenti proprieta

1 Per ogni evento A la probabilita di A e un numero tra 0 e 1

0 le P(A) le 1

2 La probabilita del sample space S e 1

P(S) = 1

3 La probabilita dellrsquounione di eventi disgiunti e uguale alla somma delleprobabilita di tali eventi

P(A cupB) = P(A) + P(B)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 54 88

Probabilita - 2

In generale 2 eventi potrebbero non essere disgiunti

P(A cupB) = P(A) + P(B) minus P(A capB)

Esempio un certo negozio accetta pagamenti o con carte di credito VISAo Mastercard

1 22 dei clienti ha Mastercard

2 58 dei clienti ha VISA

3 14 dei clienti ha entrambe

Qual e la probabilita che un cliente ha almeno una delle 2 carte

P(A) = 022 P(B) = 058

P(A cupB) = P(A) + P(B) minus P(A capB) = 022 + 058 minus 014 = 066

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 55 88

Probabilita condizionata - 1

Se alcune informazioni riguardo lrsquoesito di un esperimento sono disponibiliparliamo di probabilita condizionata

Esempio lancio di 2 dadi

S = (11) (12) (65) (66)

Probabilita che la somma sia 10 (evento B) sapendo che il primo dadomostra 4 (evento A)

(41) (42) (43) (44) (45) (46)

P(B ∣A) = 16

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 56 88

Probabilita condizionata - 2

In generale

P(B ∣A) = P(A capB)P(A)

Supponiamo lrsquoesito sia in A

Per essere anche in B deve essere in entrambi A e B cioe in A capB

Sapendo che A e gia accaduto il nostro nuovo sample space diventa A

la probabilita di A capB viene calcolata rispetto ad A

Nel caso dei dadi

P(B ∣A) = P((46))P((41) (42) (43) (44) (45) (46)) = 136

16= 1

6

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 57 88

Indipendenza

In generale sapere che A e accaduto modifica le chance che B accadaNel caso cio non avvenga cioe se P(B ∣A) = P(B) allora i 2 eventi sidicono indipendenti In questo caso sapere che A e accaduto nonaggiunge alcuna informazione

SiccomeP(A capB) = P(B ∣A)P(A)

Abbiamo che B e indipendente da A se

P(A capB) = P(B)P(A)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 58 88

Esercizi - 1

1 Svolgere gli esercizi di combinatoria

2 Si consideri il seguente esperimento casuale rdquosi lancia tre volte unamonetardquo Qual e lo spazio degli esiti di questo esperimento casualeSi scriva esplicitamente lrsquoevento rdquosi ottengono piu teste che crocirdquo

3 Si consideri il seguente esperimento casuale rdquoSi tirano due dadirdquo Siconsiderino gli eventi E = rdquola somma dei punteggi e disparirdquo F = rdquoilprimo dado realizza un 1rdquo e G = rdquola somma dei punteggi e 5rdquo Sidescrivano gli eventi E cap F E cup F F capG E cap F c e E cap F capG

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 59 88

Esercizi - 2

4 Si consideri il seguente esperimento casuale rdquoUn sistema e compostoda 4 componenti ciascuno dei quali o funziona oppure e guasto Siosserva lo stato dei componenti ottenendo un vettore (x1 x2 x3 x4)dove xi e 1 oppure 0 a seconda che il componente i-esimo funzionioppure nordquo

1 Da quanti elementi e formato lo spazio degli esiti2 Il sistema nel suo insieme funziona fintantoche entrambi i componenti

1 e 2 oppure entrambi i componenti 3 e 4 funzionano Specifica tuttigli esiti dellrsquoevento il rdquosistema funzionardquo

3 Sia E lrsquoevento rdquoi componenti 1 e 3 sono guastirdquo Quanti esiti contiene

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 60 88

Esercizi - 3

5 Si dimostri che in uno spazio degli esiti Ω dotato di una probabilita Pper ogni evento E F sub Ω vale la disuguaglianza seguente

P(E cap F ) ge P(E) + P(F ) minus 1

6 Un gruppo di 5 bambini e 10 bambine e in fila in ordine casuale nelsenso che tutte le 15 possibili permutazioni si suppongonoequiprobabili

1 Qual e la probabilita che il quarto della fila sia un bambino2 E il dodicesimo3 Qual e la probabilita che un determinato bambino occupi la terza

posizione

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 61 88

Esercizi - 4

7 In un comune vi sono 5 alberghi Se 3 persone devono scegliere unalbergo in cui pernottare qual e la probabilita che finiscano tutte inalberghi differenti Che cosa stiamo assumendo senza dirloesplicitamente

8 La media del salario annuale di un gruppo di 100 lavoratori impiegatinellrsquoamministrazione di una grande azienda e di 130000 dollari conuna deviazione standard di 20000 dollari Se si prende una persona acaso da questo gruppo cosa possiamo dire sulla probabilita che il suosalario sia

1 tra i 90000 e i 170000 dollari2 superiore a 150000 dollari

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 62 88

Esercizi - 5

9 In una certa regione vi sono due ditte che producono forni amicroonde Quelli della fabbrica A sono difettosi con probabilita 005mentre quelli della fabbrica B con probabilita 001 Supponi di averacquistato due apparecchi prodotti dalla stessa ditta che puo essere laA o la B con probabilita del 50 Se il primo microonde e difettosoqual e la probabilita condizionata che sia difettoso anche il secondo

10 Hai chiesto ad un vicino di innaffiare una piantina delicata mentre seiin vacanza Pensi che senza acqua la piantina muoia con probabilita08 mentre se innaffiata questa probabilita si ridurrebbe a 015 Latua fiducia che il vicino si ricordi di innaffiarla e del 90

1 Qual e la probabilita che la pianta sia ancora viva al tuo ritorno2 Se fosse morta quale sarebbe la probabilita che il vicino si sia

dimenticato di innaffiarla

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 63 88

Esercizi - 6

11 Una compagnia di assicurazioni classifica i suoi clienti in tre fascebasso rischio medio rischio alto rischio Le sue statistiche indicanoche le probabilita che un cliente delle tre fasce abbia un incidenteentro un periodo di un anno sono rispettivamente 005 015 e 030Se il 20 dei clienti sono a basso rischio il 50 a medio rischio e il30 ad alto rischio che percentuale dei clienti avra mediamenteincidenti in un lasso di un anno Se un cliente non ha avuto incidentinel 1987 qual e la probabilita che appartenga a ciascuna delle trefasce

12 Se un votante scelto a caso e favorevole ad una certa riforma conprobabilita di 07 qual e la probabilita che su 10 votanti esattamente7 siano favorevoli

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 64 88

Variabili aleatorie

Una variabile aleatoria (o anche variabile aleatoria) e una variabile chepuo assumere valori diversi in dipendenza da qualche fenomeno aleatorio

fenomeno lancio di 2 dadivariabile aleatoria somma dei 2 dadi

fenomeno 3 lanci di una monetavariabile aleatoria numero di rdquotesterdquo complessivo

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 65 88

Funzione di Ripartizione

Sia X una variabile aleatoria Si chiama funzione di ripartizione di X lafunzione F che associa ad ogni numero reale a la probabilita che X siaminore o uguale ad a cioe P(X le a) = FX (a)

Nel caso della moneta (fair) lanciata 3 volte (X indica il numero di testecomplessivo)

FX (a) =

⎧⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎨⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎩

0 if a lt 0

18 per 0 le a lt 1

18 + 38 = 48 per 1 le a lt 2

48 + 38 = 78 per 2 le a lt 3

88 = 1 per a ge 3

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 66 88

Funzione di densita o di massa

Sia X una variabile aleatoria Si chiama funzione di densita di X lafunzione f che associa ad ogni numero reale a la probabilita che X siauguale ad a indicata con fX (a)

Nel caso della moneta (fair) lanciata 3 volte (X indica il numero di testecomplessivo)

fX (a) =

⎧⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎨⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎩

18 per a = 0

38 per a = 1

38 per a = 2

18 per a = 3

0 altrimenti

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 67 88

Valore Atteso

Chiamato anche media (expectation in inglese) e appunto una mediapesata dei possibili valori di una variabile aleatoria Il peso dato a ciascunvalore e la probabilita data a quello specifico valore

E[X ] =sumi

aiP(X = ai)

Esempio dado truccato

valore 6 con probabilita 712

valori da 1 a 5 con probabilita 112

La variabile aleatoria X indica la faccia risultante dal lancio di un dado

E[X ] = 1

12lowast 1 + 1

12lowast 2 + 1

12lowast 3 + 1

12lowast 4 + 1

12lowast 5 + 7

12lowast 6 = 475

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 68 88

Valore Atteso - Proprieta

Sia X una variabile aleatoria con valore atteso E[X ] Se c e una costanteallora anche cX e X + c sono variabili casuali In particolare valgono leseguenti proprieta

E[cX ] = cE[X ]E[X + c] = E[X ] + c

Sia Y una variabile aleatoria Allora

E[X +Y ] = E[X ] +E[Y ]se e solo se X e Y sono independenti

E[XY ] = E[X ]E[Y ]

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 69 88

Varianza

Ersquo il valore atteso del quadrato della differenza tra la variabile aleatoria e ilsuo valore atteso

Var(X ) = E[(X minusE[X ])2] = E[X 2] minus (E[X ])2

La radice quadrata viene detta deviazione standard di X

Esempio dado truccato

E[X 2] = 1

12lowast 12 + 1

12lowast 22 + 1

12lowast 32 + 1

12lowast 42 + 1

12lowast 52 + 7

12lowast 62 ≃ 255

Var(X ) = E[X 2] minus (E[X ])2 ≃ 255 minus 4752 ≃ 3

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 70 88

Varianza - proprieta

Sia X una variabile aleatoria e c una costante Allora valgono le seguentiproprieta

1 Var(cX ) = c2Var(X )

2 Var(X + c) = Var(X )

NOTA

Var(X +X ) ne Var(X ) +Var(X )

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 71 88

Covarianza

Siano X Y due variabili aleatorie con valore atteso rispettivamenteE[X ] = microX e E[Y ] = microY La covarianza e definita come segue

Cov(X Y ) = E[(X minus microX )(Y minus microY )] = = E[XY ] minus microXmicroY

Proprieta

1 Cov(X Y ) = Cov(Y X )2 Cov(X X ) = Var(X )3 Sia a una costante allora

Cov(aX Y ) = aCov(X Y )

4 Sia Z una variabile aleatoria allora

Cov(X + Z Y ) = Cov(X Y ) + Cov(Z Y )

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 72 88

Esercizi - 1

1 Consideriamo una variabile aleatoria X che puo assumere i valori 12o 3 Se sappiamo che

fX (1) = 1

3 fX (2) = 3

7

1 Quanto vale fX (3)2 Disegnare il grafico di questa funzione di massa3 Disegnare il grafico della relativa funzione di ripartizione

2 Dimostrare che se X1 e X2 hanno la stessa distribuzione allora

Cov(X1 +X2X1 minusX2) = 0

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 73 88

Esercizi - 2

3 La funzione di ripartizione di X e definita come segue

FX (x) =

⎧⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎨⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎩

0 per x le 0

x2 per 0 le x lt 1

23 per 1 le x lt 2

1112 per 2 le x lt 3

1 per x ge 3

Se ne tracci il graficoQuanto vale P(X gt 12)Quanto vale P(2 le X le 4)Quanto vale P(X le 3)Quanto vale P(X = 1)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 74 88

Esercizi - 3

4 Un tipo di prodotti vengono classificati a seconda dei loro difetti edella fabbrica che li ha prodotti Sia X1 il numero (1 o 2) dellafabbrica e sia X2 il numero di difetti per pezzo (che possono essere da0 a 3) di un prodotto scelto a caso tra la totalita di quelli esistentiLa tabella seguente riporta la funzione di massa di probabilitacongiunta per queste due variabili aleatorie discrete Le righe siriferiscono alla variabile X1 mentre le colonne alla variabile X2

Trova le distribuzioni marginali di X1 e X2Calcola media e varianza di X2

0 1 2 31 18 116 316 182 116 116 18 14

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 75 88

Scipy

Scipy e un modulo che permette di utilizzare varie distribuzioni diprobabilita sia di tipo discreto che continuo

La sintassi generale e la seguente Scipystatsltnome distribuzionegt

rvs(size=z) restituisce un vettore di numeri casuali estrattisecondo la distribuzione di lunghezza z

pdf(x) restituisce il vettore della densita della distribuzionevalutata nei valori del vettore di input x (pmf per le discrete)

cdf(x) restituisce il vettore della funzione di ripartizione (ocumulativa) della distribuzione valutata nei valori del vettore di inputx

ppf(q) restituisce il vettore dei quantili della distribuzione valutatanei valori del vettore di input q

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 76 88

Variabili aleatorie discrete Binomiale

gtgtgt from scipystats import binom

gtgtgt rv = binom(n p)

rvrvs(x) restituisce un vettore di x numeri estratti secondo unadistribuzione Binomiale di parametri n p

rvpmf(x) restituisce la probabilita di ottenere esattamente x

successi in un esperimento dicotomico (01) ripetuto n volte con unaprobabilita di successo p (x puo essere un vettore)

rvcdf(q) restituisce il valore della funzione di ripartizione in q (qpuo essere un vettore)

rvppf(p) restituisce il valore del quantile di ordine p

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 77 88

Variabili aleatorie discrete Ipergeometrica

Supponiamo di avere M = 20 animali di cui n = 7 cani Se vogliamosapere la probabilita di trovare un dato numero di cani se scegliamoN = 12 dei 20 animali in maniera casuale possiamo usare una distribuzioneipergeometrica in questo modo

gtgtgt from scipystats import hypergeom

gtgtgt [M n N] = [20 7 12]

gtgtgt rv = hypergeom(M n N)

rvpmf(x) restituisce la probabilita di estrarre esattamente x cani

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 78 88

Variabili aleatorie discrete Geometrica

gtgtgt from scipystats import geom

gtgtgt rv = geom(p)

rvpmf(x) restituisce la probabilita di avere un successo dopoesattamente x insuccessi in una successione di esperimenti dicotomici(esito 01) con una probabilita di successo p (x puo essere un vettore)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 79 88

Variabili aleatorie discrete Poisson

La distribuzione di Poisson viene usata spesso come modello per il numerodi volte per cui un evento avviene in un dato intervallo di tempo (ospazio) Ad esempio si puo utilizzare per misurare il numero di chiamatericevute da un call center in una mattinata

gtgtgt from scipystats import poisson

gtgtgt mu = 2

gtgtgt rv = poisson(mu)

rvpmf(x) restituisce il seguente valore

f (x) = exp(minusmicro)microx

x

In questo caso x rappresenta il numero di eventi per cui si vuole calcolarela probabilita sapendo che in media ne accadono micro

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 80 88

Variabili aleatorie continue Uniforme

In Scipy la funzione uniforme e soltanto continua Questo significa chenella generazione di numeri casuali otterro dati di tipo float Possiamotuttavia simulare una variabile discreta estraendo la parte intera delrisultato ottenuto

gtgtgt from scipystats import uniform

gtgtgt rv = uniform()

Il comando uniform() crea una distribuzione uniforme nellrsquointervallo[01] Possiamo creare una distribuzione uniforme qualsiasi usandouniform(x y - x) per lrsquointervallo [x y]

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 81 88

Variabili aleatorie continue

norm(mu sigma) variabile Gaussiana (o Normale) di media micro edeviazione standard σ

expon(scale = 1 lambda) variabile Esponenziale di parametroλ

Altre distribuzioni (con relativa documentazione) disponibili suhttpsdocsscipyorgdocscipyreferencestatshtml

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 82 88

Esercizi - 1

1 Unrsquourna contiene 10 palline di cui 4 bianche e 6 nere Si eseguono 5estrazioni con reimmissione

1 Tracciare grafico della funzione massa di probabilita della variabilecasuale X = rdquonumero di palline bianche estratterdquo

2 Calcolare la probabilita di estrarre 2 palline bianche3 Calcolare la probabilita di estrarre al piu 2 palline bianche4 Calcolare la probabilita di estrarre almeno 2 palline bianche5 Qual e il numero minimo x tale che la probabilita di estrarre al piu x

palline bianche sia almeno 08

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 83 88

Esercizi - 2

2 Si eseguono 10 estrazioni senza reimmissione da unrsquourna

1 Tracciare il grafico della funzione massa di probabilita della variabilecasuale X = rdquonumero di palline bianche estratterdquo nei seguenti casi

1 lrsquourna contiene 100 palline di cui 20 bianche e le restanti nere2 lrsquourna contiene 100 palline di cui 2 bianche e le restanti nere

2 Tracciare il grafico della funzione massa di probabilita della variabilecasuale X nel caso dellrsquourna 1 se si eseguono 25 estrazioni

3 Consideriamo lrsquourna 1 e N = 10 estrazioni Si aumenti il numero totaleM di palline nellrsquourna mantenendo uguale a 02 la frazione di pallinebianche Per ciascun valore di M confrontare graficamente ladistribuzione di probabilita del numero di palline bianche estratte nelcaso di estrazioni con e senza reimmissione Provare con 20 40 e 200palline bianche

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 84 88

Esercizi - 3

3 Calcolare la probabilita di ottenere piu teste che croci lanciando 7volte una moneta truccata con probabilita di avere croce pari a 045

4 Calcolare la probabilita di avere almeno 3 sei lanciando 5 dadi a 12facce

5 Calcolare la probabilita di estrarre 20 euro da un sacco contenente 47monete da 1 centesimo e 53 da 2 euro estraendo (uniformemente) acaso 10 monete senza reinserirle

6 Un grammo di uranio emette mediamente 2152 particelle α ognimillisecondo Qual e con buona approssimazione la probabilita che ungrammo di uranio emetta al piu 2000 particelle α in un millisecondo

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 85 88

Esercizi - 4

7 Un uomo si risveglia in mezzo al deserto senza acqua Dopo ogniminuto ha una probabilita del 3 di perdere conoscenza per via dellecondizioni estreme Calcolare la probabilita che lrsquouomo perdaconoscenza dopo almeno due ore e la probabilita che lrsquouomo perdaconoscenza dopo esattamente un quarto drsquoora

8 Sia X una variabile aleatoria normale di parametri micro = 10 e σ = 36Calcola

1 P(X gt 5)2 P(4 le X le 16)3 P(X le 8)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 86 88

Esercizi - 5

9 Il numero di errori tipografici per pagina di una certa rivista segue unadistribuzione di Poisson Sapendo che mediamente sono presenti 02errori per pagina determinare la probabilita che una pagina contenga

1 nessun refuso2 piu refusi

10 Arrivi alla fermata dellrsquoautobus alle 1000 e sei certo che ne passerauno in un momento distribuito uniformemente tra le 1000 e le 1030

1 Qual e la probabilita che tu debba aspettare piu di 10 minuti2 Se alle 1015 lrsquoautobus non e ancora arrivato qual e la probabilita che

tu debba aspettare almeno altri 10 minuti

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 87 88

Esercizi - 6

11 Il signor Jones e convinto che il tempo di vita di una automobile (inmigliaia di chilometri percorse) sia una variabile aleatoria esponenzialedi parametro 120 Il signor Smith ha una macchina usata da vendereche ha percorso circa 10 000 chilometri

1 Se il signor Jones decide di comprarla che probabilita ha di farle farealmeno altri 20 000 chilometri prima che sia da buttare

2 Il modello assunto dal signor Jones e ragionevole

12 Sia X una variabile casuale binomiale di parametri n = 100 e p = 07

1 Tracciate la funzione di ripartizione di X2 Calcolate il primo quartile il quantile di ordine 09 e la mediana di X3 Calcolare la probabilita P(X le 60)4 Calcolare la probabilita P(X le 88)5 Trovare il piu piccolo valore x tale che P(X le x) ge 09

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 88 88

  • Lezione 1
    • Script in Python
    • Numpy
    • Esercizi
    • Pandas
    • Esercizi
      • Lezione 2
        • File csv
        • DataFrame
        • Accesso ai DataFrame
        • Frequenze
        • Esercizi
          • Lezione 3
            • Matplotlib
            • Grafici a Barre
            • Istogrammi
            • Cumulativa empirica
            • Boxplot
            • QQplot
            • Diagramma di Pareto
            • Esercizi
              • Lezione 4
                • Definizioni
                • Probabilitagrave condizionata
                • Indipendenza
                • Esercizi
                  • Lezione 5
                    • Variabili Aleatorie
                    • Funzione di Ripartizione
                    • Funzione di Densitagrave
                    • Valore Atteso
                    • Varianza
                    • Covarianza
                    • Esercizi
                      • Lezione 6
                        • Scipy - Variabili Discrete
                        • Scipy - Variabili continue
                        • 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) SAD 20182019 January 12 2019 41 88

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) SAD 20182019 January 12 2019 42 88

Grafici con le Series

In generale possiamo tracciare diversi tipi di grafici con le Series

rsquolinersquo line plot (default)

rsquobarrsquo vertical bar plot

rsquobarhrsquo horizontal bar plot

rsquohistrsquo histogram

rsquoboxrsquo boxplot

rsquokdersquo Kernel Density Estimation plot

rsquodensityrsquo same as rsquokdersquo

rsquoarearsquo area plot

rsquopiersquo pie plot

Per saperne di piu consultare questo link

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 43 88

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) SAD 20182019 January 12 2019 44 88

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) SAD 20182019 January 12 2019 45 88

Boxplot

Rappresenta la distribuzione di un vettore di numeri cerchiando gli outlier

gtgtgt weight = heroes[rsquoWeightrsquo]

gtgtgt weightplotbox()

gtgtgt pltshow()

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 46 88

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) SAD 20182019 January 12 2019 47 88

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) SAD 20182019 January 12 2019 48 88

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) SAD 20182019 January 12 2019 49 88

Esercizi - 1

Utilizzando il file capellicsv dai csv del laboratorio

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) SAD 20182019 January 12 2019 50 88

Esercizi - 2

Utilizzando il file dati-ospedalicsv dai csv del laboratorio

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 e canipdf

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 51 88

Sample space

Un esperimento e qualsiasi processo che produce una realizzazione (oosservazione) Lrsquoinsieme di tutte le possibili realizzazioni di un esperimentoviene detto sample space ed indicato con S

lancio di 2 monete

S = (T T ) (T C) (C T ) (C C)

gara di 3 cavalli (ab c)

S = tutti i possibili ordinamenti di(ab c)= (ab c) (a cb) (c b a)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 52 88

Eventi

lancio di 2 monete

S = (T T ) (T C) (C T ) (C C)

A = 2 monete uguali

A = (T T ) (C C)

B = 2 monete diverse

B = Ac = (T C) (C T )

gara di 3 cavalli

A = cavallo a vincente

A = (ab c) (a c b)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 53 88

Probabilita - 1

Consideriamo un esperimento con sample space S Supponiamo che adogni evento A sia associato un numero chiamato probabilita di A edindicato con P(A) che soddisfa le seguenti proprieta

1 Per ogni evento A la probabilita di A e un numero tra 0 e 1

0 le P(A) le 1

2 La probabilita del sample space S e 1

P(S) = 1

3 La probabilita dellrsquounione di eventi disgiunti e uguale alla somma delleprobabilita di tali eventi

P(A cupB) = P(A) + P(B)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 54 88

Probabilita - 2

In generale 2 eventi potrebbero non essere disgiunti

P(A cupB) = P(A) + P(B) minus P(A capB)

Esempio un certo negozio accetta pagamenti o con carte di credito VISAo Mastercard

1 22 dei clienti ha Mastercard

2 58 dei clienti ha VISA

3 14 dei clienti ha entrambe

Qual e la probabilita che un cliente ha almeno una delle 2 carte

P(A) = 022 P(B) = 058

P(A cupB) = P(A) + P(B) minus P(A capB) = 022 + 058 minus 014 = 066

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 55 88

Probabilita condizionata - 1

Se alcune informazioni riguardo lrsquoesito di un esperimento sono disponibiliparliamo di probabilita condizionata

Esempio lancio di 2 dadi

S = (11) (12) (65) (66)

Probabilita che la somma sia 10 (evento B) sapendo che il primo dadomostra 4 (evento A)

(41) (42) (43) (44) (45) (46)

P(B ∣A) = 16

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 56 88

Probabilita condizionata - 2

In generale

P(B ∣A) = P(A capB)P(A)

Supponiamo lrsquoesito sia in A

Per essere anche in B deve essere in entrambi A e B cioe in A capB

Sapendo che A e gia accaduto il nostro nuovo sample space diventa A

la probabilita di A capB viene calcolata rispetto ad A

Nel caso dei dadi

P(B ∣A) = P((46))P((41) (42) (43) (44) (45) (46)) = 136

16= 1

6

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 57 88

Indipendenza

In generale sapere che A e accaduto modifica le chance che B accadaNel caso cio non avvenga cioe se P(B ∣A) = P(B) allora i 2 eventi sidicono indipendenti In questo caso sapere che A e accaduto nonaggiunge alcuna informazione

SiccomeP(A capB) = P(B ∣A)P(A)

Abbiamo che B e indipendente da A se

P(A capB) = P(B)P(A)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 58 88

Esercizi - 1

1 Svolgere gli esercizi di combinatoria

2 Si consideri il seguente esperimento casuale rdquosi lancia tre volte unamonetardquo Qual e lo spazio degli esiti di questo esperimento casualeSi scriva esplicitamente lrsquoevento rdquosi ottengono piu teste che crocirdquo

3 Si consideri il seguente esperimento casuale rdquoSi tirano due dadirdquo Siconsiderino gli eventi E = rdquola somma dei punteggi e disparirdquo F = rdquoilprimo dado realizza un 1rdquo e G = rdquola somma dei punteggi e 5rdquo Sidescrivano gli eventi E cap F E cup F F capG E cap F c e E cap F capG

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 59 88

Esercizi - 2

4 Si consideri il seguente esperimento casuale rdquoUn sistema e compostoda 4 componenti ciascuno dei quali o funziona oppure e guasto Siosserva lo stato dei componenti ottenendo un vettore (x1 x2 x3 x4)dove xi e 1 oppure 0 a seconda che il componente i-esimo funzionioppure nordquo

1 Da quanti elementi e formato lo spazio degli esiti2 Il sistema nel suo insieme funziona fintantoche entrambi i componenti

1 e 2 oppure entrambi i componenti 3 e 4 funzionano Specifica tuttigli esiti dellrsquoevento il rdquosistema funzionardquo

3 Sia E lrsquoevento rdquoi componenti 1 e 3 sono guastirdquo Quanti esiti contiene

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 60 88

Esercizi - 3

5 Si dimostri che in uno spazio degli esiti Ω dotato di una probabilita Pper ogni evento E F sub Ω vale la disuguaglianza seguente

P(E cap F ) ge P(E) + P(F ) minus 1

6 Un gruppo di 5 bambini e 10 bambine e in fila in ordine casuale nelsenso che tutte le 15 possibili permutazioni si suppongonoequiprobabili

1 Qual e la probabilita che il quarto della fila sia un bambino2 E il dodicesimo3 Qual e la probabilita che un determinato bambino occupi la terza

posizione

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 61 88

Esercizi - 4

7 In un comune vi sono 5 alberghi Se 3 persone devono scegliere unalbergo in cui pernottare qual e la probabilita che finiscano tutte inalberghi differenti Che cosa stiamo assumendo senza dirloesplicitamente

8 La media del salario annuale di un gruppo di 100 lavoratori impiegatinellrsquoamministrazione di una grande azienda e di 130000 dollari conuna deviazione standard di 20000 dollari Se si prende una persona acaso da questo gruppo cosa possiamo dire sulla probabilita che il suosalario sia

1 tra i 90000 e i 170000 dollari2 superiore a 150000 dollari

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 62 88

Esercizi - 5

9 In una certa regione vi sono due ditte che producono forni amicroonde Quelli della fabbrica A sono difettosi con probabilita 005mentre quelli della fabbrica B con probabilita 001 Supponi di averacquistato due apparecchi prodotti dalla stessa ditta che puo essere laA o la B con probabilita del 50 Se il primo microonde e difettosoqual e la probabilita condizionata che sia difettoso anche il secondo

10 Hai chiesto ad un vicino di innaffiare una piantina delicata mentre seiin vacanza Pensi che senza acqua la piantina muoia con probabilita08 mentre se innaffiata questa probabilita si ridurrebbe a 015 Latua fiducia che il vicino si ricordi di innaffiarla e del 90

1 Qual e la probabilita che la pianta sia ancora viva al tuo ritorno2 Se fosse morta quale sarebbe la probabilita che il vicino si sia

dimenticato di innaffiarla

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 63 88

Esercizi - 6

11 Una compagnia di assicurazioni classifica i suoi clienti in tre fascebasso rischio medio rischio alto rischio Le sue statistiche indicanoche le probabilita che un cliente delle tre fasce abbia un incidenteentro un periodo di un anno sono rispettivamente 005 015 e 030Se il 20 dei clienti sono a basso rischio il 50 a medio rischio e il30 ad alto rischio che percentuale dei clienti avra mediamenteincidenti in un lasso di un anno Se un cliente non ha avuto incidentinel 1987 qual e la probabilita che appartenga a ciascuna delle trefasce

12 Se un votante scelto a caso e favorevole ad una certa riforma conprobabilita di 07 qual e la probabilita che su 10 votanti esattamente7 siano favorevoli

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 64 88

Variabili aleatorie

Una variabile aleatoria (o anche variabile aleatoria) e una variabile chepuo assumere valori diversi in dipendenza da qualche fenomeno aleatorio

fenomeno lancio di 2 dadivariabile aleatoria somma dei 2 dadi

fenomeno 3 lanci di una monetavariabile aleatoria numero di rdquotesterdquo complessivo

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 65 88

Funzione di Ripartizione

Sia X una variabile aleatoria Si chiama funzione di ripartizione di X lafunzione F che associa ad ogni numero reale a la probabilita che X siaminore o uguale ad a cioe P(X le a) = FX (a)

Nel caso della moneta (fair) lanciata 3 volte (X indica il numero di testecomplessivo)

FX (a) =

⎧⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎨⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎩

0 if a lt 0

18 per 0 le a lt 1

18 + 38 = 48 per 1 le a lt 2

48 + 38 = 78 per 2 le a lt 3

88 = 1 per a ge 3

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 66 88

Funzione di densita o di massa

Sia X una variabile aleatoria Si chiama funzione di densita di X lafunzione f che associa ad ogni numero reale a la probabilita che X siauguale ad a indicata con fX (a)

Nel caso della moneta (fair) lanciata 3 volte (X indica il numero di testecomplessivo)

fX (a) =

⎧⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎨⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎩

18 per a = 0

38 per a = 1

38 per a = 2

18 per a = 3

0 altrimenti

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 67 88

Valore Atteso

Chiamato anche media (expectation in inglese) e appunto una mediapesata dei possibili valori di una variabile aleatoria Il peso dato a ciascunvalore e la probabilita data a quello specifico valore

E[X ] =sumi

aiP(X = ai)

Esempio dado truccato

valore 6 con probabilita 712

valori da 1 a 5 con probabilita 112

La variabile aleatoria X indica la faccia risultante dal lancio di un dado

E[X ] = 1

12lowast 1 + 1

12lowast 2 + 1

12lowast 3 + 1

12lowast 4 + 1

12lowast 5 + 7

12lowast 6 = 475

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 68 88

Valore Atteso - Proprieta

Sia X una variabile aleatoria con valore atteso E[X ] Se c e una costanteallora anche cX e X + c sono variabili casuali In particolare valgono leseguenti proprieta

E[cX ] = cE[X ]E[X + c] = E[X ] + c

Sia Y una variabile aleatoria Allora

E[X +Y ] = E[X ] +E[Y ]se e solo se X e Y sono independenti

E[XY ] = E[X ]E[Y ]

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 69 88

Varianza

Ersquo il valore atteso del quadrato della differenza tra la variabile aleatoria e ilsuo valore atteso

Var(X ) = E[(X minusE[X ])2] = E[X 2] minus (E[X ])2

La radice quadrata viene detta deviazione standard di X

Esempio dado truccato

E[X 2] = 1

12lowast 12 + 1

12lowast 22 + 1

12lowast 32 + 1

12lowast 42 + 1

12lowast 52 + 7

12lowast 62 ≃ 255

Var(X ) = E[X 2] minus (E[X ])2 ≃ 255 minus 4752 ≃ 3

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 70 88

Varianza - proprieta

Sia X una variabile aleatoria e c una costante Allora valgono le seguentiproprieta

1 Var(cX ) = c2Var(X )

2 Var(X + c) = Var(X )

NOTA

Var(X +X ) ne Var(X ) +Var(X )

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 71 88

Covarianza

Siano X Y due variabili aleatorie con valore atteso rispettivamenteE[X ] = microX e E[Y ] = microY La covarianza e definita come segue

Cov(X Y ) = E[(X minus microX )(Y minus microY )] = = E[XY ] minus microXmicroY

Proprieta

1 Cov(X Y ) = Cov(Y X )2 Cov(X X ) = Var(X )3 Sia a una costante allora

Cov(aX Y ) = aCov(X Y )

4 Sia Z una variabile aleatoria allora

Cov(X + Z Y ) = Cov(X Y ) + Cov(Z Y )

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 72 88

Esercizi - 1

1 Consideriamo una variabile aleatoria X che puo assumere i valori 12o 3 Se sappiamo che

fX (1) = 1

3 fX (2) = 3

7

1 Quanto vale fX (3)2 Disegnare il grafico di questa funzione di massa3 Disegnare il grafico della relativa funzione di ripartizione

2 Dimostrare che se X1 e X2 hanno la stessa distribuzione allora

Cov(X1 +X2X1 minusX2) = 0

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 73 88

Esercizi - 2

3 La funzione di ripartizione di X e definita come segue

FX (x) =

⎧⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎨⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎩

0 per x le 0

x2 per 0 le x lt 1

23 per 1 le x lt 2

1112 per 2 le x lt 3

1 per x ge 3

Se ne tracci il graficoQuanto vale P(X gt 12)Quanto vale P(2 le X le 4)Quanto vale P(X le 3)Quanto vale P(X = 1)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 74 88

Esercizi - 3

4 Un tipo di prodotti vengono classificati a seconda dei loro difetti edella fabbrica che li ha prodotti Sia X1 il numero (1 o 2) dellafabbrica e sia X2 il numero di difetti per pezzo (che possono essere da0 a 3) di un prodotto scelto a caso tra la totalita di quelli esistentiLa tabella seguente riporta la funzione di massa di probabilitacongiunta per queste due variabili aleatorie discrete Le righe siriferiscono alla variabile X1 mentre le colonne alla variabile X2

Trova le distribuzioni marginali di X1 e X2Calcola media e varianza di X2

0 1 2 31 18 116 316 182 116 116 18 14

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 75 88

Scipy

Scipy e un modulo che permette di utilizzare varie distribuzioni diprobabilita sia di tipo discreto che continuo

La sintassi generale e la seguente Scipystatsltnome distribuzionegt

rvs(size=z) restituisce un vettore di numeri casuali estrattisecondo la distribuzione di lunghezza z

pdf(x) restituisce il vettore della densita della distribuzionevalutata nei valori del vettore di input x (pmf per le discrete)

cdf(x) restituisce il vettore della funzione di ripartizione (ocumulativa) della distribuzione valutata nei valori del vettore di inputx

ppf(q) restituisce il vettore dei quantili della distribuzione valutatanei valori del vettore di input q

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 76 88

Variabili aleatorie discrete Binomiale

gtgtgt from scipystats import binom

gtgtgt rv = binom(n p)

rvrvs(x) restituisce un vettore di x numeri estratti secondo unadistribuzione Binomiale di parametri n p

rvpmf(x) restituisce la probabilita di ottenere esattamente x

successi in un esperimento dicotomico (01) ripetuto n volte con unaprobabilita di successo p (x puo essere un vettore)

rvcdf(q) restituisce il valore della funzione di ripartizione in q (qpuo essere un vettore)

rvppf(p) restituisce il valore del quantile di ordine p

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 77 88

Variabili aleatorie discrete Ipergeometrica

Supponiamo di avere M = 20 animali di cui n = 7 cani Se vogliamosapere la probabilita di trovare un dato numero di cani se scegliamoN = 12 dei 20 animali in maniera casuale possiamo usare una distribuzioneipergeometrica in questo modo

gtgtgt from scipystats import hypergeom

gtgtgt [M n N] = [20 7 12]

gtgtgt rv = hypergeom(M n N)

rvpmf(x) restituisce la probabilita di estrarre esattamente x cani

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 78 88

Variabili aleatorie discrete Geometrica

gtgtgt from scipystats import geom

gtgtgt rv = geom(p)

rvpmf(x) restituisce la probabilita di avere un successo dopoesattamente x insuccessi in una successione di esperimenti dicotomici(esito 01) con una probabilita di successo p (x puo essere un vettore)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 79 88

Variabili aleatorie discrete Poisson

La distribuzione di Poisson viene usata spesso come modello per il numerodi volte per cui un evento avviene in un dato intervallo di tempo (ospazio) Ad esempio si puo utilizzare per misurare il numero di chiamatericevute da un call center in una mattinata

gtgtgt from scipystats import poisson

gtgtgt mu = 2

gtgtgt rv = poisson(mu)

rvpmf(x) restituisce il seguente valore

f (x) = exp(minusmicro)microx

x

In questo caso x rappresenta il numero di eventi per cui si vuole calcolarela probabilita sapendo che in media ne accadono micro

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 80 88

Variabili aleatorie continue Uniforme

In Scipy la funzione uniforme e soltanto continua Questo significa chenella generazione di numeri casuali otterro dati di tipo float Possiamotuttavia simulare una variabile discreta estraendo la parte intera delrisultato ottenuto

gtgtgt from scipystats import uniform

gtgtgt rv = uniform()

Il comando uniform() crea una distribuzione uniforme nellrsquointervallo[01] Possiamo creare una distribuzione uniforme qualsiasi usandouniform(x y - x) per lrsquointervallo [x y]

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 81 88

Variabili aleatorie continue

norm(mu sigma) variabile Gaussiana (o Normale) di media micro edeviazione standard σ

expon(scale = 1 lambda) variabile Esponenziale di parametroλ

Altre distribuzioni (con relativa documentazione) disponibili suhttpsdocsscipyorgdocscipyreferencestatshtml

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 82 88

Esercizi - 1

1 Unrsquourna contiene 10 palline di cui 4 bianche e 6 nere Si eseguono 5estrazioni con reimmissione

1 Tracciare grafico della funzione massa di probabilita della variabilecasuale X = rdquonumero di palline bianche estratterdquo

2 Calcolare la probabilita di estrarre 2 palline bianche3 Calcolare la probabilita di estrarre al piu 2 palline bianche4 Calcolare la probabilita di estrarre almeno 2 palline bianche5 Qual e il numero minimo x tale che la probabilita di estrarre al piu x

palline bianche sia almeno 08

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 83 88

Esercizi - 2

2 Si eseguono 10 estrazioni senza reimmissione da unrsquourna

1 Tracciare il grafico della funzione massa di probabilita della variabilecasuale X = rdquonumero di palline bianche estratterdquo nei seguenti casi

1 lrsquourna contiene 100 palline di cui 20 bianche e le restanti nere2 lrsquourna contiene 100 palline di cui 2 bianche e le restanti nere

2 Tracciare il grafico della funzione massa di probabilita della variabilecasuale X nel caso dellrsquourna 1 se si eseguono 25 estrazioni

3 Consideriamo lrsquourna 1 e N = 10 estrazioni Si aumenti il numero totaleM di palline nellrsquourna mantenendo uguale a 02 la frazione di pallinebianche Per ciascun valore di M confrontare graficamente ladistribuzione di probabilita del numero di palline bianche estratte nelcaso di estrazioni con e senza reimmissione Provare con 20 40 e 200palline bianche

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 84 88

Esercizi - 3

3 Calcolare la probabilita di ottenere piu teste che croci lanciando 7volte una moneta truccata con probabilita di avere croce pari a 045

4 Calcolare la probabilita di avere almeno 3 sei lanciando 5 dadi a 12facce

5 Calcolare la probabilita di estrarre 20 euro da un sacco contenente 47monete da 1 centesimo e 53 da 2 euro estraendo (uniformemente) acaso 10 monete senza reinserirle

6 Un grammo di uranio emette mediamente 2152 particelle α ognimillisecondo Qual e con buona approssimazione la probabilita che ungrammo di uranio emetta al piu 2000 particelle α in un millisecondo

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 85 88

Esercizi - 4

7 Un uomo si risveglia in mezzo al deserto senza acqua Dopo ogniminuto ha una probabilita del 3 di perdere conoscenza per via dellecondizioni estreme Calcolare la probabilita che lrsquouomo perdaconoscenza dopo almeno due ore e la probabilita che lrsquouomo perdaconoscenza dopo esattamente un quarto drsquoora

8 Sia X una variabile aleatoria normale di parametri micro = 10 e σ = 36Calcola

1 P(X gt 5)2 P(4 le X le 16)3 P(X le 8)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 86 88

Esercizi - 5

9 Il numero di errori tipografici per pagina di una certa rivista segue unadistribuzione di Poisson Sapendo che mediamente sono presenti 02errori per pagina determinare la probabilita che una pagina contenga

1 nessun refuso2 piu refusi

10 Arrivi alla fermata dellrsquoautobus alle 1000 e sei certo che ne passerauno in un momento distribuito uniformemente tra le 1000 e le 1030

1 Qual e la probabilita che tu debba aspettare piu di 10 minuti2 Se alle 1015 lrsquoautobus non e ancora arrivato qual e la probabilita che

tu debba aspettare almeno altri 10 minuti

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 87 88

Esercizi - 6

11 Il signor Jones e convinto che il tempo di vita di una automobile (inmigliaia di chilometri percorse) sia una variabile aleatoria esponenzialedi parametro 120 Il signor Smith ha una macchina usata da vendereche ha percorso circa 10 000 chilometri

1 Se il signor Jones decide di comprarla che probabilita ha di farle farealmeno altri 20 000 chilometri prima che sia da buttare

2 Il modello assunto dal signor Jones e ragionevole

12 Sia X una variabile casuale binomiale di parametri n = 100 e p = 07

1 Tracciate la funzione di ripartizione di X2 Calcolate il primo quartile il quantile di ordine 09 e la mediana di X3 Calcolare la probabilita P(X le 60)4 Calcolare la probabilita P(X le 88)5 Trovare il piu piccolo valore x tale che P(X le x) ge 09

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 88 88

  • Lezione 1
    • Script in Python
    • Numpy
    • Esercizi
    • Pandas
    • Esercizi
      • Lezione 2
        • File csv
        • DataFrame
        • Accesso ai DataFrame
        • Frequenze
        • Esercizi
          • Lezione 3
            • Matplotlib
            • Grafici a Barre
            • Istogrammi
            • Cumulativa empirica
            • Boxplot
            • QQplot
            • Diagramma di Pareto
            • Esercizi
              • Lezione 4
                • Definizioni
                • Probabilitagrave condizionata
                • Indipendenza
                • Esercizi
                  • Lezione 5
                    • Variabili Aleatorie
                    • Funzione di Ripartizione
                    • Funzione di Densitagrave
                    • Valore Atteso
                    • Varianza
                    • Covarianza
                    • Esercizi
                      • Lezione 6
                        • Scipy - Variabili Discrete
                        • Scipy - Variabili continue
                        • 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) SAD 20182019 January 12 2019 42 88

Grafici con le Series

In generale possiamo tracciare diversi tipi di grafici con le Series

rsquolinersquo line plot (default)

rsquobarrsquo vertical bar plot

rsquobarhrsquo horizontal bar plot

rsquohistrsquo histogram

rsquoboxrsquo boxplot

rsquokdersquo Kernel Density Estimation plot

rsquodensityrsquo same as rsquokdersquo

rsquoarearsquo area plot

rsquopiersquo pie plot

Per saperne di piu consultare questo link

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 43 88

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) SAD 20182019 January 12 2019 44 88

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) SAD 20182019 January 12 2019 45 88

Boxplot

Rappresenta la distribuzione di un vettore di numeri cerchiando gli outlier

gtgtgt weight = heroes[rsquoWeightrsquo]

gtgtgt weightplotbox()

gtgtgt pltshow()

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 46 88

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) SAD 20182019 January 12 2019 47 88

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) SAD 20182019 January 12 2019 48 88

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) SAD 20182019 January 12 2019 49 88

Esercizi - 1

Utilizzando il file capellicsv dai csv del laboratorio

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) SAD 20182019 January 12 2019 50 88

Esercizi - 2

Utilizzando il file dati-ospedalicsv dai csv del laboratorio

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 e canipdf

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 51 88

Sample space

Un esperimento e qualsiasi processo che produce una realizzazione (oosservazione) Lrsquoinsieme di tutte le possibili realizzazioni di un esperimentoviene detto sample space ed indicato con S

lancio di 2 monete

S = (T T ) (T C) (C T ) (C C)

gara di 3 cavalli (ab c)

S = tutti i possibili ordinamenti di(ab c)= (ab c) (a cb) (c b a)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 52 88

Eventi

lancio di 2 monete

S = (T T ) (T C) (C T ) (C C)

A = 2 monete uguali

A = (T T ) (C C)

B = 2 monete diverse

B = Ac = (T C) (C T )

gara di 3 cavalli

A = cavallo a vincente

A = (ab c) (a c b)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 53 88

Probabilita - 1

Consideriamo un esperimento con sample space S Supponiamo che adogni evento A sia associato un numero chiamato probabilita di A edindicato con P(A) che soddisfa le seguenti proprieta

1 Per ogni evento A la probabilita di A e un numero tra 0 e 1

0 le P(A) le 1

2 La probabilita del sample space S e 1

P(S) = 1

3 La probabilita dellrsquounione di eventi disgiunti e uguale alla somma delleprobabilita di tali eventi

P(A cupB) = P(A) + P(B)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 54 88

Probabilita - 2

In generale 2 eventi potrebbero non essere disgiunti

P(A cupB) = P(A) + P(B) minus P(A capB)

Esempio un certo negozio accetta pagamenti o con carte di credito VISAo Mastercard

1 22 dei clienti ha Mastercard

2 58 dei clienti ha VISA

3 14 dei clienti ha entrambe

Qual e la probabilita che un cliente ha almeno una delle 2 carte

P(A) = 022 P(B) = 058

P(A cupB) = P(A) + P(B) minus P(A capB) = 022 + 058 minus 014 = 066

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 55 88

Probabilita condizionata - 1

Se alcune informazioni riguardo lrsquoesito di un esperimento sono disponibiliparliamo di probabilita condizionata

Esempio lancio di 2 dadi

S = (11) (12) (65) (66)

Probabilita che la somma sia 10 (evento B) sapendo che il primo dadomostra 4 (evento A)

(41) (42) (43) (44) (45) (46)

P(B ∣A) = 16

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 56 88

Probabilita condizionata - 2

In generale

P(B ∣A) = P(A capB)P(A)

Supponiamo lrsquoesito sia in A

Per essere anche in B deve essere in entrambi A e B cioe in A capB

Sapendo che A e gia accaduto il nostro nuovo sample space diventa A

la probabilita di A capB viene calcolata rispetto ad A

Nel caso dei dadi

P(B ∣A) = P((46))P((41) (42) (43) (44) (45) (46)) = 136

16= 1

6

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 57 88

Indipendenza

In generale sapere che A e accaduto modifica le chance che B accadaNel caso cio non avvenga cioe se P(B ∣A) = P(B) allora i 2 eventi sidicono indipendenti In questo caso sapere che A e accaduto nonaggiunge alcuna informazione

SiccomeP(A capB) = P(B ∣A)P(A)

Abbiamo che B e indipendente da A se

P(A capB) = P(B)P(A)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 58 88

Esercizi - 1

1 Svolgere gli esercizi di combinatoria

2 Si consideri il seguente esperimento casuale rdquosi lancia tre volte unamonetardquo Qual e lo spazio degli esiti di questo esperimento casualeSi scriva esplicitamente lrsquoevento rdquosi ottengono piu teste che crocirdquo

3 Si consideri il seguente esperimento casuale rdquoSi tirano due dadirdquo Siconsiderino gli eventi E = rdquola somma dei punteggi e disparirdquo F = rdquoilprimo dado realizza un 1rdquo e G = rdquola somma dei punteggi e 5rdquo Sidescrivano gli eventi E cap F E cup F F capG E cap F c e E cap F capG

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 59 88

Esercizi - 2

4 Si consideri il seguente esperimento casuale rdquoUn sistema e compostoda 4 componenti ciascuno dei quali o funziona oppure e guasto Siosserva lo stato dei componenti ottenendo un vettore (x1 x2 x3 x4)dove xi e 1 oppure 0 a seconda che il componente i-esimo funzionioppure nordquo

1 Da quanti elementi e formato lo spazio degli esiti2 Il sistema nel suo insieme funziona fintantoche entrambi i componenti

1 e 2 oppure entrambi i componenti 3 e 4 funzionano Specifica tuttigli esiti dellrsquoevento il rdquosistema funzionardquo

3 Sia E lrsquoevento rdquoi componenti 1 e 3 sono guastirdquo Quanti esiti contiene

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 60 88

Esercizi - 3

5 Si dimostri che in uno spazio degli esiti Ω dotato di una probabilita Pper ogni evento E F sub Ω vale la disuguaglianza seguente

P(E cap F ) ge P(E) + P(F ) minus 1

6 Un gruppo di 5 bambini e 10 bambine e in fila in ordine casuale nelsenso che tutte le 15 possibili permutazioni si suppongonoequiprobabili

1 Qual e la probabilita che il quarto della fila sia un bambino2 E il dodicesimo3 Qual e la probabilita che un determinato bambino occupi la terza

posizione

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 61 88

Esercizi - 4

7 In un comune vi sono 5 alberghi Se 3 persone devono scegliere unalbergo in cui pernottare qual e la probabilita che finiscano tutte inalberghi differenti Che cosa stiamo assumendo senza dirloesplicitamente

8 La media del salario annuale di un gruppo di 100 lavoratori impiegatinellrsquoamministrazione di una grande azienda e di 130000 dollari conuna deviazione standard di 20000 dollari Se si prende una persona acaso da questo gruppo cosa possiamo dire sulla probabilita che il suosalario sia

1 tra i 90000 e i 170000 dollari2 superiore a 150000 dollari

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 62 88

Esercizi - 5

9 In una certa regione vi sono due ditte che producono forni amicroonde Quelli della fabbrica A sono difettosi con probabilita 005mentre quelli della fabbrica B con probabilita 001 Supponi di averacquistato due apparecchi prodotti dalla stessa ditta che puo essere laA o la B con probabilita del 50 Se il primo microonde e difettosoqual e la probabilita condizionata che sia difettoso anche il secondo

10 Hai chiesto ad un vicino di innaffiare una piantina delicata mentre seiin vacanza Pensi che senza acqua la piantina muoia con probabilita08 mentre se innaffiata questa probabilita si ridurrebbe a 015 Latua fiducia che il vicino si ricordi di innaffiarla e del 90

1 Qual e la probabilita che la pianta sia ancora viva al tuo ritorno2 Se fosse morta quale sarebbe la probabilita che il vicino si sia

dimenticato di innaffiarla

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 63 88

Esercizi - 6

11 Una compagnia di assicurazioni classifica i suoi clienti in tre fascebasso rischio medio rischio alto rischio Le sue statistiche indicanoche le probabilita che un cliente delle tre fasce abbia un incidenteentro un periodo di un anno sono rispettivamente 005 015 e 030Se il 20 dei clienti sono a basso rischio il 50 a medio rischio e il30 ad alto rischio che percentuale dei clienti avra mediamenteincidenti in un lasso di un anno Se un cliente non ha avuto incidentinel 1987 qual e la probabilita che appartenga a ciascuna delle trefasce

12 Se un votante scelto a caso e favorevole ad una certa riforma conprobabilita di 07 qual e la probabilita che su 10 votanti esattamente7 siano favorevoli

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 64 88

Variabili aleatorie

Una variabile aleatoria (o anche variabile aleatoria) e una variabile chepuo assumere valori diversi in dipendenza da qualche fenomeno aleatorio

fenomeno lancio di 2 dadivariabile aleatoria somma dei 2 dadi

fenomeno 3 lanci di una monetavariabile aleatoria numero di rdquotesterdquo complessivo

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 65 88

Funzione di Ripartizione

Sia X una variabile aleatoria Si chiama funzione di ripartizione di X lafunzione F che associa ad ogni numero reale a la probabilita che X siaminore o uguale ad a cioe P(X le a) = FX (a)

Nel caso della moneta (fair) lanciata 3 volte (X indica il numero di testecomplessivo)

FX (a) =

⎧⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎨⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎩

0 if a lt 0

18 per 0 le a lt 1

18 + 38 = 48 per 1 le a lt 2

48 + 38 = 78 per 2 le a lt 3

88 = 1 per a ge 3

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 66 88

Funzione di densita o di massa

Sia X una variabile aleatoria Si chiama funzione di densita di X lafunzione f che associa ad ogni numero reale a la probabilita che X siauguale ad a indicata con fX (a)

Nel caso della moneta (fair) lanciata 3 volte (X indica il numero di testecomplessivo)

fX (a) =

⎧⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎨⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎩

18 per a = 0

38 per a = 1

38 per a = 2

18 per a = 3

0 altrimenti

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 67 88

Valore Atteso

Chiamato anche media (expectation in inglese) e appunto una mediapesata dei possibili valori di una variabile aleatoria Il peso dato a ciascunvalore e la probabilita data a quello specifico valore

E[X ] =sumi

aiP(X = ai)

Esempio dado truccato

valore 6 con probabilita 712

valori da 1 a 5 con probabilita 112

La variabile aleatoria X indica la faccia risultante dal lancio di un dado

E[X ] = 1

12lowast 1 + 1

12lowast 2 + 1

12lowast 3 + 1

12lowast 4 + 1

12lowast 5 + 7

12lowast 6 = 475

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 68 88

Valore Atteso - Proprieta

Sia X una variabile aleatoria con valore atteso E[X ] Se c e una costanteallora anche cX e X + c sono variabili casuali In particolare valgono leseguenti proprieta

E[cX ] = cE[X ]E[X + c] = E[X ] + c

Sia Y una variabile aleatoria Allora

E[X +Y ] = E[X ] +E[Y ]se e solo se X e Y sono independenti

E[XY ] = E[X ]E[Y ]

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 69 88

Varianza

Ersquo il valore atteso del quadrato della differenza tra la variabile aleatoria e ilsuo valore atteso

Var(X ) = E[(X minusE[X ])2] = E[X 2] minus (E[X ])2

La radice quadrata viene detta deviazione standard di X

Esempio dado truccato

E[X 2] = 1

12lowast 12 + 1

12lowast 22 + 1

12lowast 32 + 1

12lowast 42 + 1

12lowast 52 + 7

12lowast 62 ≃ 255

Var(X ) = E[X 2] minus (E[X ])2 ≃ 255 minus 4752 ≃ 3

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 70 88

Varianza - proprieta

Sia X una variabile aleatoria e c una costante Allora valgono le seguentiproprieta

1 Var(cX ) = c2Var(X )

2 Var(X + c) = Var(X )

NOTA

Var(X +X ) ne Var(X ) +Var(X )

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 71 88

Covarianza

Siano X Y due variabili aleatorie con valore atteso rispettivamenteE[X ] = microX e E[Y ] = microY La covarianza e definita come segue

Cov(X Y ) = E[(X minus microX )(Y minus microY )] = = E[XY ] minus microXmicroY

Proprieta

1 Cov(X Y ) = Cov(Y X )2 Cov(X X ) = Var(X )3 Sia a una costante allora

Cov(aX Y ) = aCov(X Y )

4 Sia Z una variabile aleatoria allora

Cov(X + Z Y ) = Cov(X Y ) + Cov(Z Y )

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 72 88

Esercizi - 1

1 Consideriamo una variabile aleatoria X che puo assumere i valori 12o 3 Se sappiamo che

fX (1) = 1

3 fX (2) = 3

7

1 Quanto vale fX (3)2 Disegnare il grafico di questa funzione di massa3 Disegnare il grafico della relativa funzione di ripartizione

2 Dimostrare che se X1 e X2 hanno la stessa distribuzione allora

Cov(X1 +X2X1 minusX2) = 0

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 73 88

Esercizi - 2

3 La funzione di ripartizione di X e definita come segue

FX (x) =

⎧⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎨⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎩

0 per x le 0

x2 per 0 le x lt 1

23 per 1 le x lt 2

1112 per 2 le x lt 3

1 per x ge 3

Se ne tracci il graficoQuanto vale P(X gt 12)Quanto vale P(2 le X le 4)Quanto vale P(X le 3)Quanto vale P(X = 1)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 74 88

Esercizi - 3

4 Un tipo di prodotti vengono classificati a seconda dei loro difetti edella fabbrica che li ha prodotti Sia X1 il numero (1 o 2) dellafabbrica e sia X2 il numero di difetti per pezzo (che possono essere da0 a 3) di un prodotto scelto a caso tra la totalita di quelli esistentiLa tabella seguente riporta la funzione di massa di probabilitacongiunta per queste due variabili aleatorie discrete Le righe siriferiscono alla variabile X1 mentre le colonne alla variabile X2

Trova le distribuzioni marginali di X1 e X2Calcola media e varianza di X2

0 1 2 31 18 116 316 182 116 116 18 14

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 75 88

Scipy

Scipy e un modulo che permette di utilizzare varie distribuzioni diprobabilita sia di tipo discreto che continuo

La sintassi generale e la seguente Scipystatsltnome distribuzionegt

rvs(size=z) restituisce un vettore di numeri casuali estrattisecondo la distribuzione di lunghezza z

pdf(x) restituisce il vettore della densita della distribuzionevalutata nei valori del vettore di input x (pmf per le discrete)

cdf(x) restituisce il vettore della funzione di ripartizione (ocumulativa) della distribuzione valutata nei valori del vettore di inputx

ppf(q) restituisce il vettore dei quantili della distribuzione valutatanei valori del vettore di input q

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 76 88

Variabili aleatorie discrete Binomiale

gtgtgt from scipystats import binom

gtgtgt rv = binom(n p)

rvrvs(x) restituisce un vettore di x numeri estratti secondo unadistribuzione Binomiale di parametri n p

rvpmf(x) restituisce la probabilita di ottenere esattamente x

successi in un esperimento dicotomico (01) ripetuto n volte con unaprobabilita di successo p (x puo essere un vettore)

rvcdf(q) restituisce il valore della funzione di ripartizione in q (qpuo essere un vettore)

rvppf(p) restituisce il valore del quantile di ordine p

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 77 88

Variabili aleatorie discrete Ipergeometrica

Supponiamo di avere M = 20 animali di cui n = 7 cani Se vogliamosapere la probabilita di trovare un dato numero di cani se scegliamoN = 12 dei 20 animali in maniera casuale possiamo usare una distribuzioneipergeometrica in questo modo

gtgtgt from scipystats import hypergeom

gtgtgt [M n N] = [20 7 12]

gtgtgt rv = hypergeom(M n N)

rvpmf(x) restituisce la probabilita di estrarre esattamente x cani

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 78 88

Variabili aleatorie discrete Geometrica

gtgtgt from scipystats import geom

gtgtgt rv = geom(p)

rvpmf(x) restituisce la probabilita di avere un successo dopoesattamente x insuccessi in una successione di esperimenti dicotomici(esito 01) con una probabilita di successo p (x puo essere un vettore)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 79 88

Variabili aleatorie discrete Poisson

La distribuzione di Poisson viene usata spesso come modello per il numerodi volte per cui un evento avviene in un dato intervallo di tempo (ospazio) Ad esempio si puo utilizzare per misurare il numero di chiamatericevute da un call center in una mattinata

gtgtgt from scipystats import poisson

gtgtgt mu = 2

gtgtgt rv = poisson(mu)

rvpmf(x) restituisce il seguente valore

f (x) = exp(minusmicro)microx

x

In questo caso x rappresenta il numero di eventi per cui si vuole calcolarela probabilita sapendo che in media ne accadono micro

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 80 88

Variabili aleatorie continue Uniforme

In Scipy la funzione uniforme e soltanto continua Questo significa chenella generazione di numeri casuali otterro dati di tipo float Possiamotuttavia simulare una variabile discreta estraendo la parte intera delrisultato ottenuto

gtgtgt from scipystats import uniform

gtgtgt rv = uniform()

Il comando uniform() crea una distribuzione uniforme nellrsquointervallo[01] Possiamo creare una distribuzione uniforme qualsiasi usandouniform(x y - x) per lrsquointervallo [x y]

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 81 88

Variabili aleatorie continue

norm(mu sigma) variabile Gaussiana (o Normale) di media micro edeviazione standard σ

expon(scale = 1 lambda) variabile Esponenziale di parametroλ

Altre distribuzioni (con relativa documentazione) disponibili suhttpsdocsscipyorgdocscipyreferencestatshtml

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 82 88

Esercizi - 1

1 Unrsquourna contiene 10 palline di cui 4 bianche e 6 nere Si eseguono 5estrazioni con reimmissione

1 Tracciare grafico della funzione massa di probabilita della variabilecasuale X = rdquonumero di palline bianche estratterdquo

2 Calcolare la probabilita di estrarre 2 palline bianche3 Calcolare la probabilita di estrarre al piu 2 palline bianche4 Calcolare la probabilita di estrarre almeno 2 palline bianche5 Qual e il numero minimo x tale che la probabilita di estrarre al piu x

palline bianche sia almeno 08

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 83 88

Esercizi - 2

2 Si eseguono 10 estrazioni senza reimmissione da unrsquourna

1 Tracciare il grafico della funzione massa di probabilita della variabilecasuale X = rdquonumero di palline bianche estratterdquo nei seguenti casi

1 lrsquourna contiene 100 palline di cui 20 bianche e le restanti nere2 lrsquourna contiene 100 palline di cui 2 bianche e le restanti nere

2 Tracciare il grafico della funzione massa di probabilita della variabilecasuale X nel caso dellrsquourna 1 se si eseguono 25 estrazioni

3 Consideriamo lrsquourna 1 e N = 10 estrazioni Si aumenti il numero totaleM di palline nellrsquourna mantenendo uguale a 02 la frazione di pallinebianche Per ciascun valore di M confrontare graficamente ladistribuzione di probabilita del numero di palline bianche estratte nelcaso di estrazioni con e senza reimmissione Provare con 20 40 e 200palline bianche

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 84 88

Esercizi - 3

3 Calcolare la probabilita di ottenere piu teste che croci lanciando 7volte una moneta truccata con probabilita di avere croce pari a 045

4 Calcolare la probabilita di avere almeno 3 sei lanciando 5 dadi a 12facce

5 Calcolare la probabilita di estrarre 20 euro da un sacco contenente 47monete da 1 centesimo e 53 da 2 euro estraendo (uniformemente) acaso 10 monete senza reinserirle

6 Un grammo di uranio emette mediamente 2152 particelle α ognimillisecondo Qual e con buona approssimazione la probabilita che ungrammo di uranio emetta al piu 2000 particelle α in un millisecondo

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 85 88

Esercizi - 4

7 Un uomo si risveglia in mezzo al deserto senza acqua Dopo ogniminuto ha una probabilita del 3 di perdere conoscenza per via dellecondizioni estreme Calcolare la probabilita che lrsquouomo perdaconoscenza dopo almeno due ore e la probabilita che lrsquouomo perdaconoscenza dopo esattamente un quarto drsquoora

8 Sia X una variabile aleatoria normale di parametri micro = 10 e σ = 36Calcola

1 P(X gt 5)2 P(4 le X le 16)3 P(X le 8)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 86 88

Esercizi - 5

9 Il numero di errori tipografici per pagina di una certa rivista segue unadistribuzione di Poisson Sapendo che mediamente sono presenti 02errori per pagina determinare la probabilita che una pagina contenga

1 nessun refuso2 piu refusi

10 Arrivi alla fermata dellrsquoautobus alle 1000 e sei certo che ne passerauno in un momento distribuito uniformemente tra le 1000 e le 1030

1 Qual e la probabilita che tu debba aspettare piu di 10 minuti2 Se alle 1015 lrsquoautobus non e ancora arrivato qual e la probabilita che

tu debba aspettare almeno altri 10 minuti

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 87 88

Esercizi - 6

11 Il signor Jones e convinto che il tempo di vita di una automobile (inmigliaia di chilometri percorse) sia una variabile aleatoria esponenzialedi parametro 120 Il signor Smith ha una macchina usata da vendereche ha percorso circa 10 000 chilometri

1 Se il signor Jones decide di comprarla che probabilita ha di farle farealmeno altri 20 000 chilometri prima che sia da buttare

2 Il modello assunto dal signor Jones e ragionevole

12 Sia X una variabile casuale binomiale di parametri n = 100 e p = 07

1 Tracciate la funzione di ripartizione di X2 Calcolate il primo quartile il quantile di ordine 09 e la mediana di X3 Calcolare la probabilita P(X le 60)4 Calcolare la probabilita P(X le 88)5 Trovare il piu piccolo valore x tale che P(X le x) ge 09

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 88 88

  • Lezione 1
    • Script in Python
    • Numpy
    • Esercizi
    • Pandas
    • Esercizi
      • Lezione 2
        • File csv
        • DataFrame
        • Accesso ai DataFrame
        • Frequenze
        • Esercizi
          • Lezione 3
            • Matplotlib
            • Grafici a Barre
            • Istogrammi
            • Cumulativa empirica
            • Boxplot
            • QQplot
            • Diagramma di Pareto
            • Esercizi
              • Lezione 4
                • Definizioni
                • Probabilitagrave condizionata
                • Indipendenza
                • Esercizi
                  • Lezione 5
                    • Variabili Aleatorie
                    • Funzione di Ripartizione
                    • Funzione di Densitagrave
                    • Valore Atteso
                    • Varianza
                    • Covarianza
                    • Esercizi
                      • Lezione 6
                        • Scipy - Variabili Discrete
                        • Scipy - Variabili continue
                        • Esercizi

Grafici con le Series

In generale possiamo tracciare diversi tipi di grafici con le Series

rsquolinersquo line plot (default)

rsquobarrsquo vertical bar plot

rsquobarhrsquo horizontal bar plot

rsquohistrsquo histogram

rsquoboxrsquo boxplot

rsquokdersquo Kernel Density Estimation plot

rsquodensityrsquo same as rsquokdersquo

rsquoarearsquo area plot

rsquopiersquo pie plot

Per saperne di piu consultare questo link

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 43 88

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) SAD 20182019 January 12 2019 44 88

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) SAD 20182019 January 12 2019 45 88

Boxplot

Rappresenta la distribuzione di un vettore di numeri cerchiando gli outlier

gtgtgt weight = heroes[rsquoWeightrsquo]

gtgtgt weightplotbox()

gtgtgt pltshow()

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 46 88

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) SAD 20182019 January 12 2019 47 88

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) SAD 20182019 January 12 2019 48 88

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) SAD 20182019 January 12 2019 49 88

Esercizi - 1

Utilizzando il file capellicsv dai csv del laboratorio

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) SAD 20182019 January 12 2019 50 88

Esercizi - 2

Utilizzando il file dati-ospedalicsv dai csv del laboratorio

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 e canipdf

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 51 88

Sample space

Un esperimento e qualsiasi processo che produce una realizzazione (oosservazione) Lrsquoinsieme di tutte le possibili realizzazioni di un esperimentoviene detto sample space ed indicato con S

lancio di 2 monete

S = (T T ) (T C) (C T ) (C C)

gara di 3 cavalli (ab c)

S = tutti i possibili ordinamenti di(ab c)= (ab c) (a cb) (c b a)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 52 88

Eventi

lancio di 2 monete

S = (T T ) (T C) (C T ) (C C)

A = 2 monete uguali

A = (T T ) (C C)

B = 2 monete diverse

B = Ac = (T C) (C T )

gara di 3 cavalli

A = cavallo a vincente

A = (ab c) (a c b)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 53 88

Probabilita - 1

Consideriamo un esperimento con sample space S Supponiamo che adogni evento A sia associato un numero chiamato probabilita di A edindicato con P(A) che soddisfa le seguenti proprieta

1 Per ogni evento A la probabilita di A e un numero tra 0 e 1

0 le P(A) le 1

2 La probabilita del sample space S e 1

P(S) = 1

3 La probabilita dellrsquounione di eventi disgiunti e uguale alla somma delleprobabilita di tali eventi

P(A cupB) = P(A) + P(B)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 54 88

Probabilita - 2

In generale 2 eventi potrebbero non essere disgiunti

P(A cupB) = P(A) + P(B) minus P(A capB)

Esempio un certo negozio accetta pagamenti o con carte di credito VISAo Mastercard

1 22 dei clienti ha Mastercard

2 58 dei clienti ha VISA

3 14 dei clienti ha entrambe

Qual e la probabilita che un cliente ha almeno una delle 2 carte

P(A) = 022 P(B) = 058

P(A cupB) = P(A) + P(B) minus P(A capB) = 022 + 058 minus 014 = 066

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 55 88

Probabilita condizionata - 1

Se alcune informazioni riguardo lrsquoesito di un esperimento sono disponibiliparliamo di probabilita condizionata

Esempio lancio di 2 dadi

S = (11) (12) (65) (66)

Probabilita che la somma sia 10 (evento B) sapendo che il primo dadomostra 4 (evento A)

(41) (42) (43) (44) (45) (46)

P(B ∣A) = 16

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 56 88

Probabilita condizionata - 2

In generale

P(B ∣A) = P(A capB)P(A)

Supponiamo lrsquoesito sia in A

Per essere anche in B deve essere in entrambi A e B cioe in A capB

Sapendo che A e gia accaduto il nostro nuovo sample space diventa A

la probabilita di A capB viene calcolata rispetto ad A

Nel caso dei dadi

P(B ∣A) = P((46))P((41) (42) (43) (44) (45) (46)) = 136

16= 1

6

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 57 88

Indipendenza

In generale sapere che A e accaduto modifica le chance che B accadaNel caso cio non avvenga cioe se P(B ∣A) = P(B) allora i 2 eventi sidicono indipendenti In questo caso sapere che A e accaduto nonaggiunge alcuna informazione

SiccomeP(A capB) = P(B ∣A)P(A)

Abbiamo che B e indipendente da A se

P(A capB) = P(B)P(A)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 58 88

Esercizi - 1

1 Svolgere gli esercizi di combinatoria

2 Si consideri il seguente esperimento casuale rdquosi lancia tre volte unamonetardquo Qual e lo spazio degli esiti di questo esperimento casualeSi scriva esplicitamente lrsquoevento rdquosi ottengono piu teste che crocirdquo

3 Si consideri il seguente esperimento casuale rdquoSi tirano due dadirdquo Siconsiderino gli eventi E = rdquola somma dei punteggi e disparirdquo F = rdquoilprimo dado realizza un 1rdquo e G = rdquola somma dei punteggi e 5rdquo Sidescrivano gli eventi E cap F E cup F F capG E cap F c e E cap F capG

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 59 88

Esercizi - 2

4 Si consideri il seguente esperimento casuale rdquoUn sistema e compostoda 4 componenti ciascuno dei quali o funziona oppure e guasto Siosserva lo stato dei componenti ottenendo un vettore (x1 x2 x3 x4)dove xi e 1 oppure 0 a seconda che il componente i-esimo funzionioppure nordquo

1 Da quanti elementi e formato lo spazio degli esiti2 Il sistema nel suo insieme funziona fintantoche entrambi i componenti

1 e 2 oppure entrambi i componenti 3 e 4 funzionano Specifica tuttigli esiti dellrsquoevento il rdquosistema funzionardquo

3 Sia E lrsquoevento rdquoi componenti 1 e 3 sono guastirdquo Quanti esiti contiene

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 60 88

Esercizi - 3

5 Si dimostri che in uno spazio degli esiti Ω dotato di una probabilita Pper ogni evento E F sub Ω vale la disuguaglianza seguente

P(E cap F ) ge P(E) + P(F ) minus 1

6 Un gruppo di 5 bambini e 10 bambine e in fila in ordine casuale nelsenso che tutte le 15 possibili permutazioni si suppongonoequiprobabili

1 Qual e la probabilita che il quarto della fila sia un bambino2 E il dodicesimo3 Qual e la probabilita che un determinato bambino occupi la terza

posizione

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 61 88

Esercizi - 4

7 In un comune vi sono 5 alberghi Se 3 persone devono scegliere unalbergo in cui pernottare qual e la probabilita che finiscano tutte inalberghi differenti Che cosa stiamo assumendo senza dirloesplicitamente

8 La media del salario annuale di un gruppo di 100 lavoratori impiegatinellrsquoamministrazione di una grande azienda e di 130000 dollari conuna deviazione standard di 20000 dollari Se si prende una persona acaso da questo gruppo cosa possiamo dire sulla probabilita che il suosalario sia

1 tra i 90000 e i 170000 dollari2 superiore a 150000 dollari

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 62 88

Esercizi - 5

9 In una certa regione vi sono due ditte che producono forni amicroonde Quelli della fabbrica A sono difettosi con probabilita 005mentre quelli della fabbrica B con probabilita 001 Supponi di averacquistato due apparecchi prodotti dalla stessa ditta che puo essere laA o la B con probabilita del 50 Se il primo microonde e difettosoqual e la probabilita condizionata che sia difettoso anche il secondo

10 Hai chiesto ad un vicino di innaffiare una piantina delicata mentre seiin vacanza Pensi che senza acqua la piantina muoia con probabilita08 mentre se innaffiata questa probabilita si ridurrebbe a 015 Latua fiducia che il vicino si ricordi di innaffiarla e del 90

1 Qual e la probabilita che la pianta sia ancora viva al tuo ritorno2 Se fosse morta quale sarebbe la probabilita che il vicino si sia

dimenticato di innaffiarla

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 63 88

Esercizi - 6

11 Una compagnia di assicurazioni classifica i suoi clienti in tre fascebasso rischio medio rischio alto rischio Le sue statistiche indicanoche le probabilita che un cliente delle tre fasce abbia un incidenteentro un periodo di un anno sono rispettivamente 005 015 e 030Se il 20 dei clienti sono a basso rischio il 50 a medio rischio e il30 ad alto rischio che percentuale dei clienti avra mediamenteincidenti in un lasso di un anno Se un cliente non ha avuto incidentinel 1987 qual e la probabilita che appartenga a ciascuna delle trefasce

12 Se un votante scelto a caso e favorevole ad una certa riforma conprobabilita di 07 qual e la probabilita che su 10 votanti esattamente7 siano favorevoli

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 64 88

Variabili aleatorie

Una variabile aleatoria (o anche variabile aleatoria) e una variabile chepuo assumere valori diversi in dipendenza da qualche fenomeno aleatorio

fenomeno lancio di 2 dadivariabile aleatoria somma dei 2 dadi

fenomeno 3 lanci di una monetavariabile aleatoria numero di rdquotesterdquo complessivo

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 65 88

Funzione di Ripartizione

Sia X una variabile aleatoria Si chiama funzione di ripartizione di X lafunzione F che associa ad ogni numero reale a la probabilita che X siaminore o uguale ad a cioe P(X le a) = FX (a)

Nel caso della moneta (fair) lanciata 3 volte (X indica il numero di testecomplessivo)

FX (a) =

⎧⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎨⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎩

0 if a lt 0

18 per 0 le a lt 1

18 + 38 = 48 per 1 le a lt 2

48 + 38 = 78 per 2 le a lt 3

88 = 1 per a ge 3

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 66 88

Funzione di densita o di massa

Sia X una variabile aleatoria Si chiama funzione di densita di X lafunzione f che associa ad ogni numero reale a la probabilita che X siauguale ad a indicata con fX (a)

Nel caso della moneta (fair) lanciata 3 volte (X indica il numero di testecomplessivo)

fX (a) =

⎧⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎨⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎩

18 per a = 0

38 per a = 1

38 per a = 2

18 per a = 3

0 altrimenti

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 67 88

Valore Atteso

Chiamato anche media (expectation in inglese) e appunto una mediapesata dei possibili valori di una variabile aleatoria Il peso dato a ciascunvalore e la probabilita data a quello specifico valore

E[X ] =sumi

aiP(X = ai)

Esempio dado truccato

valore 6 con probabilita 712

valori da 1 a 5 con probabilita 112

La variabile aleatoria X indica la faccia risultante dal lancio di un dado

E[X ] = 1

12lowast 1 + 1

12lowast 2 + 1

12lowast 3 + 1

12lowast 4 + 1

12lowast 5 + 7

12lowast 6 = 475

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 68 88

Valore Atteso - Proprieta

Sia X una variabile aleatoria con valore atteso E[X ] Se c e una costanteallora anche cX e X + c sono variabili casuali In particolare valgono leseguenti proprieta

E[cX ] = cE[X ]E[X + c] = E[X ] + c

Sia Y una variabile aleatoria Allora

E[X +Y ] = E[X ] +E[Y ]se e solo se X e Y sono independenti

E[XY ] = E[X ]E[Y ]

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 69 88

Varianza

Ersquo il valore atteso del quadrato della differenza tra la variabile aleatoria e ilsuo valore atteso

Var(X ) = E[(X minusE[X ])2] = E[X 2] minus (E[X ])2

La radice quadrata viene detta deviazione standard di X

Esempio dado truccato

E[X 2] = 1

12lowast 12 + 1

12lowast 22 + 1

12lowast 32 + 1

12lowast 42 + 1

12lowast 52 + 7

12lowast 62 ≃ 255

Var(X ) = E[X 2] minus (E[X ])2 ≃ 255 minus 4752 ≃ 3

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 70 88

Varianza - proprieta

Sia X una variabile aleatoria e c una costante Allora valgono le seguentiproprieta

1 Var(cX ) = c2Var(X )

2 Var(X + c) = Var(X )

NOTA

Var(X +X ) ne Var(X ) +Var(X )

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 71 88

Covarianza

Siano X Y due variabili aleatorie con valore atteso rispettivamenteE[X ] = microX e E[Y ] = microY La covarianza e definita come segue

Cov(X Y ) = E[(X minus microX )(Y minus microY )] = = E[XY ] minus microXmicroY

Proprieta

1 Cov(X Y ) = Cov(Y X )2 Cov(X X ) = Var(X )3 Sia a una costante allora

Cov(aX Y ) = aCov(X Y )

4 Sia Z una variabile aleatoria allora

Cov(X + Z Y ) = Cov(X Y ) + Cov(Z Y )

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 72 88

Esercizi - 1

1 Consideriamo una variabile aleatoria X che puo assumere i valori 12o 3 Se sappiamo che

fX (1) = 1

3 fX (2) = 3

7

1 Quanto vale fX (3)2 Disegnare il grafico di questa funzione di massa3 Disegnare il grafico della relativa funzione di ripartizione

2 Dimostrare che se X1 e X2 hanno la stessa distribuzione allora

Cov(X1 +X2X1 minusX2) = 0

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 73 88

Esercizi - 2

3 La funzione di ripartizione di X e definita come segue

FX (x) =

⎧⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎨⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎩

0 per x le 0

x2 per 0 le x lt 1

23 per 1 le x lt 2

1112 per 2 le x lt 3

1 per x ge 3

Se ne tracci il graficoQuanto vale P(X gt 12)Quanto vale P(2 le X le 4)Quanto vale P(X le 3)Quanto vale P(X = 1)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 74 88

Esercizi - 3

4 Un tipo di prodotti vengono classificati a seconda dei loro difetti edella fabbrica che li ha prodotti Sia X1 il numero (1 o 2) dellafabbrica e sia X2 il numero di difetti per pezzo (che possono essere da0 a 3) di un prodotto scelto a caso tra la totalita di quelli esistentiLa tabella seguente riporta la funzione di massa di probabilitacongiunta per queste due variabili aleatorie discrete Le righe siriferiscono alla variabile X1 mentre le colonne alla variabile X2

Trova le distribuzioni marginali di X1 e X2Calcola media e varianza di X2

0 1 2 31 18 116 316 182 116 116 18 14

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 75 88

Scipy

Scipy e un modulo che permette di utilizzare varie distribuzioni diprobabilita sia di tipo discreto che continuo

La sintassi generale e la seguente Scipystatsltnome distribuzionegt

rvs(size=z) restituisce un vettore di numeri casuali estrattisecondo la distribuzione di lunghezza z

pdf(x) restituisce il vettore della densita della distribuzionevalutata nei valori del vettore di input x (pmf per le discrete)

cdf(x) restituisce il vettore della funzione di ripartizione (ocumulativa) della distribuzione valutata nei valori del vettore di inputx

ppf(q) restituisce il vettore dei quantili della distribuzione valutatanei valori del vettore di input q

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 76 88

Variabili aleatorie discrete Binomiale

gtgtgt from scipystats import binom

gtgtgt rv = binom(n p)

rvrvs(x) restituisce un vettore di x numeri estratti secondo unadistribuzione Binomiale di parametri n p

rvpmf(x) restituisce la probabilita di ottenere esattamente x

successi in un esperimento dicotomico (01) ripetuto n volte con unaprobabilita di successo p (x puo essere un vettore)

rvcdf(q) restituisce il valore della funzione di ripartizione in q (qpuo essere un vettore)

rvppf(p) restituisce il valore del quantile di ordine p

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 77 88

Variabili aleatorie discrete Ipergeometrica

Supponiamo di avere M = 20 animali di cui n = 7 cani Se vogliamosapere la probabilita di trovare un dato numero di cani se scegliamoN = 12 dei 20 animali in maniera casuale possiamo usare una distribuzioneipergeometrica in questo modo

gtgtgt from scipystats import hypergeom

gtgtgt [M n N] = [20 7 12]

gtgtgt rv = hypergeom(M n N)

rvpmf(x) restituisce la probabilita di estrarre esattamente x cani

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 78 88

Variabili aleatorie discrete Geometrica

gtgtgt from scipystats import geom

gtgtgt rv = geom(p)

rvpmf(x) restituisce la probabilita di avere un successo dopoesattamente x insuccessi in una successione di esperimenti dicotomici(esito 01) con una probabilita di successo p (x puo essere un vettore)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 79 88

Variabili aleatorie discrete Poisson

La distribuzione di Poisson viene usata spesso come modello per il numerodi volte per cui un evento avviene in un dato intervallo di tempo (ospazio) Ad esempio si puo utilizzare per misurare il numero di chiamatericevute da un call center in una mattinata

gtgtgt from scipystats import poisson

gtgtgt mu = 2

gtgtgt rv = poisson(mu)

rvpmf(x) restituisce il seguente valore

f (x) = exp(minusmicro)microx

x

In questo caso x rappresenta il numero di eventi per cui si vuole calcolarela probabilita sapendo che in media ne accadono micro

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 80 88

Variabili aleatorie continue Uniforme

In Scipy la funzione uniforme e soltanto continua Questo significa chenella generazione di numeri casuali otterro dati di tipo float Possiamotuttavia simulare una variabile discreta estraendo la parte intera delrisultato ottenuto

gtgtgt from scipystats import uniform

gtgtgt rv = uniform()

Il comando uniform() crea una distribuzione uniforme nellrsquointervallo[01] Possiamo creare una distribuzione uniforme qualsiasi usandouniform(x y - x) per lrsquointervallo [x y]

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 81 88

Variabili aleatorie continue

norm(mu sigma) variabile Gaussiana (o Normale) di media micro edeviazione standard σ

expon(scale = 1 lambda) variabile Esponenziale di parametroλ

Altre distribuzioni (con relativa documentazione) disponibili suhttpsdocsscipyorgdocscipyreferencestatshtml

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 82 88

Esercizi - 1

1 Unrsquourna contiene 10 palline di cui 4 bianche e 6 nere Si eseguono 5estrazioni con reimmissione

1 Tracciare grafico della funzione massa di probabilita della variabilecasuale X = rdquonumero di palline bianche estratterdquo

2 Calcolare la probabilita di estrarre 2 palline bianche3 Calcolare la probabilita di estrarre al piu 2 palline bianche4 Calcolare la probabilita di estrarre almeno 2 palline bianche5 Qual e il numero minimo x tale che la probabilita di estrarre al piu x

palline bianche sia almeno 08

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 83 88

Esercizi - 2

2 Si eseguono 10 estrazioni senza reimmissione da unrsquourna

1 Tracciare il grafico della funzione massa di probabilita della variabilecasuale X = rdquonumero di palline bianche estratterdquo nei seguenti casi

1 lrsquourna contiene 100 palline di cui 20 bianche e le restanti nere2 lrsquourna contiene 100 palline di cui 2 bianche e le restanti nere

2 Tracciare il grafico della funzione massa di probabilita della variabilecasuale X nel caso dellrsquourna 1 se si eseguono 25 estrazioni

3 Consideriamo lrsquourna 1 e N = 10 estrazioni Si aumenti il numero totaleM di palline nellrsquourna mantenendo uguale a 02 la frazione di pallinebianche Per ciascun valore di M confrontare graficamente ladistribuzione di probabilita del numero di palline bianche estratte nelcaso di estrazioni con e senza reimmissione Provare con 20 40 e 200palline bianche

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 84 88

Esercizi - 3

3 Calcolare la probabilita di ottenere piu teste che croci lanciando 7volte una moneta truccata con probabilita di avere croce pari a 045

4 Calcolare la probabilita di avere almeno 3 sei lanciando 5 dadi a 12facce

5 Calcolare la probabilita di estrarre 20 euro da un sacco contenente 47monete da 1 centesimo e 53 da 2 euro estraendo (uniformemente) acaso 10 monete senza reinserirle

6 Un grammo di uranio emette mediamente 2152 particelle α ognimillisecondo Qual e con buona approssimazione la probabilita che ungrammo di uranio emetta al piu 2000 particelle α in un millisecondo

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 85 88

Esercizi - 4

7 Un uomo si risveglia in mezzo al deserto senza acqua Dopo ogniminuto ha una probabilita del 3 di perdere conoscenza per via dellecondizioni estreme Calcolare la probabilita che lrsquouomo perdaconoscenza dopo almeno due ore e la probabilita che lrsquouomo perdaconoscenza dopo esattamente un quarto drsquoora

8 Sia X una variabile aleatoria normale di parametri micro = 10 e σ = 36Calcola

1 P(X gt 5)2 P(4 le X le 16)3 P(X le 8)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 86 88

Esercizi - 5

9 Il numero di errori tipografici per pagina di una certa rivista segue unadistribuzione di Poisson Sapendo che mediamente sono presenti 02errori per pagina determinare la probabilita che una pagina contenga

1 nessun refuso2 piu refusi

10 Arrivi alla fermata dellrsquoautobus alle 1000 e sei certo che ne passerauno in un momento distribuito uniformemente tra le 1000 e le 1030

1 Qual e la probabilita che tu debba aspettare piu di 10 minuti2 Se alle 1015 lrsquoautobus non e ancora arrivato qual e la probabilita che

tu debba aspettare almeno altri 10 minuti

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 87 88

Esercizi - 6

11 Il signor Jones e convinto che il tempo di vita di una automobile (inmigliaia di chilometri percorse) sia una variabile aleatoria esponenzialedi parametro 120 Il signor Smith ha una macchina usata da vendereche ha percorso circa 10 000 chilometri

1 Se il signor Jones decide di comprarla che probabilita ha di farle farealmeno altri 20 000 chilometri prima che sia da buttare

2 Il modello assunto dal signor Jones e ragionevole

12 Sia X una variabile casuale binomiale di parametri n = 100 e p = 07

1 Tracciate la funzione di ripartizione di X2 Calcolate il primo quartile il quantile di ordine 09 e la mediana di X3 Calcolare la probabilita P(X le 60)4 Calcolare la probabilita P(X le 88)5 Trovare il piu piccolo valore x tale che P(X le x) ge 09

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 88 88

  • Lezione 1
    • Script in Python
    • Numpy
    • Esercizi
    • Pandas
    • Esercizi
      • Lezione 2
        • File csv
        • DataFrame
        • Accesso ai DataFrame
        • Frequenze
        • Esercizi
          • Lezione 3
            • Matplotlib
            • Grafici a Barre
            • Istogrammi
            • Cumulativa empirica
            • Boxplot
            • QQplot
            • Diagramma di Pareto
            • Esercizi
              • Lezione 4
                • Definizioni
                • Probabilitagrave condizionata
                • Indipendenza
                • Esercizi
                  • Lezione 5
                    • Variabili Aleatorie
                    • Funzione di Ripartizione
                    • Funzione di Densitagrave
                    • Valore Atteso
                    • Varianza
                    • Covarianza
                    • Esercizi
                      • Lezione 6
                        • Scipy - Variabili Discrete
                        • Scipy - Variabili continue
                        • 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) SAD 20182019 January 12 2019 44 88

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) SAD 20182019 January 12 2019 45 88

Boxplot

Rappresenta la distribuzione di un vettore di numeri cerchiando gli outlier

gtgtgt weight = heroes[rsquoWeightrsquo]

gtgtgt weightplotbox()

gtgtgt pltshow()

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 46 88

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) SAD 20182019 January 12 2019 47 88

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) SAD 20182019 January 12 2019 48 88

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) SAD 20182019 January 12 2019 49 88

Esercizi - 1

Utilizzando il file capellicsv dai csv del laboratorio

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) SAD 20182019 January 12 2019 50 88

Esercizi - 2

Utilizzando il file dati-ospedalicsv dai csv del laboratorio

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 e canipdf

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 51 88

Sample space

Un esperimento e qualsiasi processo che produce una realizzazione (oosservazione) Lrsquoinsieme di tutte le possibili realizzazioni di un esperimentoviene detto sample space ed indicato con S

lancio di 2 monete

S = (T T ) (T C) (C T ) (C C)

gara di 3 cavalli (ab c)

S = tutti i possibili ordinamenti di(ab c)= (ab c) (a cb) (c b a)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 52 88

Eventi

lancio di 2 monete

S = (T T ) (T C) (C T ) (C C)

A = 2 monete uguali

A = (T T ) (C C)

B = 2 monete diverse

B = Ac = (T C) (C T )

gara di 3 cavalli

A = cavallo a vincente

A = (ab c) (a c b)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 53 88

Probabilita - 1

Consideriamo un esperimento con sample space S Supponiamo che adogni evento A sia associato un numero chiamato probabilita di A edindicato con P(A) che soddisfa le seguenti proprieta

1 Per ogni evento A la probabilita di A e un numero tra 0 e 1

0 le P(A) le 1

2 La probabilita del sample space S e 1

P(S) = 1

3 La probabilita dellrsquounione di eventi disgiunti e uguale alla somma delleprobabilita di tali eventi

P(A cupB) = P(A) + P(B)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 54 88

Probabilita - 2

In generale 2 eventi potrebbero non essere disgiunti

P(A cupB) = P(A) + P(B) minus P(A capB)

Esempio un certo negozio accetta pagamenti o con carte di credito VISAo Mastercard

1 22 dei clienti ha Mastercard

2 58 dei clienti ha VISA

3 14 dei clienti ha entrambe

Qual e la probabilita che un cliente ha almeno una delle 2 carte

P(A) = 022 P(B) = 058

P(A cupB) = P(A) + P(B) minus P(A capB) = 022 + 058 minus 014 = 066

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 55 88

Probabilita condizionata - 1

Se alcune informazioni riguardo lrsquoesito di un esperimento sono disponibiliparliamo di probabilita condizionata

Esempio lancio di 2 dadi

S = (11) (12) (65) (66)

Probabilita che la somma sia 10 (evento B) sapendo che il primo dadomostra 4 (evento A)

(41) (42) (43) (44) (45) (46)

P(B ∣A) = 16

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 56 88

Probabilita condizionata - 2

In generale

P(B ∣A) = P(A capB)P(A)

Supponiamo lrsquoesito sia in A

Per essere anche in B deve essere in entrambi A e B cioe in A capB

Sapendo che A e gia accaduto il nostro nuovo sample space diventa A

la probabilita di A capB viene calcolata rispetto ad A

Nel caso dei dadi

P(B ∣A) = P((46))P((41) (42) (43) (44) (45) (46)) = 136

16= 1

6

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 57 88

Indipendenza

In generale sapere che A e accaduto modifica le chance che B accadaNel caso cio non avvenga cioe se P(B ∣A) = P(B) allora i 2 eventi sidicono indipendenti In questo caso sapere che A e accaduto nonaggiunge alcuna informazione

SiccomeP(A capB) = P(B ∣A)P(A)

Abbiamo che B e indipendente da A se

P(A capB) = P(B)P(A)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 58 88

Esercizi - 1

1 Svolgere gli esercizi di combinatoria

2 Si consideri il seguente esperimento casuale rdquosi lancia tre volte unamonetardquo Qual e lo spazio degli esiti di questo esperimento casualeSi scriva esplicitamente lrsquoevento rdquosi ottengono piu teste che crocirdquo

3 Si consideri il seguente esperimento casuale rdquoSi tirano due dadirdquo Siconsiderino gli eventi E = rdquola somma dei punteggi e disparirdquo F = rdquoilprimo dado realizza un 1rdquo e G = rdquola somma dei punteggi e 5rdquo Sidescrivano gli eventi E cap F E cup F F capG E cap F c e E cap F capG

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 59 88

Esercizi - 2

4 Si consideri il seguente esperimento casuale rdquoUn sistema e compostoda 4 componenti ciascuno dei quali o funziona oppure e guasto Siosserva lo stato dei componenti ottenendo un vettore (x1 x2 x3 x4)dove xi e 1 oppure 0 a seconda che il componente i-esimo funzionioppure nordquo

1 Da quanti elementi e formato lo spazio degli esiti2 Il sistema nel suo insieme funziona fintantoche entrambi i componenti

1 e 2 oppure entrambi i componenti 3 e 4 funzionano Specifica tuttigli esiti dellrsquoevento il rdquosistema funzionardquo

3 Sia E lrsquoevento rdquoi componenti 1 e 3 sono guastirdquo Quanti esiti contiene

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 60 88

Esercizi - 3

5 Si dimostri che in uno spazio degli esiti Ω dotato di una probabilita Pper ogni evento E F sub Ω vale la disuguaglianza seguente

P(E cap F ) ge P(E) + P(F ) minus 1

6 Un gruppo di 5 bambini e 10 bambine e in fila in ordine casuale nelsenso che tutte le 15 possibili permutazioni si suppongonoequiprobabili

1 Qual e la probabilita che il quarto della fila sia un bambino2 E il dodicesimo3 Qual e la probabilita che un determinato bambino occupi la terza

posizione

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 61 88

Esercizi - 4

7 In un comune vi sono 5 alberghi Se 3 persone devono scegliere unalbergo in cui pernottare qual e la probabilita che finiscano tutte inalberghi differenti Che cosa stiamo assumendo senza dirloesplicitamente

8 La media del salario annuale di un gruppo di 100 lavoratori impiegatinellrsquoamministrazione di una grande azienda e di 130000 dollari conuna deviazione standard di 20000 dollari Se si prende una persona acaso da questo gruppo cosa possiamo dire sulla probabilita che il suosalario sia

1 tra i 90000 e i 170000 dollari2 superiore a 150000 dollari

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 62 88

Esercizi - 5

9 In una certa regione vi sono due ditte che producono forni amicroonde Quelli della fabbrica A sono difettosi con probabilita 005mentre quelli della fabbrica B con probabilita 001 Supponi di averacquistato due apparecchi prodotti dalla stessa ditta che puo essere laA o la B con probabilita del 50 Se il primo microonde e difettosoqual e la probabilita condizionata che sia difettoso anche il secondo

10 Hai chiesto ad un vicino di innaffiare una piantina delicata mentre seiin vacanza Pensi che senza acqua la piantina muoia con probabilita08 mentre se innaffiata questa probabilita si ridurrebbe a 015 Latua fiducia che il vicino si ricordi di innaffiarla e del 90

1 Qual e la probabilita che la pianta sia ancora viva al tuo ritorno2 Se fosse morta quale sarebbe la probabilita che il vicino si sia

dimenticato di innaffiarla

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 63 88

Esercizi - 6

11 Una compagnia di assicurazioni classifica i suoi clienti in tre fascebasso rischio medio rischio alto rischio Le sue statistiche indicanoche le probabilita che un cliente delle tre fasce abbia un incidenteentro un periodo di un anno sono rispettivamente 005 015 e 030Se il 20 dei clienti sono a basso rischio il 50 a medio rischio e il30 ad alto rischio che percentuale dei clienti avra mediamenteincidenti in un lasso di un anno Se un cliente non ha avuto incidentinel 1987 qual e la probabilita che appartenga a ciascuna delle trefasce

12 Se un votante scelto a caso e favorevole ad una certa riforma conprobabilita di 07 qual e la probabilita che su 10 votanti esattamente7 siano favorevoli

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 64 88

Variabili aleatorie

Una variabile aleatoria (o anche variabile aleatoria) e una variabile chepuo assumere valori diversi in dipendenza da qualche fenomeno aleatorio

fenomeno lancio di 2 dadivariabile aleatoria somma dei 2 dadi

fenomeno 3 lanci di una monetavariabile aleatoria numero di rdquotesterdquo complessivo

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 65 88

Funzione di Ripartizione

Sia X una variabile aleatoria Si chiama funzione di ripartizione di X lafunzione F che associa ad ogni numero reale a la probabilita che X siaminore o uguale ad a cioe P(X le a) = FX (a)

Nel caso della moneta (fair) lanciata 3 volte (X indica il numero di testecomplessivo)

FX (a) =

⎧⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎨⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎩

0 if a lt 0

18 per 0 le a lt 1

18 + 38 = 48 per 1 le a lt 2

48 + 38 = 78 per 2 le a lt 3

88 = 1 per a ge 3

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 66 88

Funzione di densita o di massa

Sia X una variabile aleatoria Si chiama funzione di densita di X lafunzione f che associa ad ogni numero reale a la probabilita che X siauguale ad a indicata con fX (a)

Nel caso della moneta (fair) lanciata 3 volte (X indica il numero di testecomplessivo)

fX (a) =

⎧⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎨⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎩

18 per a = 0

38 per a = 1

38 per a = 2

18 per a = 3

0 altrimenti

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 67 88

Valore Atteso

Chiamato anche media (expectation in inglese) e appunto una mediapesata dei possibili valori di una variabile aleatoria Il peso dato a ciascunvalore e la probabilita data a quello specifico valore

E[X ] =sumi

aiP(X = ai)

Esempio dado truccato

valore 6 con probabilita 712

valori da 1 a 5 con probabilita 112

La variabile aleatoria X indica la faccia risultante dal lancio di un dado

E[X ] = 1

12lowast 1 + 1

12lowast 2 + 1

12lowast 3 + 1

12lowast 4 + 1

12lowast 5 + 7

12lowast 6 = 475

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 68 88

Valore Atteso - Proprieta

Sia X una variabile aleatoria con valore atteso E[X ] Se c e una costanteallora anche cX e X + c sono variabili casuali In particolare valgono leseguenti proprieta

E[cX ] = cE[X ]E[X + c] = E[X ] + c

Sia Y una variabile aleatoria Allora

E[X +Y ] = E[X ] +E[Y ]se e solo se X e Y sono independenti

E[XY ] = E[X ]E[Y ]

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 69 88

Varianza

Ersquo il valore atteso del quadrato della differenza tra la variabile aleatoria e ilsuo valore atteso

Var(X ) = E[(X minusE[X ])2] = E[X 2] minus (E[X ])2

La radice quadrata viene detta deviazione standard di X

Esempio dado truccato

E[X 2] = 1

12lowast 12 + 1

12lowast 22 + 1

12lowast 32 + 1

12lowast 42 + 1

12lowast 52 + 7

12lowast 62 ≃ 255

Var(X ) = E[X 2] minus (E[X ])2 ≃ 255 minus 4752 ≃ 3

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 70 88

Varianza - proprieta

Sia X una variabile aleatoria e c una costante Allora valgono le seguentiproprieta

1 Var(cX ) = c2Var(X )

2 Var(X + c) = Var(X )

NOTA

Var(X +X ) ne Var(X ) +Var(X )

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 71 88

Covarianza

Siano X Y due variabili aleatorie con valore atteso rispettivamenteE[X ] = microX e E[Y ] = microY La covarianza e definita come segue

Cov(X Y ) = E[(X minus microX )(Y minus microY )] = = E[XY ] minus microXmicroY

Proprieta

1 Cov(X Y ) = Cov(Y X )2 Cov(X X ) = Var(X )3 Sia a una costante allora

Cov(aX Y ) = aCov(X Y )

4 Sia Z una variabile aleatoria allora

Cov(X + Z Y ) = Cov(X Y ) + Cov(Z Y )

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 72 88

Esercizi - 1

1 Consideriamo una variabile aleatoria X che puo assumere i valori 12o 3 Se sappiamo che

fX (1) = 1

3 fX (2) = 3

7

1 Quanto vale fX (3)2 Disegnare il grafico di questa funzione di massa3 Disegnare il grafico della relativa funzione di ripartizione

2 Dimostrare che se X1 e X2 hanno la stessa distribuzione allora

Cov(X1 +X2X1 minusX2) = 0

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 73 88

Esercizi - 2

3 La funzione di ripartizione di X e definita come segue

FX (x) =

⎧⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎨⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎩

0 per x le 0

x2 per 0 le x lt 1

23 per 1 le x lt 2

1112 per 2 le x lt 3

1 per x ge 3

Se ne tracci il graficoQuanto vale P(X gt 12)Quanto vale P(2 le X le 4)Quanto vale P(X le 3)Quanto vale P(X = 1)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 74 88

Esercizi - 3

4 Un tipo di prodotti vengono classificati a seconda dei loro difetti edella fabbrica che li ha prodotti Sia X1 il numero (1 o 2) dellafabbrica e sia X2 il numero di difetti per pezzo (che possono essere da0 a 3) di un prodotto scelto a caso tra la totalita di quelli esistentiLa tabella seguente riporta la funzione di massa di probabilitacongiunta per queste due variabili aleatorie discrete Le righe siriferiscono alla variabile X1 mentre le colonne alla variabile X2

Trova le distribuzioni marginali di X1 e X2Calcola media e varianza di X2

0 1 2 31 18 116 316 182 116 116 18 14

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 75 88

Scipy

Scipy e un modulo che permette di utilizzare varie distribuzioni diprobabilita sia di tipo discreto che continuo

La sintassi generale e la seguente Scipystatsltnome distribuzionegt

rvs(size=z) restituisce un vettore di numeri casuali estrattisecondo la distribuzione di lunghezza z

pdf(x) restituisce il vettore della densita della distribuzionevalutata nei valori del vettore di input x (pmf per le discrete)

cdf(x) restituisce il vettore della funzione di ripartizione (ocumulativa) della distribuzione valutata nei valori del vettore di inputx

ppf(q) restituisce il vettore dei quantili della distribuzione valutatanei valori del vettore di input q

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 76 88

Variabili aleatorie discrete Binomiale

gtgtgt from scipystats import binom

gtgtgt rv = binom(n p)

rvrvs(x) restituisce un vettore di x numeri estratti secondo unadistribuzione Binomiale di parametri n p

rvpmf(x) restituisce la probabilita di ottenere esattamente x

successi in un esperimento dicotomico (01) ripetuto n volte con unaprobabilita di successo p (x puo essere un vettore)

rvcdf(q) restituisce il valore della funzione di ripartizione in q (qpuo essere un vettore)

rvppf(p) restituisce il valore del quantile di ordine p

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 77 88

Variabili aleatorie discrete Ipergeometrica

Supponiamo di avere M = 20 animali di cui n = 7 cani Se vogliamosapere la probabilita di trovare un dato numero di cani se scegliamoN = 12 dei 20 animali in maniera casuale possiamo usare una distribuzioneipergeometrica in questo modo

gtgtgt from scipystats import hypergeom

gtgtgt [M n N] = [20 7 12]

gtgtgt rv = hypergeom(M n N)

rvpmf(x) restituisce la probabilita di estrarre esattamente x cani

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 78 88

Variabili aleatorie discrete Geometrica

gtgtgt from scipystats import geom

gtgtgt rv = geom(p)

rvpmf(x) restituisce la probabilita di avere un successo dopoesattamente x insuccessi in una successione di esperimenti dicotomici(esito 01) con una probabilita di successo p (x puo essere un vettore)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 79 88

Variabili aleatorie discrete Poisson

La distribuzione di Poisson viene usata spesso come modello per il numerodi volte per cui un evento avviene in un dato intervallo di tempo (ospazio) Ad esempio si puo utilizzare per misurare il numero di chiamatericevute da un call center in una mattinata

gtgtgt from scipystats import poisson

gtgtgt mu = 2

gtgtgt rv = poisson(mu)

rvpmf(x) restituisce il seguente valore

f (x) = exp(minusmicro)microx

x

In questo caso x rappresenta il numero di eventi per cui si vuole calcolarela probabilita sapendo che in media ne accadono micro

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 80 88

Variabili aleatorie continue Uniforme

In Scipy la funzione uniforme e soltanto continua Questo significa chenella generazione di numeri casuali otterro dati di tipo float Possiamotuttavia simulare una variabile discreta estraendo la parte intera delrisultato ottenuto

gtgtgt from scipystats import uniform

gtgtgt rv = uniform()

Il comando uniform() crea una distribuzione uniforme nellrsquointervallo[01] Possiamo creare una distribuzione uniforme qualsiasi usandouniform(x y - x) per lrsquointervallo [x y]

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 81 88

Variabili aleatorie continue

norm(mu sigma) variabile Gaussiana (o Normale) di media micro edeviazione standard σ

expon(scale = 1 lambda) variabile Esponenziale di parametroλ

Altre distribuzioni (con relativa documentazione) disponibili suhttpsdocsscipyorgdocscipyreferencestatshtml

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 82 88

Esercizi - 1

1 Unrsquourna contiene 10 palline di cui 4 bianche e 6 nere Si eseguono 5estrazioni con reimmissione

1 Tracciare grafico della funzione massa di probabilita della variabilecasuale X = rdquonumero di palline bianche estratterdquo

2 Calcolare la probabilita di estrarre 2 palline bianche3 Calcolare la probabilita di estrarre al piu 2 palline bianche4 Calcolare la probabilita di estrarre almeno 2 palline bianche5 Qual e il numero minimo x tale che la probabilita di estrarre al piu x

palline bianche sia almeno 08

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 83 88

Esercizi - 2

2 Si eseguono 10 estrazioni senza reimmissione da unrsquourna

1 Tracciare il grafico della funzione massa di probabilita della variabilecasuale X = rdquonumero di palline bianche estratterdquo nei seguenti casi

1 lrsquourna contiene 100 palline di cui 20 bianche e le restanti nere2 lrsquourna contiene 100 palline di cui 2 bianche e le restanti nere

2 Tracciare il grafico della funzione massa di probabilita della variabilecasuale X nel caso dellrsquourna 1 se si eseguono 25 estrazioni

3 Consideriamo lrsquourna 1 e N = 10 estrazioni Si aumenti il numero totaleM di palline nellrsquourna mantenendo uguale a 02 la frazione di pallinebianche Per ciascun valore di M confrontare graficamente ladistribuzione di probabilita del numero di palline bianche estratte nelcaso di estrazioni con e senza reimmissione Provare con 20 40 e 200palline bianche

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 84 88

Esercizi - 3

3 Calcolare la probabilita di ottenere piu teste che croci lanciando 7volte una moneta truccata con probabilita di avere croce pari a 045

4 Calcolare la probabilita di avere almeno 3 sei lanciando 5 dadi a 12facce

5 Calcolare la probabilita di estrarre 20 euro da un sacco contenente 47monete da 1 centesimo e 53 da 2 euro estraendo (uniformemente) acaso 10 monete senza reinserirle

6 Un grammo di uranio emette mediamente 2152 particelle α ognimillisecondo Qual e con buona approssimazione la probabilita che ungrammo di uranio emetta al piu 2000 particelle α in un millisecondo

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 85 88

Esercizi - 4

7 Un uomo si risveglia in mezzo al deserto senza acqua Dopo ogniminuto ha una probabilita del 3 di perdere conoscenza per via dellecondizioni estreme Calcolare la probabilita che lrsquouomo perdaconoscenza dopo almeno due ore e la probabilita che lrsquouomo perdaconoscenza dopo esattamente un quarto drsquoora

8 Sia X una variabile aleatoria normale di parametri micro = 10 e σ = 36Calcola

1 P(X gt 5)2 P(4 le X le 16)3 P(X le 8)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 86 88

Esercizi - 5

9 Il numero di errori tipografici per pagina di una certa rivista segue unadistribuzione di Poisson Sapendo che mediamente sono presenti 02errori per pagina determinare la probabilita che una pagina contenga

1 nessun refuso2 piu refusi

10 Arrivi alla fermata dellrsquoautobus alle 1000 e sei certo che ne passerauno in un momento distribuito uniformemente tra le 1000 e le 1030

1 Qual e la probabilita che tu debba aspettare piu di 10 minuti2 Se alle 1015 lrsquoautobus non e ancora arrivato qual e la probabilita che

tu debba aspettare almeno altri 10 minuti

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 87 88

Esercizi - 6

11 Il signor Jones e convinto che il tempo di vita di una automobile (inmigliaia di chilometri percorse) sia una variabile aleatoria esponenzialedi parametro 120 Il signor Smith ha una macchina usata da vendereche ha percorso circa 10 000 chilometri

1 Se il signor Jones decide di comprarla che probabilita ha di farle farealmeno altri 20 000 chilometri prima che sia da buttare

2 Il modello assunto dal signor Jones e ragionevole

12 Sia X una variabile casuale binomiale di parametri n = 100 e p = 07

1 Tracciate la funzione di ripartizione di X2 Calcolate il primo quartile il quantile di ordine 09 e la mediana di X3 Calcolare la probabilita P(X le 60)4 Calcolare la probabilita P(X le 88)5 Trovare il piu piccolo valore x tale che P(X le x) ge 09

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 88 88

  • Lezione 1
    • Script in Python
    • Numpy
    • Esercizi
    • Pandas
    • Esercizi
      • Lezione 2
        • File csv
        • DataFrame
        • Accesso ai DataFrame
        • Frequenze
        • Esercizi
          • Lezione 3
            • Matplotlib
            • Grafici a Barre
            • Istogrammi
            • Cumulativa empirica
            • Boxplot
            • QQplot
            • Diagramma di Pareto
            • Esercizi
              • Lezione 4
                • Definizioni
                • Probabilitagrave condizionata
                • Indipendenza
                • Esercizi
                  • Lezione 5
                    • Variabili Aleatorie
                    • Funzione di Ripartizione
                    • Funzione di Densitagrave
                    • Valore Atteso
                    • Varianza
                    • Covarianza
                    • Esercizi
                      • Lezione 6
                        • Scipy - Variabili Discrete
                        • Scipy - Variabili continue
                        • 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) SAD 20182019 January 12 2019 45 88

Boxplot

Rappresenta la distribuzione di un vettore di numeri cerchiando gli outlier

gtgtgt weight = heroes[rsquoWeightrsquo]

gtgtgt weightplotbox()

gtgtgt pltshow()

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 46 88

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) SAD 20182019 January 12 2019 47 88

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) SAD 20182019 January 12 2019 48 88

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) SAD 20182019 January 12 2019 49 88

Esercizi - 1

Utilizzando il file capellicsv dai csv del laboratorio

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) SAD 20182019 January 12 2019 50 88

Esercizi - 2

Utilizzando il file dati-ospedalicsv dai csv del laboratorio

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 e canipdf

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 51 88

Sample space

Un esperimento e qualsiasi processo che produce una realizzazione (oosservazione) Lrsquoinsieme di tutte le possibili realizzazioni di un esperimentoviene detto sample space ed indicato con S

lancio di 2 monete

S = (T T ) (T C) (C T ) (C C)

gara di 3 cavalli (ab c)

S = tutti i possibili ordinamenti di(ab c)= (ab c) (a cb) (c b a)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 52 88

Eventi

lancio di 2 monete

S = (T T ) (T C) (C T ) (C C)

A = 2 monete uguali

A = (T T ) (C C)

B = 2 monete diverse

B = Ac = (T C) (C T )

gara di 3 cavalli

A = cavallo a vincente

A = (ab c) (a c b)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 53 88

Probabilita - 1

Consideriamo un esperimento con sample space S Supponiamo che adogni evento A sia associato un numero chiamato probabilita di A edindicato con P(A) che soddisfa le seguenti proprieta

1 Per ogni evento A la probabilita di A e un numero tra 0 e 1

0 le P(A) le 1

2 La probabilita del sample space S e 1

P(S) = 1

3 La probabilita dellrsquounione di eventi disgiunti e uguale alla somma delleprobabilita di tali eventi

P(A cupB) = P(A) + P(B)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 54 88

Probabilita - 2

In generale 2 eventi potrebbero non essere disgiunti

P(A cupB) = P(A) + P(B) minus P(A capB)

Esempio un certo negozio accetta pagamenti o con carte di credito VISAo Mastercard

1 22 dei clienti ha Mastercard

2 58 dei clienti ha VISA

3 14 dei clienti ha entrambe

Qual e la probabilita che un cliente ha almeno una delle 2 carte

P(A) = 022 P(B) = 058

P(A cupB) = P(A) + P(B) minus P(A capB) = 022 + 058 minus 014 = 066

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 55 88

Probabilita condizionata - 1

Se alcune informazioni riguardo lrsquoesito di un esperimento sono disponibiliparliamo di probabilita condizionata

Esempio lancio di 2 dadi

S = (11) (12) (65) (66)

Probabilita che la somma sia 10 (evento B) sapendo che il primo dadomostra 4 (evento A)

(41) (42) (43) (44) (45) (46)

P(B ∣A) = 16

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 56 88

Probabilita condizionata - 2

In generale

P(B ∣A) = P(A capB)P(A)

Supponiamo lrsquoesito sia in A

Per essere anche in B deve essere in entrambi A e B cioe in A capB

Sapendo che A e gia accaduto il nostro nuovo sample space diventa A

la probabilita di A capB viene calcolata rispetto ad A

Nel caso dei dadi

P(B ∣A) = P((46))P((41) (42) (43) (44) (45) (46)) = 136

16= 1

6

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 57 88

Indipendenza

In generale sapere che A e accaduto modifica le chance che B accadaNel caso cio non avvenga cioe se P(B ∣A) = P(B) allora i 2 eventi sidicono indipendenti In questo caso sapere che A e accaduto nonaggiunge alcuna informazione

SiccomeP(A capB) = P(B ∣A)P(A)

Abbiamo che B e indipendente da A se

P(A capB) = P(B)P(A)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 58 88

Esercizi - 1

1 Svolgere gli esercizi di combinatoria

2 Si consideri il seguente esperimento casuale rdquosi lancia tre volte unamonetardquo Qual e lo spazio degli esiti di questo esperimento casualeSi scriva esplicitamente lrsquoevento rdquosi ottengono piu teste che crocirdquo

3 Si consideri il seguente esperimento casuale rdquoSi tirano due dadirdquo Siconsiderino gli eventi E = rdquola somma dei punteggi e disparirdquo F = rdquoilprimo dado realizza un 1rdquo e G = rdquola somma dei punteggi e 5rdquo Sidescrivano gli eventi E cap F E cup F F capG E cap F c e E cap F capG

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 59 88

Esercizi - 2

4 Si consideri il seguente esperimento casuale rdquoUn sistema e compostoda 4 componenti ciascuno dei quali o funziona oppure e guasto Siosserva lo stato dei componenti ottenendo un vettore (x1 x2 x3 x4)dove xi e 1 oppure 0 a seconda che il componente i-esimo funzionioppure nordquo

1 Da quanti elementi e formato lo spazio degli esiti2 Il sistema nel suo insieme funziona fintantoche entrambi i componenti

1 e 2 oppure entrambi i componenti 3 e 4 funzionano Specifica tuttigli esiti dellrsquoevento il rdquosistema funzionardquo

3 Sia E lrsquoevento rdquoi componenti 1 e 3 sono guastirdquo Quanti esiti contiene

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 60 88

Esercizi - 3

5 Si dimostri che in uno spazio degli esiti Ω dotato di una probabilita Pper ogni evento E F sub Ω vale la disuguaglianza seguente

P(E cap F ) ge P(E) + P(F ) minus 1

6 Un gruppo di 5 bambini e 10 bambine e in fila in ordine casuale nelsenso che tutte le 15 possibili permutazioni si suppongonoequiprobabili

1 Qual e la probabilita che il quarto della fila sia un bambino2 E il dodicesimo3 Qual e la probabilita che un determinato bambino occupi la terza

posizione

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 61 88

Esercizi - 4

7 In un comune vi sono 5 alberghi Se 3 persone devono scegliere unalbergo in cui pernottare qual e la probabilita che finiscano tutte inalberghi differenti Che cosa stiamo assumendo senza dirloesplicitamente

8 La media del salario annuale di un gruppo di 100 lavoratori impiegatinellrsquoamministrazione di una grande azienda e di 130000 dollari conuna deviazione standard di 20000 dollari Se si prende una persona acaso da questo gruppo cosa possiamo dire sulla probabilita che il suosalario sia

1 tra i 90000 e i 170000 dollari2 superiore a 150000 dollari

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 62 88

Esercizi - 5

9 In una certa regione vi sono due ditte che producono forni amicroonde Quelli della fabbrica A sono difettosi con probabilita 005mentre quelli della fabbrica B con probabilita 001 Supponi di averacquistato due apparecchi prodotti dalla stessa ditta che puo essere laA o la B con probabilita del 50 Se il primo microonde e difettosoqual e la probabilita condizionata che sia difettoso anche il secondo

10 Hai chiesto ad un vicino di innaffiare una piantina delicata mentre seiin vacanza Pensi che senza acqua la piantina muoia con probabilita08 mentre se innaffiata questa probabilita si ridurrebbe a 015 Latua fiducia che il vicino si ricordi di innaffiarla e del 90

1 Qual e la probabilita che la pianta sia ancora viva al tuo ritorno2 Se fosse morta quale sarebbe la probabilita che il vicino si sia

dimenticato di innaffiarla

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 63 88

Esercizi - 6

11 Una compagnia di assicurazioni classifica i suoi clienti in tre fascebasso rischio medio rischio alto rischio Le sue statistiche indicanoche le probabilita che un cliente delle tre fasce abbia un incidenteentro un periodo di un anno sono rispettivamente 005 015 e 030Se il 20 dei clienti sono a basso rischio il 50 a medio rischio e il30 ad alto rischio che percentuale dei clienti avra mediamenteincidenti in un lasso di un anno Se un cliente non ha avuto incidentinel 1987 qual e la probabilita che appartenga a ciascuna delle trefasce

12 Se un votante scelto a caso e favorevole ad una certa riforma conprobabilita di 07 qual e la probabilita che su 10 votanti esattamente7 siano favorevoli

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 64 88

Variabili aleatorie

Una variabile aleatoria (o anche variabile aleatoria) e una variabile chepuo assumere valori diversi in dipendenza da qualche fenomeno aleatorio

fenomeno lancio di 2 dadivariabile aleatoria somma dei 2 dadi

fenomeno 3 lanci di una monetavariabile aleatoria numero di rdquotesterdquo complessivo

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 65 88

Funzione di Ripartizione

Sia X una variabile aleatoria Si chiama funzione di ripartizione di X lafunzione F che associa ad ogni numero reale a la probabilita che X siaminore o uguale ad a cioe P(X le a) = FX (a)

Nel caso della moneta (fair) lanciata 3 volte (X indica il numero di testecomplessivo)

FX (a) =

⎧⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎨⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎩

0 if a lt 0

18 per 0 le a lt 1

18 + 38 = 48 per 1 le a lt 2

48 + 38 = 78 per 2 le a lt 3

88 = 1 per a ge 3

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 66 88

Funzione di densita o di massa

Sia X una variabile aleatoria Si chiama funzione di densita di X lafunzione f che associa ad ogni numero reale a la probabilita che X siauguale ad a indicata con fX (a)

Nel caso della moneta (fair) lanciata 3 volte (X indica il numero di testecomplessivo)

fX (a) =

⎧⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎨⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎩

18 per a = 0

38 per a = 1

38 per a = 2

18 per a = 3

0 altrimenti

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 67 88

Valore Atteso

Chiamato anche media (expectation in inglese) e appunto una mediapesata dei possibili valori di una variabile aleatoria Il peso dato a ciascunvalore e la probabilita data a quello specifico valore

E[X ] =sumi

aiP(X = ai)

Esempio dado truccato

valore 6 con probabilita 712

valori da 1 a 5 con probabilita 112

La variabile aleatoria X indica la faccia risultante dal lancio di un dado

E[X ] = 1

12lowast 1 + 1

12lowast 2 + 1

12lowast 3 + 1

12lowast 4 + 1

12lowast 5 + 7

12lowast 6 = 475

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 68 88

Valore Atteso - Proprieta

Sia X una variabile aleatoria con valore atteso E[X ] Se c e una costanteallora anche cX e X + c sono variabili casuali In particolare valgono leseguenti proprieta

E[cX ] = cE[X ]E[X + c] = E[X ] + c

Sia Y una variabile aleatoria Allora

E[X +Y ] = E[X ] +E[Y ]se e solo se X e Y sono independenti

E[XY ] = E[X ]E[Y ]

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 69 88

Varianza

Ersquo il valore atteso del quadrato della differenza tra la variabile aleatoria e ilsuo valore atteso

Var(X ) = E[(X minusE[X ])2] = E[X 2] minus (E[X ])2

La radice quadrata viene detta deviazione standard di X

Esempio dado truccato

E[X 2] = 1

12lowast 12 + 1

12lowast 22 + 1

12lowast 32 + 1

12lowast 42 + 1

12lowast 52 + 7

12lowast 62 ≃ 255

Var(X ) = E[X 2] minus (E[X ])2 ≃ 255 minus 4752 ≃ 3

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 70 88

Varianza - proprieta

Sia X una variabile aleatoria e c una costante Allora valgono le seguentiproprieta

1 Var(cX ) = c2Var(X )

2 Var(X + c) = Var(X )

NOTA

Var(X +X ) ne Var(X ) +Var(X )

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 71 88

Covarianza

Siano X Y due variabili aleatorie con valore atteso rispettivamenteE[X ] = microX e E[Y ] = microY La covarianza e definita come segue

Cov(X Y ) = E[(X minus microX )(Y minus microY )] = = E[XY ] minus microXmicroY

Proprieta

1 Cov(X Y ) = Cov(Y X )2 Cov(X X ) = Var(X )3 Sia a una costante allora

Cov(aX Y ) = aCov(X Y )

4 Sia Z una variabile aleatoria allora

Cov(X + Z Y ) = Cov(X Y ) + Cov(Z Y )

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 72 88

Esercizi - 1

1 Consideriamo una variabile aleatoria X che puo assumere i valori 12o 3 Se sappiamo che

fX (1) = 1

3 fX (2) = 3

7

1 Quanto vale fX (3)2 Disegnare il grafico di questa funzione di massa3 Disegnare il grafico della relativa funzione di ripartizione

2 Dimostrare che se X1 e X2 hanno la stessa distribuzione allora

Cov(X1 +X2X1 minusX2) = 0

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 73 88

Esercizi - 2

3 La funzione di ripartizione di X e definita come segue

FX (x) =

⎧⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎨⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎩

0 per x le 0

x2 per 0 le x lt 1

23 per 1 le x lt 2

1112 per 2 le x lt 3

1 per x ge 3

Se ne tracci il graficoQuanto vale P(X gt 12)Quanto vale P(2 le X le 4)Quanto vale P(X le 3)Quanto vale P(X = 1)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 74 88

Esercizi - 3

4 Un tipo di prodotti vengono classificati a seconda dei loro difetti edella fabbrica che li ha prodotti Sia X1 il numero (1 o 2) dellafabbrica e sia X2 il numero di difetti per pezzo (che possono essere da0 a 3) di un prodotto scelto a caso tra la totalita di quelli esistentiLa tabella seguente riporta la funzione di massa di probabilitacongiunta per queste due variabili aleatorie discrete Le righe siriferiscono alla variabile X1 mentre le colonne alla variabile X2

Trova le distribuzioni marginali di X1 e X2Calcola media e varianza di X2

0 1 2 31 18 116 316 182 116 116 18 14

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 75 88

Scipy

Scipy e un modulo che permette di utilizzare varie distribuzioni diprobabilita sia di tipo discreto che continuo

La sintassi generale e la seguente Scipystatsltnome distribuzionegt

rvs(size=z) restituisce un vettore di numeri casuali estrattisecondo la distribuzione di lunghezza z

pdf(x) restituisce il vettore della densita della distribuzionevalutata nei valori del vettore di input x (pmf per le discrete)

cdf(x) restituisce il vettore della funzione di ripartizione (ocumulativa) della distribuzione valutata nei valori del vettore di inputx

ppf(q) restituisce il vettore dei quantili della distribuzione valutatanei valori del vettore di input q

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 76 88

Variabili aleatorie discrete Binomiale

gtgtgt from scipystats import binom

gtgtgt rv = binom(n p)

rvrvs(x) restituisce un vettore di x numeri estratti secondo unadistribuzione Binomiale di parametri n p

rvpmf(x) restituisce la probabilita di ottenere esattamente x

successi in un esperimento dicotomico (01) ripetuto n volte con unaprobabilita di successo p (x puo essere un vettore)

rvcdf(q) restituisce il valore della funzione di ripartizione in q (qpuo essere un vettore)

rvppf(p) restituisce il valore del quantile di ordine p

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 77 88

Variabili aleatorie discrete Ipergeometrica

Supponiamo di avere M = 20 animali di cui n = 7 cani Se vogliamosapere la probabilita di trovare un dato numero di cani se scegliamoN = 12 dei 20 animali in maniera casuale possiamo usare una distribuzioneipergeometrica in questo modo

gtgtgt from scipystats import hypergeom

gtgtgt [M n N] = [20 7 12]

gtgtgt rv = hypergeom(M n N)

rvpmf(x) restituisce la probabilita di estrarre esattamente x cani

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 78 88

Variabili aleatorie discrete Geometrica

gtgtgt from scipystats import geom

gtgtgt rv = geom(p)

rvpmf(x) restituisce la probabilita di avere un successo dopoesattamente x insuccessi in una successione di esperimenti dicotomici(esito 01) con una probabilita di successo p (x puo essere un vettore)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 79 88

Variabili aleatorie discrete Poisson

La distribuzione di Poisson viene usata spesso come modello per il numerodi volte per cui un evento avviene in un dato intervallo di tempo (ospazio) Ad esempio si puo utilizzare per misurare il numero di chiamatericevute da un call center in una mattinata

gtgtgt from scipystats import poisson

gtgtgt mu = 2

gtgtgt rv = poisson(mu)

rvpmf(x) restituisce il seguente valore

f (x) = exp(minusmicro)microx

x

In questo caso x rappresenta il numero di eventi per cui si vuole calcolarela probabilita sapendo che in media ne accadono micro

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 80 88

Variabili aleatorie continue Uniforme

In Scipy la funzione uniforme e soltanto continua Questo significa chenella generazione di numeri casuali otterro dati di tipo float Possiamotuttavia simulare una variabile discreta estraendo la parte intera delrisultato ottenuto

gtgtgt from scipystats import uniform

gtgtgt rv = uniform()

Il comando uniform() crea una distribuzione uniforme nellrsquointervallo[01] Possiamo creare una distribuzione uniforme qualsiasi usandouniform(x y - x) per lrsquointervallo [x y]

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 81 88

Variabili aleatorie continue

norm(mu sigma) variabile Gaussiana (o Normale) di media micro edeviazione standard σ

expon(scale = 1 lambda) variabile Esponenziale di parametroλ

Altre distribuzioni (con relativa documentazione) disponibili suhttpsdocsscipyorgdocscipyreferencestatshtml

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 82 88

Esercizi - 1

1 Unrsquourna contiene 10 palline di cui 4 bianche e 6 nere Si eseguono 5estrazioni con reimmissione

1 Tracciare grafico della funzione massa di probabilita della variabilecasuale X = rdquonumero di palline bianche estratterdquo

2 Calcolare la probabilita di estrarre 2 palline bianche3 Calcolare la probabilita di estrarre al piu 2 palline bianche4 Calcolare la probabilita di estrarre almeno 2 palline bianche5 Qual e il numero minimo x tale che la probabilita di estrarre al piu x

palline bianche sia almeno 08

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 83 88

Esercizi - 2

2 Si eseguono 10 estrazioni senza reimmissione da unrsquourna

1 Tracciare il grafico della funzione massa di probabilita della variabilecasuale X = rdquonumero di palline bianche estratterdquo nei seguenti casi

1 lrsquourna contiene 100 palline di cui 20 bianche e le restanti nere2 lrsquourna contiene 100 palline di cui 2 bianche e le restanti nere

2 Tracciare il grafico della funzione massa di probabilita della variabilecasuale X nel caso dellrsquourna 1 se si eseguono 25 estrazioni

3 Consideriamo lrsquourna 1 e N = 10 estrazioni Si aumenti il numero totaleM di palline nellrsquourna mantenendo uguale a 02 la frazione di pallinebianche Per ciascun valore di M confrontare graficamente ladistribuzione di probabilita del numero di palline bianche estratte nelcaso di estrazioni con e senza reimmissione Provare con 20 40 e 200palline bianche

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 84 88

Esercizi - 3

3 Calcolare la probabilita di ottenere piu teste che croci lanciando 7volte una moneta truccata con probabilita di avere croce pari a 045

4 Calcolare la probabilita di avere almeno 3 sei lanciando 5 dadi a 12facce

5 Calcolare la probabilita di estrarre 20 euro da un sacco contenente 47monete da 1 centesimo e 53 da 2 euro estraendo (uniformemente) acaso 10 monete senza reinserirle

6 Un grammo di uranio emette mediamente 2152 particelle α ognimillisecondo Qual e con buona approssimazione la probabilita che ungrammo di uranio emetta al piu 2000 particelle α in un millisecondo

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 85 88

Esercizi - 4

7 Un uomo si risveglia in mezzo al deserto senza acqua Dopo ogniminuto ha una probabilita del 3 di perdere conoscenza per via dellecondizioni estreme Calcolare la probabilita che lrsquouomo perdaconoscenza dopo almeno due ore e la probabilita che lrsquouomo perdaconoscenza dopo esattamente un quarto drsquoora

8 Sia X una variabile aleatoria normale di parametri micro = 10 e σ = 36Calcola

1 P(X gt 5)2 P(4 le X le 16)3 P(X le 8)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 86 88

Esercizi - 5

9 Il numero di errori tipografici per pagina di una certa rivista segue unadistribuzione di Poisson Sapendo che mediamente sono presenti 02errori per pagina determinare la probabilita che una pagina contenga

1 nessun refuso2 piu refusi

10 Arrivi alla fermata dellrsquoautobus alle 1000 e sei certo che ne passerauno in un momento distribuito uniformemente tra le 1000 e le 1030

1 Qual e la probabilita che tu debba aspettare piu di 10 minuti2 Se alle 1015 lrsquoautobus non e ancora arrivato qual e la probabilita che

tu debba aspettare almeno altri 10 minuti

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 87 88

Esercizi - 6

11 Il signor Jones e convinto che il tempo di vita di una automobile (inmigliaia di chilometri percorse) sia una variabile aleatoria esponenzialedi parametro 120 Il signor Smith ha una macchina usata da vendereche ha percorso circa 10 000 chilometri

1 Se il signor Jones decide di comprarla che probabilita ha di farle farealmeno altri 20 000 chilometri prima che sia da buttare

2 Il modello assunto dal signor Jones e ragionevole

12 Sia X una variabile casuale binomiale di parametri n = 100 e p = 07

1 Tracciate la funzione di ripartizione di X2 Calcolate il primo quartile il quantile di ordine 09 e la mediana di X3 Calcolare la probabilita P(X le 60)4 Calcolare la probabilita P(X le 88)5 Trovare il piu piccolo valore x tale che P(X le x) ge 09

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 88 88

  • Lezione 1
    • Script in Python
    • Numpy
    • Esercizi
    • Pandas
    • Esercizi
      • Lezione 2
        • File csv
        • DataFrame
        • Accesso ai DataFrame
        • Frequenze
        • Esercizi
          • Lezione 3
            • Matplotlib
            • Grafici a Barre
            • Istogrammi
            • Cumulativa empirica
            • Boxplot
            • QQplot
            • Diagramma di Pareto
            • Esercizi
              • Lezione 4
                • Definizioni
                • Probabilitagrave condizionata
                • Indipendenza
                • Esercizi
                  • Lezione 5
                    • Variabili Aleatorie
                    • Funzione di Ripartizione
                    • Funzione di Densitagrave
                    • Valore Atteso
                    • Varianza
                    • Covarianza
                    • Esercizi
                      • Lezione 6
                        • Scipy - Variabili Discrete
                        • Scipy - Variabili continue
                        • Esercizi

Boxplot

Rappresenta la distribuzione di un vettore di numeri cerchiando gli outlier

gtgtgt weight = heroes[rsquoWeightrsquo]

gtgtgt weightplotbox()

gtgtgt pltshow()

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 46 88

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) SAD 20182019 January 12 2019 47 88

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) SAD 20182019 January 12 2019 48 88

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) SAD 20182019 January 12 2019 49 88

Esercizi - 1

Utilizzando il file capellicsv dai csv del laboratorio

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) SAD 20182019 January 12 2019 50 88

Esercizi - 2

Utilizzando il file dati-ospedalicsv dai csv del laboratorio

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 e canipdf

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 51 88

Sample space

Un esperimento e qualsiasi processo che produce una realizzazione (oosservazione) Lrsquoinsieme di tutte le possibili realizzazioni di un esperimentoviene detto sample space ed indicato con S

lancio di 2 monete

S = (T T ) (T C) (C T ) (C C)

gara di 3 cavalli (ab c)

S = tutti i possibili ordinamenti di(ab c)= (ab c) (a cb) (c b a)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 52 88

Eventi

lancio di 2 monete

S = (T T ) (T C) (C T ) (C C)

A = 2 monete uguali

A = (T T ) (C C)

B = 2 monete diverse

B = Ac = (T C) (C T )

gara di 3 cavalli

A = cavallo a vincente

A = (ab c) (a c b)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 53 88

Probabilita - 1

Consideriamo un esperimento con sample space S Supponiamo che adogni evento A sia associato un numero chiamato probabilita di A edindicato con P(A) che soddisfa le seguenti proprieta

1 Per ogni evento A la probabilita di A e un numero tra 0 e 1

0 le P(A) le 1

2 La probabilita del sample space S e 1

P(S) = 1

3 La probabilita dellrsquounione di eventi disgiunti e uguale alla somma delleprobabilita di tali eventi

P(A cupB) = P(A) + P(B)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 54 88

Probabilita - 2

In generale 2 eventi potrebbero non essere disgiunti

P(A cupB) = P(A) + P(B) minus P(A capB)

Esempio un certo negozio accetta pagamenti o con carte di credito VISAo Mastercard

1 22 dei clienti ha Mastercard

2 58 dei clienti ha VISA

3 14 dei clienti ha entrambe

Qual e la probabilita che un cliente ha almeno una delle 2 carte

P(A) = 022 P(B) = 058

P(A cupB) = P(A) + P(B) minus P(A capB) = 022 + 058 minus 014 = 066

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 55 88

Probabilita condizionata - 1

Se alcune informazioni riguardo lrsquoesito di un esperimento sono disponibiliparliamo di probabilita condizionata

Esempio lancio di 2 dadi

S = (11) (12) (65) (66)

Probabilita che la somma sia 10 (evento B) sapendo che il primo dadomostra 4 (evento A)

(41) (42) (43) (44) (45) (46)

P(B ∣A) = 16

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 56 88

Probabilita condizionata - 2

In generale

P(B ∣A) = P(A capB)P(A)

Supponiamo lrsquoesito sia in A

Per essere anche in B deve essere in entrambi A e B cioe in A capB

Sapendo che A e gia accaduto il nostro nuovo sample space diventa A

la probabilita di A capB viene calcolata rispetto ad A

Nel caso dei dadi

P(B ∣A) = P((46))P((41) (42) (43) (44) (45) (46)) = 136

16= 1

6

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 57 88

Indipendenza

In generale sapere che A e accaduto modifica le chance che B accadaNel caso cio non avvenga cioe se P(B ∣A) = P(B) allora i 2 eventi sidicono indipendenti In questo caso sapere che A e accaduto nonaggiunge alcuna informazione

SiccomeP(A capB) = P(B ∣A)P(A)

Abbiamo che B e indipendente da A se

P(A capB) = P(B)P(A)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 58 88

Esercizi - 1

1 Svolgere gli esercizi di combinatoria

2 Si consideri il seguente esperimento casuale rdquosi lancia tre volte unamonetardquo Qual e lo spazio degli esiti di questo esperimento casualeSi scriva esplicitamente lrsquoevento rdquosi ottengono piu teste che crocirdquo

3 Si consideri il seguente esperimento casuale rdquoSi tirano due dadirdquo Siconsiderino gli eventi E = rdquola somma dei punteggi e disparirdquo F = rdquoilprimo dado realizza un 1rdquo e G = rdquola somma dei punteggi e 5rdquo Sidescrivano gli eventi E cap F E cup F F capG E cap F c e E cap F capG

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 59 88

Esercizi - 2

4 Si consideri il seguente esperimento casuale rdquoUn sistema e compostoda 4 componenti ciascuno dei quali o funziona oppure e guasto Siosserva lo stato dei componenti ottenendo un vettore (x1 x2 x3 x4)dove xi e 1 oppure 0 a seconda che il componente i-esimo funzionioppure nordquo

1 Da quanti elementi e formato lo spazio degli esiti2 Il sistema nel suo insieme funziona fintantoche entrambi i componenti

1 e 2 oppure entrambi i componenti 3 e 4 funzionano Specifica tuttigli esiti dellrsquoevento il rdquosistema funzionardquo

3 Sia E lrsquoevento rdquoi componenti 1 e 3 sono guastirdquo Quanti esiti contiene

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 60 88

Esercizi - 3

5 Si dimostri che in uno spazio degli esiti Ω dotato di una probabilita Pper ogni evento E F sub Ω vale la disuguaglianza seguente

P(E cap F ) ge P(E) + P(F ) minus 1

6 Un gruppo di 5 bambini e 10 bambine e in fila in ordine casuale nelsenso che tutte le 15 possibili permutazioni si suppongonoequiprobabili

1 Qual e la probabilita che il quarto della fila sia un bambino2 E il dodicesimo3 Qual e la probabilita che un determinato bambino occupi la terza

posizione

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 61 88

Esercizi - 4

7 In un comune vi sono 5 alberghi Se 3 persone devono scegliere unalbergo in cui pernottare qual e la probabilita che finiscano tutte inalberghi differenti Che cosa stiamo assumendo senza dirloesplicitamente

8 La media del salario annuale di un gruppo di 100 lavoratori impiegatinellrsquoamministrazione di una grande azienda e di 130000 dollari conuna deviazione standard di 20000 dollari Se si prende una persona acaso da questo gruppo cosa possiamo dire sulla probabilita che il suosalario sia

1 tra i 90000 e i 170000 dollari2 superiore a 150000 dollari

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 62 88

Esercizi - 5

9 In una certa regione vi sono due ditte che producono forni amicroonde Quelli della fabbrica A sono difettosi con probabilita 005mentre quelli della fabbrica B con probabilita 001 Supponi di averacquistato due apparecchi prodotti dalla stessa ditta che puo essere laA o la B con probabilita del 50 Se il primo microonde e difettosoqual e la probabilita condizionata che sia difettoso anche il secondo

10 Hai chiesto ad un vicino di innaffiare una piantina delicata mentre seiin vacanza Pensi che senza acqua la piantina muoia con probabilita08 mentre se innaffiata questa probabilita si ridurrebbe a 015 Latua fiducia che il vicino si ricordi di innaffiarla e del 90

1 Qual e la probabilita che la pianta sia ancora viva al tuo ritorno2 Se fosse morta quale sarebbe la probabilita che il vicino si sia

dimenticato di innaffiarla

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 63 88

Esercizi - 6

11 Una compagnia di assicurazioni classifica i suoi clienti in tre fascebasso rischio medio rischio alto rischio Le sue statistiche indicanoche le probabilita che un cliente delle tre fasce abbia un incidenteentro un periodo di un anno sono rispettivamente 005 015 e 030Se il 20 dei clienti sono a basso rischio il 50 a medio rischio e il30 ad alto rischio che percentuale dei clienti avra mediamenteincidenti in un lasso di un anno Se un cliente non ha avuto incidentinel 1987 qual e la probabilita che appartenga a ciascuna delle trefasce

12 Se un votante scelto a caso e favorevole ad una certa riforma conprobabilita di 07 qual e la probabilita che su 10 votanti esattamente7 siano favorevoli

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 64 88

Variabili aleatorie

Una variabile aleatoria (o anche variabile aleatoria) e una variabile chepuo assumere valori diversi in dipendenza da qualche fenomeno aleatorio

fenomeno lancio di 2 dadivariabile aleatoria somma dei 2 dadi

fenomeno 3 lanci di una monetavariabile aleatoria numero di rdquotesterdquo complessivo

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 65 88

Funzione di Ripartizione

Sia X una variabile aleatoria Si chiama funzione di ripartizione di X lafunzione F che associa ad ogni numero reale a la probabilita che X siaminore o uguale ad a cioe P(X le a) = FX (a)

Nel caso della moneta (fair) lanciata 3 volte (X indica il numero di testecomplessivo)

FX (a) =

⎧⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎨⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎩

0 if a lt 0

18 per 0 le a lt 1

18 + 38 = 48 per 1 le a lt 2

48 + 38 = 78 per 2 le a lt 3

88 = 1 per a ge 3

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 66 88

Funzione di densita o di massa

Sia X una variabile aleatoria Si chiama funzione di densita di X lafunzione f che associa ad ogni numero reale a la probabilita che X siauguale ad a indicata con fX (a)

Nel caso della moneta (fair) lanciata 3 volte (X indica il numero di testecomplessivo)

fX (a) =

⎧⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎨⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎩

18 per a = 0

38 per a = 1

38 per a = 2

18 per a = 3

0 altrimenti

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 67 88

Valore Atteso

Chiamato anche media (expectation in inglese) e appunto una mediapesata dei possibili valori di una variabile aleatoria Il peso dato a ciascunvalore e la probabilita data a quello specifico valore

E[X ] =sumi

aiP(X = ai)

Esempio dado truccato

valore 6 con probabilita 712

valori da 1 a 5 con probabilita 112

La variabile aleatoria X indica la faccia risultante dal lancio di un dado

E[X ] = 1

12lowast 1 + 1

12lowast 2 + 1

12lowast 3 + 1

12lowast 4 + 1

12lowast 5 + 7

12lowast 6 = 475

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 68 88

Valore Atteso - Proprieta

Sia X una variabile aleatoria con valore atteso E[X ] Se c e una costanteallora anche cX e X + c sono variabili casuali In particolare valgono leseguenti proprieta

E[cX ] = cE[X ]E[X + c] = E[X ] + c

Sia Y una variabile aleatoria Allora

E[X +Y ] = E[X ] +E[Y ]se e solo se X e Y sono independenti

E[XY ] = E[X ]E[Y ]

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 69 88

Varianza

Ersquo il valore atteso del quadrato della differenza tra la variabile aleatoria e ilsuo valore atteso

Var(X ) = E[(X minusE[X ])2] = E[X 2] minus (E[X ])2

La radice quadrata viene detta deviazione standard di X

Esempio dado truccato

E[X 2] = 1

12lowast 12 + 1

12lowast 22 + 1

12lowast 32 + 1

12lowast 42 + 1

12lowast 52 + 7

12lowast 62 ≃ 255

Var(X ) = E[X 2] minus (E[X ])2 ≃ 255 minus 4752 ≃ 3

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 70 88

Varianza - proprieta

Sia X una variabile aleatoria e c una costante Allora valgono le seguentiproprieta

1 Var(cX ) = c2Var(X )

2 Var(X + c) = Var(X )

NOTA

Var(X +X ) ne Var(X ) +Var(X )

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 71 88

Covarianza

Siano X Y due variabili aleatorie con valore atteso rispettivamenteE[X ] = microX e E[Y ] = microY La covarianza e definita come segue

Cov(X Y ) = E[(X minus microX )(Y minus microY )] = = E[XY ] minus microXmicroY

Proprieta

1 Cov(X Y ) = Cov(Y X )2 Cov(X X ) = Var(X )3 Sia a una costante allora

Cov(aX Y ) = aCov(X Y )

4 Sia Z una variabile aleatoria allora

Cov(X + Z Y ) = Cov(X Y ) + Cov(Z Y )

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 72 88

Esercizi - 1

1 Consideriamo una variabile aleatoria X che puo assumere i valori 12o 3 Se sappiamo che

fX (1) = 1

3 fX (2) = 3

7

1 Quanto vale fX (3)2 Disegnare il grafico di questa funzione di massa3 Disegnare il grafico della relativa funzione di ripartizione

2 Dimostrare che se X1 e X2 hanno la stessa distribuzione allora

Cov(X1 +X2X1 minusX2) = 0

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 73 88

Esercizi - 2

3 La funzione di ripartizione di X e definita come segue

FX (x) =

⎧⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎨⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎩

0 per x le 0

x2 per 0 le x lt 1

23 per 1 le x lt 2

1112 per 2 le x lt 3

1 per x ge 3

Se ne tracci il graficoQuanto vale P(X gt 12)Quanto vale P(2 le X le 4)Quanto vale P(X le 3)Quanto vale P(X = 1)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 74 88

Esercizi - 3

4 Un tipo di prodotti vengono classificati a seconda dei loro difetti edella fabbrica che li ha prodotti Sia X1 il numero (1 o 2) dellafabbrica e sia X2 il numero di difetti per pezzo (che possono essere da0 a 3) di un prodotto scelto a caso tra la totalita di quelli esistentiLa tabella seguente riporta la funzione di massa di probabilitacongiunta per queste due variabili aleatorie discrete Le righe siriferiscono alla variabile X1 mentre le colonne alla variabile X2

Trova le distribuzioni marginali di X1 e X2Calcola media e varianza di X2

0 1 2 31 18 116 316 182 116 116 18 14

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 75 88

Scipy

Scipy e un modulo che permette di utilizzare varie distribuzioni diprobabilita sia di tipo discreto che continuo

La sintassi generale e la seguente Scipystatsltnome distribuzionegt

rvs(size=z) restituisce un vettore di numeri casuali estrattisecondo la distribuzione di lunghezza z

pdf(x) restituisce il vettore della densita della distribuzionevalutata nei valori del vettore di input x (pmf per le discrete)

cdf(x) restituisce il vettore della funzione di ripartizione (ocumulativa) della distribuzione valutata nei valori del vettore di inputx

ppf(q) restituisce il vettore dei quantili della distribuzione valutatanei valori del vettore di input q

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 76 88

Variabili aleatorie discrete Binomiale

gtgtgt from scipystats import binom

gtgtgt rv = binom(n p)

rvrvs(x) restituisce un vettore di x numeri estratti secondo unadistribuzione Binomiale di parametri n p

rvpmf(x) restituisce la probabilita di ottenere esattamente x

successi in un esperimento dicotomico (01) ripetuto n volte con unaprobabilita di successo p (x puo essere un vettore)

rvcdf(q) restituisce il valore della funzione di ripartizione in q (qpuo essere un vettore)

rvppf(p) restituisce il valore del quantile di ordine p

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 77 88

Variabili aleatorie discrete Ipergeometrica

Supponiamo di avere M = 20 animali di cui n = 7 cani Se vogliamosapere la probabilita di trovare un dato numero di cani se scegliamoN = 12 dei 20 animali in maniera casuale possiamo usare una distribuzioneipergeometrica in questo modo

gtgtgt from scipystats import hypergeom

gtgtgt [M n N] = [20 7 12]

gtgtgt rv = hypergeom(M n N)

rvpmf(x) restituisce la probabilita di estrarre esattamente x cani

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 78 88

Variabili aleatorie discrete Geometrica

gtgtgt from scipystats import geom

gtgtgt rv = geom(p)

rvpmf(x) restituisce la probabilita di avere un successo dopoesattamente x insuccessi in una successione di esperimenti dicotomici(esito 01) con una probabilita di successo p (x puo essere un vettore)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 79 88

Variabili aleatorie discrete Poisson

La distribuzione di Poisson viene usata spesso come modello per il numerodi volte per cui un evento avviene in un dato intervallo di tempo (ospazio) Ad esempio si puo utilizzare per misurare il numero di chiamatericevute da un call center in una mattinata

gtgtgt from scipystats import poisson

gtgtgt mu = 2

gtgtgt rv = poisson(mu)

rvpmf(x) restituisce il seguente valore

f (x) = exp(minusmicro)microx

x

In questo caso x rappresenta il numero di eventi per cui si vuole calcolarela probabilita sapendo che in media ne accadono micro

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 80 88

Variabili aleatorie continue Uniforme

In Scipy la funzione uniforme e soltanto continua Questo significa chenella generazione di numeri casuali otterro dati di tipo float Possiamotuttavia simulare una variabile discreta estraendo la parte intera delrisultato ottenuto

gtgtgt from scipystats import uniform

gtgtgt rv = uniform()

Il comando uniform() crea una distribuzione uniforme nellrsquointervallo[01] Possiamo creare una distribuzione uniforme qualsiasi usandouniform(x y - x) per lrsquointervallo [x y]

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 81 88

Variabili aleatorie continue

norm(mu sigma) variabile Gaussiana (o Normale) di media micro edeviazione standard σ

expon(scale = 1 lambda) variabile Esponenziale di parametroλ

Altre distribuzioni (con relativa documentazione) disponibili suhttpsdocsscipyorgdocscipyreferencestatshtml

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 82 88

Esercizi - 1

1 Unrsquourna contiene 10 palline di cui 4 bianche e 6 nere Si eseguono 5estrazioni con reimmissione

1 Tracciare grafico della funzione massa di probabilita della variabilecasuale X = rdquonumero di palline bianche estratterdquo

2 Calcolare la probabilita di estrarre 2 palline bianche3 Calcolare la probabilita di estrarre al piu 2 palline bianche4 Calcolare la probabilita di estrarre almeno 2 palline bianche5 Qual e il numero minimo x tale che la probabilita di estrarre al piu x

palline bianche sia almeno 08

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 83 88

Esercizi - 2

2 Si eseguono 10 estrazioni senza reimmissione da unrsquourna

1 Tracciare il grafico della funzione massa di probabilita della variabilecasuale X = rdquonumero di palline bianche estratterdquo nei seguenti casi

1 lrsquourna contiene 100 palline di cui 20 bianche e le restanti nere2 lrsquourna contiene 100 palline di cui 2 bianche e le restanti nere

2 Tracciare il grafico della funzione massa di probabilita della variabilecasuale X nel caso dellrsquourna 1 se si eseguono 25 estrazioni

3 Consideriamo lrsquourna 1 e N = 10 estrazioni Si aumenti il numero totaleM di palline nellrsquourna mantenendo uguale a 02 la frazione di pallinebianche Per ciascun valore di M confrontare graficamente ladistribuzione di probabilita del numero di palline bianche estratte nelcaso di estrazioni con e senza reimmissione Provare con 20 40 e 200palline bianche

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 84 88

Esercizi - 3

3 Calcolare la probabilita di ottenere piu teste che croci lanciando 7volte una moneta truccata con probabilita di avere croce pari a 045

4 Calcolare la probabilita di avere almeno 3 sei lanciando 5 dadi a 12facce

5 Calcolare la probabilita di estrarre 20 euro da un sacco contenente 47monete da 1 centesimo e 53 da 2 euro estraendo (uniformemente) acaso 10 monete senza reinserirle

6 Un grammo di uranio emette mediamente 2152 particelle α ognimillisecondo Qual e con buona approssimazione la probabilita che ungrammo di uranio emetta al piu 2000 particelle α in un millisecondo

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 85 88

Esercizi - 4

7 Un uomo si risveglia in mezzo al deserto senza acqua Dopo ogniminuto ha una probabilita del 3 di perdere conoscenza per via dellecondizioni estreme Calcolare la probabilita che lrsquouomo perdaconoscenza dopo almeno due ore e la probabilita che lrsquouomo perdaconoscenza dopo esattamente un quarto drsquoora

8 Sia X una variabile aleatoria normale di parametri micro = 10 e σ = 36Calcola

1 P(X gt 5)2 P(4 le X le 16)3 P(X le 8)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 86 88

Esercizi - 5

9 Il numero di errori tipografici per pagina di una certa rivista segue unadistribuzione di Poisson Sapendo che mediamente sono presenti 02errori per pagina determinare la probabilita che una pagina contenga

1 nessun refuso2 piu refusi

10 Arrivi alla fermata dellrsquoautobus alle 1000 e sei certo che ne passerauno in un momento distribuito uniformemente tra le 1000 e le 1030

1 Qual e la probabilita che tu debba aspettare piu di 10 minuti2 Se alle 1015 lrsquoautobus non e ancora arrivato qual e la probabilita che

tu debba aspettare almeno altri 10 minuti

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 87 88

Esercizi - 6

11 Il signor Jones e convinto che il tempo di vita di una automobile (inmigliaia di chilometri percorse) sia una variabile aleatoria esponenzialedi parametro 120 Il signor Smith ha una macchina usata da vendereche ha percorso circa 10 000 chilometri

1 Se il signor Jones decide di comprarla che probabilita ha di farle farealmeno altri 20 000 chilometri prima che sia da buttare

2 Il modello assunto dal signor Jones e ragionevole

12 Sia X una variabile casuale binomiale di parametri n = 100 e p = 07

1 Tracciate la funzione di ripartizione di X2 Calcolate il primo quartile il quantile di ordine 09 e la mediana di X3 Calcolare la probabilita P(X le 60)4 Calcolare la probabilita P(X le 88)5 Trovare il piu piccolo valore x tale che P(X le x) ge 09

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 88 88

  • Lezione 1
    • Script in Python
    • Numpy
    • Esercizi
    • Pandas
    • Esercizi
      • Lezione 2
        • File csv
        • DataFrame
        • Accesso ai DataFrame
        • Frequenze
        • Esercizi
          • Lezione 3
            • Matplotlib
            • Grafici a Barre
            • Istogrammi
            • Cumulativa empirica
            • Boxplot
            • QQplot
            • Diagramma di Pareto
            • Esercizi
              • Lezione 4
                • Definizioni
                • Probabilitagrave condizionata
                • Indipendenza
                • Esercizi
                  • Lezione 5
                    • Variabili Aleatorie
                    • Funzione di Ripartizione
                    • Funzione di Densitagrave
                    • Valore Atteso
                    • Varianza
                    • Covarianza
                    • Esercizi
                      • Lezione 6
                        • Scipy - Variabili Discrete
                        • Scipy - Variabili continue
                        • 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) SAD 20182019 January 12 2019 47 88

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) SAD 20182019 January 12 2019 48 88

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) SAD 20182019 January 12 2019 49 88

Esercizi - 1

Utilizzando il file capellicsv dai csv del laboratorio

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) SAD 20182019 January 12 2019 50 88

Esercizi - 2

Utilizzando il file dati-ospedalicsv dai csv del laboratorio

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 e canipdf

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 51 88

Sample space

Un esperimento e qualsiasi processo che produce una realizzazione (oosservazione) Lrsquoinsieme di tutte le possibili realizzazioni di un esperimentoviene detto sample space ed indicato con S

lancio di 2 monete

S = (T T ) (T C) (C T ) (C C)

gara di 3 cavalli (ab c)

S = tutti i possibili ordinamenti di(ab c)= (ab c) (a cb) (c b a)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 52 88

Eventi

lancio di 2 monete

S = (T T ) (T C) (C T ) (C C)

A = 2 monete uguali

A = (T T ) (C C)

B = 2 monete diverse

B = Ac = (T C) (C T )

gara di 3 cavalli

A = cavallo a vincente

A = (ab c) (a c b)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 53 88

Probabilita - 1

Consideriamo un esperimento con sample space S Supponiamo che adogni evento A sia associato un numero chiamato probabilita di A edindicato con P(A) che soddisfa le seguenti proprieta

1 Per ogni evento A la probabilita di A e un numero tra 0 e 1

0 le P(A) le 1

2 La probabilita del sample space S e 1

P(S) = 1

3 La probabilita dellrsquounione di eventi disgiunti e uguale alla somma delleprobabilita di tali eventi

P(A cupB) = P(A) + P(B)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 54 88

Probabilita - 2

In generale 2 eventi potrebbero non essere disgiunti

P(A cupB) = P(A) + P(B) minus P(A capB)

Esempio un certo negozio accetta pagamenti o con carte di credito VISAo Mastercard

1 22 dei clienti ha Mastercard

2 58 dei clienti ha VISA

3 14 dei clienti ha entrambe

Qual e la probabilita che un cliente ha almeno una delle 2 carte

P(A) = 022 P(B) = 058

P(A cupB) = P(A) + P(B) minus P(A capB) = 022 + 058 minus 014 = 066

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 55 88

Probabilita condizionata - 1

Se alcune informazioni riguardo lrsquoesito di un esperimento sono disponibiliparliamo di probabilita condizionata

Esempio lancio di 2 dadi

S = (11) (12) (65) (66)

Probabilita che la somma sia 10 (evento B) sapendo che il primo dadomostra 4 (evento A)

(41) (42) (43) (44) (45) (46)

P(B ∣A) = 16

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 56 88

Probabilita condizionata - 2

In generale

P(B ∣A) = P(A capB)P(A)

Supponiamo lrsquoesito sia in A

Per essere anche in B deve essere in entrambi A e B cioe in A capB

Sapendo che A e gia accaduto il nostro nuovo sample space diventa A

la probabilita di A capB viene calcolata rispetto ad A

Nel caso dei dadi

P(B ∣A) = P((46))P((41) (42) (43) (44) (45) (46)) = 136

16= 1

6

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 57 88

Indipendenza

In generale sapere che A e accaduto modifica le chance che B accadaNel caso cio non avvenga cioe se P(B ∣A) = P(B) allora i 2 eventi sidicono indipendenti In questo caso sapere che A e accaduto nonaggiunge alcuna informazione

SiccomeP(A capB) = P(B ∣A)P(A)

Abbiamo che B e indipendente da A se

P(A capB) = P(B)P(A)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 58 88

Esercizi - 1

1 Svolgere gli esercizi di combinatoria

2 Si consideri il seguente esperimento casuale rdquosi lancia tre volte unamonetardquo Qual e lo spazio degli esiti di questo esperimento casualeSi scriva esplicitamente lrsquoevento rdquosi ottengono piu teste che crocirdquo

3 Si consideri il seguente esperimento casuale rdquoSi tirano due dadirdquo Siconsiderino gli eventi E = rdquola somma dei punteggi e disparirdquo F = rdquoilprimo dado realizza un 1rdquo e G = rdquola somma dei punteggi e 5rdquo Sidescrivano gli eventi E cap F E cup F F capG E cap F c e E cap F capG

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 59 88

Esercizi - 2

4 Si consideri il seguente esperimento casuale rdquoUn sistema e compostoda 4 componenti ciascuno dei quali o funziona oppure e guasto Siosserva lo stato dei componenti ottenendo un vettore (x1 x2 x3 x4)dove xi e 1 oppure 0 a seconda che il componente i-esimo funzionioppure nordquo

1 Da quanti elementi e formato lo spazio degli esiti2 Il sistema nel suo insieme funziona fintantoche entrambi i componenti

1 e 2 oppure entrambi i componenti 3 e 4 funzionano Specifica tuttigli esiti dellrsquoevento il rdquosistema funzionardquo

3 Sia E lrsquoevento rdquoi componenti 1 e 3 sono guastirdquo Quanti esiti contiene

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 60 88

Esercizi - 3

5 Si dimostri che in uno spazio degli esiti Ω dotato di una probabilita Pper ogni evento E F sub Ω vale la disuguaglianza seguente

P(E cap F ) ge P(E) + P(F ) minus 1

6 Un gruppo di 5 bambini e 10 bambine e in fila in ordine casuale nelsenso che tutte le 15 possibili permutazioni si suppongonoequiprobabili

1 Qual e la probabilita che il quarto della fila sia un bambino2 E il dodicesimo3 Qual e la probabilita che un determinato bambino occupi la terza

posizione

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 61 88

Esercizi - 4

7 In un comune vi sono 5 alberghi Se 3 persone devono scegliere unalbergo in cui pernottare qual e la probabilita che finiscano tutte inalberghi differenti Che cosa stiamo assumendo senza dirloesplicitamente

8 La media del salario annuale di un gruppo di 100 lavoratori impiegatinellrsquoamministrazione di una grande azienda e di 130000 dollari conuna deviazione standard di 20000 dollari Se si prende una persona acaso da questo gruppo cosa possiamo dire sulla probabilita che il suosalario sia

1 tra i 90000 e i 170000 dollari2 superiore a 150000 dollari

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 62 88

Esercizi - 5

9 In una certa regione vi sono due ditte che producono forni amicroonde Quelli della fabbrica A sono difettosi con probabilita 005mentre quelli della fabbrica B con probabilita 001 Supponi di averacquistato due apparecchi prodotti dalla stessa ditta che puo essere laA o la B con probabilita del 50 Se il primo microonde e difettosoqual e la probabilita condizionata che sia difettoso anche il secondo

10 Hai chiesto ad un vicino di innaffiare una piantina delicata mentre seiin vacanza Pensi che senza acqua la piantina muoia con probabilita08 mentre se innaffiata questa probabilita si ridurrebbe a 015 Latua fiducia che il vicino si ricordi di innaffiarla e del 90

1 Qual e la probabilita che la pianta sia ancora viva al tuo ritorno2 Se fosse morta quale sarebbe la probabilita che il vicino si sia

dimenticato di innaffiarla

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 63 88

Esercizi - 6

11 Una compagnia di assicurazioni classifica i suoi clienti in tre fascebasso rischio medio rischio alto rischio Le sue statistiche indicanoche le probabilita che un cliente delle tre fasce abbia un incidenteentro un periodo di un anno sono rispettivamente 005 015 e 030Se il 20 dei clienti sono a basso rischio il 50 a medio rischio e il30 ad alto rischio che percentuale dei clienti avra mediamenteincidenti in un lasso di un anno Se un cliente non ha avuto incidentinel 1987 qual e la probabilita che appartenga a ciascuna delle trefasce

12 Se un votante scelto a caso e favorevole ad una certa riforma conprobabilita di 07 qual e la probabilita che su 10 votanti esattamente7 siano favorevoli

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 64 88

Variabili aleatorie

Una variabile aleatoria (o anche variabile aleatoria) e una variabile chepuo assumere valori diversi in dipendenza da qualche fenomeno aleatorio

fenomeno lancio di 2 dadivariabile aleatoria somma dei 2 dadi

fenomeno 3 lanci di una monetavariabile aleatoria numero di rdquotesterdquo complessivo

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 65 88

Funzione di Ripartizione

Sia X una variabile aleatoria Si chiama funzione di ripartizione di X lafunzione F che associa ad ogni numero reale a la probabilita che X siaminore o uguale ad a cioe P(X le a) = FX (a)

Nel caso della moneta (fair) lanciata 3 volte (X indica il numero di testecomplessivo)

FX (a) =

⎧⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎨⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎩

0 if a lt 0

18 per 0 le a lt 1

18 + 38 = 48 per 1 le a lt 2

48 + 38 = 78 per 2 le a lt 3

88 = 1 per a ge 3

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 66 88

Funzione di densita o di massa

Sia X una variabile aleatoria Si chiama funzione di densita di X lafunzione f che associa ad ogni numero reale a la probabilita che X siauguale ad a indicata con fX (a)

Nel caso della moneta (fair) lanciata 3 volte (X indica il numero di testecomplessivo)

fX (a) =

⎧⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎨⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎩

18 per a = 0

38 per a = 1

38 per a = 2

18 per a = 3

0 altrimenti

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 67 88

Valore Atteso

Chiamato anche media (expectation in inglese) e appunto una mediapesata dei possibili valori di una variabile aleatoria Il peso dato a ciascunvalore e la probabilita data a quello specifico valore

E[X ] =sumi

aiP(X = ai)

Esempio dado truccato

valore 6 con probabilita 712

valori da 1 a 5 con probabilita 112

La variabile aleatoria X indica la faccia risultante dal lancio di un dado

E[X ] = 1

12lowast 1 + 1

12lowast 2 + 1

12lowast 3 + 1

12lowast 4 + 1

12lowast 5 + 7

12lowast 6 = 475

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 68 88

Valore Atteso - Proprieta

Sia X una variabile aleatoria con valore atteso E[X ] Se c e una costanteallora anche cX e X + c sono variabili casuali In particolare valgono leseguenti proprieta

E[cX ] = cE[X ]E[X + c] = E[X ] + c

Sia Y una variabile aleatoria Allora

E[X +Y ] = E[X ] +E[Y ]se e solo se X e Y sono independenti

E[XY ] = E[X ]E[Y ]

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 69 88

Varianza

Ersquo il valore atteso del quadrato della differenza tra la variabile aleatoria e ilsuo valore atteso

Var(X ) = E[(X minusE[X ])2] = E[X 2] minus (E[X ])2

La radice quadrata viene detta deviazione standard di X

Esempio dado truccato

E[X 2] = 1

12lowast 12 + 1

12lowast 22 + 1

12lowast 32 + 1

12lowast 42 + 1

12lowast 52 + 7

12lowast 62 ≃ 255

Var(X ) = E[X 2] minus (E[X ])2 ≃ 255 minus 4752 ≃ 3

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 70 88

Varianza - proprieta

Sia X una variabile aleatoria e c una costante Allora valgono le seguentiproprieta

1 Var(cX ) = c2Var(X )

2 Var(X + c) = Var(X )

NOTA

Var(X +X ) ne Var(X ) +Var(X )

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 71 88

Covarianza

Siano X Y due variabili aleatorie con valore atteso rispettivamenteE[X ] = microX e E[Y ] = microY La covarianza e definita come segue

Cov(X Y ) = E[(X minus microX )(Y minus microY )] = = E[XY ] minus microXmicroY

Proprieta

1 Cov(X Y ) = Cov(Y X )2 Cov(X X ) = Var(X )3 Sia a una costante allora

Cov(aX Y ) = aCov(X Y )

4 Sia Z una variabile aleatoria allora

Cov(X + Z Y ) = Cov(X Y ) + Cov(Z Y )

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 72 88

Esercizi - 1

1 Consideriamo una variabile aleatoria X che puo assumere i valori 12o 3 Se sappiamo che

fX (1) = 1

3 fX (2) = 3

7

1 Quanto vale fX (3)2 Disegnare il grafico di questa funzione di massa3 Disegnare il grafico della relativa funzione di ripartizione

2 Dimostrare che se X1 e X2 hanno la stessa distribuzione allora

Cov(X1 +X2X1 minusX2) = 0

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 73 88

Esercizi - 2

3 La funzione di ripartizione di X e definita come segue

FX (x) =

⎧⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎨⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎩

0 per x le 0

x2 per 0 le x lt 1

23 per 1 le x lt 2

1112 per 2 le x lt 3

1 per x ge 3

Se ne tracci il graficoQuanto vale P(X gt 12)Quanto vale P(2 le X le 4)Quanto vale P(X le 3)Quanto vale P(X = 1)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 74 88

Esercizi - 3

4 Un tipo di prodotti vengono classificati a seconda dei loro difetti edella fabbrica che li ha prodotti Sia X1 il numero (1 o 2) dellafabbrica e sia X2 il numero di difetti per pezzo (che possono essere da0 a 3) di un prodotto scelto a caso tra la totalita di quelli esistentiLa tabella seguente riporta la funzione di massa di probabilitacongiunta per queste due variabili aleatorie discrete Le righe siriferiscono alla variabile X1 mentre le colonne alla variabile X2

Trova le distribuzioni marginali di X1 e X2Calcola media e varianza di X2

0 1 2 31 18 116 316 182 116 116 18 14

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 75 88

Scipy

Scipy e un modulo che permette di utilizzare varie distribuzioni diprobabilita sia di tipo discreto che continuo

La sintassi generale e la seguente Scipystatsltnome distribuzionegt

rvs(size=z) restituisce un vettore di numeri casuali estrattisecondo la distribuzione di lunghezza z

pdf(x) restituisce il vettore della densita della distribuzionevalutata nei valori del vettore di input x (pmf per le discrete)

cdf(x) restituisce il vettore della funzione di ripartizione (ocumulativa) della distribuzione valutata nei valori del vettore di inputx

ppf(q) restituisce il vettore dei quantili della distribuzione valutatanei valori del vettore di input q

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 76 88

Variabili aleatorie discrete Binomiale

gtgtgt from scipystats import binom

gtgtgt rv = binom(n p)

rvrvs(x) restituisce un vettore di x numeri estratti secondo unadistribuzione Binomiale di parametri n p

rvpmf(x) restituisce la probabilita di ottenere esattamente x

successi in un esperimento dicotomico (01) ripetuto n volte con unaprobabilita di successo p (x puo essere un vettore)

rvcdf(q) restituisce il valore della funzione di ripartizione in q (qpuo essere un vettore)

rvppf(p) restituisce il valore del quantile di ordine p

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 77 88

Variabili aleatorie discrete Ipergeometrica

Supponiamo di avere M = 20 animali di cui n = 7 cani Se vogliamosapere la probabilita di trovare un dato numero di cani se scegliamoN = 12 dei 20 animali in maniera casuale possiamo usare una distribuzioneipergeometrica in questo modo

gtgtgt from scipystats import hypergeom

gtgtgt [M n N] = [20 7 12]

gtgtgt rv = hypergeom(M n N)

rvpmf(x) restituisce la probabilita di estrarre esattamente x cani

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 78 88

Variabili aleatorie discrete Geometrica

gtgtgt from scipystats import geom

gtgtgt rv = geom(p)

rvpmf(x) restituisce la probabilita di avere un successo dopoesattamente x insuccessi in una successione di esperimenti dicotomici(esito 01) con una probabilita di successo p (x puo essere un vettore)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 79 88

Variabili aleatorie discrete Poisson

La distribuzione di Poisson viene usata spesso come modello per il numerodi volte per cui un evento avviene in un dato intervallo di tempo (ospazio) Ad esempio si puo utilizzare per misurare il numero di chiamatericevute da un call center in una mattinata

gtgtgt from scipystats import poisson

gtgtgt mu = 2

gtgtgt rv = poisson(mu)

rvpmf(x) restituisce il seguente valore

f (x) = exp(minusmicro)microx

x

In questo caso x rappresenta il numero di eventi per cui si vuole calcolarela probabilita sapendo che in media ne accadono micro

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 80 88

Variabili aleatorie continue Uniforme

In Scipy la funzione uniforme e soltanto continua Questo significa chenella generazione di numeri casuali otterro dati di tipo float Possiamotuttavia simulare una variabile discreta estraendo la parte intera delrisultato ottenuto

gtgtgt from scipystats import uniform

gtgtgt rv = uniform()

Il comando uniform() crea una distribuzione uniforme nellrsquointervallo[01] Possiamo creare una distribuzione uniforme qualsiasi usandouniform(x y - x) per lrsquointervallo [x y]

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 81 88

Variabili aleatorie continue

norm(mu sigma) variabile Gaussiana (o Normale) di media micro edeviazione standard σ

expon(scale = 1 lambda) variabile Esponenziale di parametroλ

Altre distribuzioni (con relativa documentazione) disponibili suhttpsdocsscipyorgdocscipyreferencestatshtml

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 82 88

Esercizi - 1

1 Unrsquourna contiene 10 palline di cui 4 bianche e 6 nere Si eseguono 5estrazioni con reimmissione

1 Tracciare grafico della funzione massa di probabilita della variabilecasuale X = rdquonumero di palline bianche estratterdquo

2 Calcolare la probabilita di estrarre 2 palline bianche3 Calcolare la probabilita di estrarre al piu 2 palline bianche4 Calcolare la probabilita di estrarre almeno 2 palline bianche5 Qual e il numero minimo x tale che la probabilita di estrarre al piu x

palline bianche sia almeno 08

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 83 88

Esercizi - 2

2 Si eseguono 10 estrazioni senza reimmissione da unrsquourna

1 Tracciare il grafico della funzione massa di probabilita della variabilecasuale X = rdquonumero di palline bianche estratterdquo nei seguenti casi

1 lrsquourna contiene 100 palline di cui 20 bianche e le restanti nere2 lrsquourna contiene 100 palline di cui 2 bianche e le restanti nere

2 Tracciare il grafico della funzione massa di probabilita della variabilecasuale X nel caso dellrsquourna 1 se si eseguono 25 estrazioni

3 Consideriamo lrsquourna 1 e N = 10 estrazioni Si aumenti il numero totaleM di palline nellrsquourna mantenendo uguale a 02 la frazione di pallinebianche Per ciascun valore di M confrontare graficamente ladistribuzione di probabilita del numero di palline bianche estratte nelcaso di estrazioni con e senza reimmissione Provare con 20 40 e 200palline bianche

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 84 88

Esercizi - 3

3 Calcolare la probabilita di ottenere piu teste che croci lanciando 7volte una moneta truccata con probabilita di avere croce pari a 045

4 Calcolare la probabilita di avere almeno 3 sei lanciando 5 dadi a 12facce

5 Calcolare la probabilita di estrarre 20 euro da un sacco contenente 47monete da 1 centesimo e 53 da 2 euro estraendo (uniformemente) acaso 10 monete senza reinserirle

6 Un grammo di uranio emette mediamente 2152 particelle α ognimillisecondo Qual e con buona approssimazione la probabilita che ungrammo di uranio emetta al piu 2000 particelle α in un millisecondo

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 85 88

Esercizi - 4

7 Un uomo si risveglia in mezzo al deserto senza acqua Dopo ogniminuto ha una probabilita del 3 di perdere conoscenza per via dellecondizioni estreme Calcolare la probabilita che lrsquouomo perdaconoscenza dopo almeno due ore e la probabilita che lrsquouomo perdaconoscenza dopo esattamente un quarto drsquoora

8 Sia X una variabile aleatoria normale di parametri micro = 10 e σ = 36Calcola

1 P(X gt 5)2 P(4 le X le 16)3 P(X le 8)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 86 88

Esercizi - 5

9 Il numero di errori tipografici per pagina di una certa rivista segue unadistribuzione di Poisson Sapendo che mediamente sono presenti 02errori per pagina determinare la probabilita che una pagina contenga

1 nessun refuso2 piu refusi

10 Arrivi alla fermata dellrsquoautobus alle 1000 e sei certo che ne passerauno in un momento distribuito uniformemente tra le 1000 e le 1030

1 Qual e la probabilita che tu debba aspettare piu di 10 minuti2 Se alle 1015 lrsquoautobus non e ancora arrivato qual e la probabilita che

tu debba aspettare almeno altri 10 minuti

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 87 88

Esercizi - 6

11 Il signor Jones e convinto che il tempo di vita di una automobile (inmigliaia di chilometri percorse) sia una variabile aleatoria esponenzialedi parametro 120 Il signor Smith ha una macchina usata da vendereche ha percorso circa 10 000 chilometri

1 Se il signor Jones decide di comprarla che probabilita ha di farle farealmeno altri 20 000 chilometri prima che sia da buttare

2 Il modello assunto dal signor Jones e ragionevole

12 Sia X una variabile casuale binomiale di parametri n = 100 e p = 07

1 Tracciate la funzione di ripartizione di X2 Calcolate il primo quartile il quantile di ordine 09 e la mediana di X3 Calcolare la probabilita P(X le 60)4 Calcolare la probabilita P(X le 88)5 Trovare il piu piccolo valore x tale che P(X le x) ge 09

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 88 88

  • Lezione 1
    • Script in Python
    • Numpy
    • Esercizi
    • Pandas
    • Esercizi
      • Lezione 2
        • File csv
        • DataFrame
        • Accesso ai DataFrame
        • Frequenze
        • Esercizi
          • Lezione 3
            • Matplotlib
            • Grafici a Barre
            • Istogrammi
            • Cumulativa empirica
            • Boxplot
            • QQplot
            • Diagramma di Pareto
            • Esercizi
              • Lezione 4
                • Definizioni
                • Probabilitagrave condizionata
                • Indipendenza
                • Esercizi
                  • Lezione 5
                    • Variabili Aleatorie
                    • Funzione di Ripartizione
                    • Funzione di Densitagrave
                    • Valore Atteso
                    • Varianza
                    • Covarianza
                    • Esercizi
                      • Lezione 6
                        • Scipy - Variabili Discrete
                        • Scipy - Variabili continue
                        • 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) SAD 20182019 January 12 2019 48 88

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) SAD 20182019 January 12 2019 49 88

Esercizi - 1

Utilizzando il file capellicsv dai csv del laboratorio

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) SAD 20182019 January 12 2019 50 88

Esercizi - 2

Utilizzando il file dati-ospedalicsv dai csv del laboratorio

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 e canipdf

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 51 88

Sample space

Un esperimento e qualsiasi processo che produce una realizzazione (oosservazione) Lrsquoinsieme di tutte le possibili realizzazioni di un esperimentoviene detto sample space ed indicato con S

lancio di 2 monete

S = (T T ) (T C) (C T ) (C C)

gara di 3 cavalli (ab c)

S = tutti i possibili ordinamenti di(ab c)= (ab c) (a cb) (c b a)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 52 88

Eventi

lancio di 2 monete

S = (T T ) (T C) (C T ) (C C)

A = 2 monete uguali

A = (T T ) (C C)

B = 2 monete diverse

B = Ac = (T C) (C T )

gara di 3 cavalli

A = cavallo a vincente

A = (ab c) (a c b)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 53 88

Probabilita - 1

Consideriamo un esperimento con sample space S Supponiamo che adogni evento A sia associato un numero chiamato probabilita di A edindicato con P(A) che soddisfa le seguenti proprieta

1 Per ogni evento A la probabilita di A e un numero tra 0 e 1

0 le P(A) le 1

2 La probabilita del sample space S e 1

P(S) = 1

3 La probabilita dellrsquounione di eventi disgiunti e uguale alla somma delleprobabilita di tali eventi

P(A cupB) = P(A) + P(B)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 54 88

Probabilita - 2

In generale 2 eventi potrebbero non essere disgiunti

P(A cupB) = P(A) + P(B) minus P(A capB)

Esempio un certo negozio accetta pagamenti o con carte di credito VISAo Mastercard

1 22 dei clienti ha Mastercard

2 58 dei clienti ha VISA

3 14 dei clienti ha entrambe

Qual e la probabilita che un cliente ha almeno una delle 2 carte

P(A) = 022 P(B) = 058

P(A cupB) = P(A) + P(B) minus P(A capB) = 022 + 058 minus 014 = 066

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 55 88

Probabilita condizionata - 1

Se alcune informazioni riguardo lrsquoesito di un esperimento sono disponibiliparliamo di probabilita condizionata

Esempio lancio di 2 dadi

S = (11) (12) (65) (66)

Probabilita che la somma sia 10 (evento B) sapendo che il primo dadomostra 4 (evento A)

(41) (42) (43) (44) (45) (46)

P(B ∣A) = 16

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 56 88

Probabilita condizionata - 2

In generale

P(B ∣A) = P(A capB)P(A)

Supponiamo lrsquoesito sia in A

Per essere anche in B deve essere in entrambi A e B cioe in A capB

Sapendo che A e gia accaduto il nostro nuovo sample space diventa A

la probabilita di A capB viene calcolata rispetto ad A

Nel caso dei dadi

P(B ∣A) = P((46))P((41) (42) (43) (44) (45) (46)) = 136

16= 1

6

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 57 88

Indipendenza

In generale sapere che A e accaduto modifica le chance che B accadaNel caso cio non avvenga cioe se P(B ∣A) = P(B) allora i 2 eventi sidicono indipendenti In questo caso sapere che A e accaduto nonaggiunge alcuna informazione

SiccomeP(A capB) = P(B ∣A)P(A)

Abbiamo che B e indipendente da A se

P(A capB) = P(B)P(A)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 58 88

Esercizi - 1

1 Svolgere gli esercizi di combinatoria

2 Si consideri il seguente esperimento casuale rdquosi lancia tre volte unamonetardquo Qual e lo spazio degli esiti di questo esperimento casualeSi scriva esplicitamente lrsquoevento rdquosi ottengono piu teste che crocirdquo

3 Si consideri il seguente esperimento casuale rdquoSi tirano due dadirdquo Siconsiderino gli eventi E = rdquola somma dei punteggi e disparirdquo F = rdquoilprimo dado realizza un 1rdquo e G = rdquola somma dei punteggi e 5rdquo Sidescrivano gli eventi E cap F E cup F F capG E cap F c e E cap F capG

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 59 88

Esercizi - 2

4 Si consideri il seguente esperimento casuale rdquoUn sistema e compostoda 4 componenti ciascuno dei quali o funziona oppure e guasto Siosserva lo stato dei componenti ottenendo un vettore (x1 x2 x3 x4)dove xi e 1 oppure 0 a seconda che il componente i-esimo funzionioppure nordquo

1 Da quanti elementi e formato lo spazio degli esiti2 Il sistema nel suo insieme funziona fintantoche entrambi i componenti

1 e 2 oppure entrambi i componenti 3 e 4 funzionano Specifica tuttigli esiti dellrsquoevento il rdquosistema funzionardquo

3 Sia E lrsquoevento rdquoi componenti 1 e 3 sono guastirdquo Quanti esiti contiene

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 60 88

Esercizi - 3

5 Si dimostri che in uno spazio degli esiti Ω dotato di una probabilita Pper ogni evento E F sub Ω vale la disuguaglianza seguente

P(E cap F ) ge P(E) + P(F ) minus 1

6 Un gruppo di 5 bambini e 10 bambine e in fila in ordine casuale nelsenso che tutte le 15 possibili permutazioni si suppongonoequiprobabili

1 Qual e la probabilita che il quarto della fila sia un bambino2 E il dodicesimo3 Qual e la probabilita che un determinato bambino occupi la terza

posizione

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 61 88

Esercizi - 4

7 In un comune vi sono 5 alberghi Se 3 persone devono scegliere unalbergo in cui pernottare qual e la probabilita che finiscano tutte inalberghi differenti Che cosa stiamo assumendo senza dirloesplicitamente

8 La media del salario annuale di un gruppo di 100 lavoratori impiegatinellrsquoamministrazione di una grande azienda e di 130000 dollari conuna deviazione standard di 20000 dollari Se si prende una persona acaso da questo gruppo cosa possiamo dire sulla probabilita che il suosalario sia

1 tra i 90000 e i 170000 dollari2 superiore a 150000 dollari

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 62 88

Esercizi - 5

9 In una certa regione vi sono due ditte che producono forni amicroonde Quelli della fabbrica A sono difettosi con probabilita 005mentre quelli della fabbrica B con probabilita 001 Supponi di averacquistato due apparecchi prodotti dalla stessa ditta che puo essere laA o la B con probabilita del 50 Se il primo microonde e difettosoqual e la probabilita condizionata che sia difettoso anche il secondo

10 Hai chiesto ad un vicino di innaffiare una piantina delicata mentre seiin vacanza Pensi che senza acqua la piantina muoia con probabilita08 mentre se innaffiata questa probabilita si ridurrebbe a 015 Latua fiducia che il vicino si ricordi di innaffiarla e del 90

1 Qual e la probabilita che la pianta sia ancora viva al tuo ritorno2 Se fosse morta quale sarebbe la probabilita che il vicino si sia

dimenticato di innaffiarla

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 63 88

Esercizi - 6

11 Una compagnia di assicurazioni classifica i suoi clienti in tre fascebasso rischio medio rischio alto rischio Le sue statistiche indicanoche le probabilita che un cliente delle tre fasce abbia un incidenteentro un periodo di un anno sono rispettivamente 005 015 e 030Se il 20 dei clienti sono a basso rischio il 50 a medio rischio e il30 ad alto rischio che percentuale dei clienti avra mediamenteincidenti in un lasso di un anno Se un cliente non ha avuto incidentinel 1987 qual e la probabilita che appartenga a ciascuna delle trefasce

12 Se un votante scelto a caso e favorevole ad una certa riforma conprobabilita di 07 qual e la probabilita che su 10 votanti esattamente7 siano favorevoli

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 64 88

Variabili aleatorie

Una variabile aleatoria (o anche variabile aleatoria) e una variabile chepuo assumere valori diversi in dipendenza da qualche fenomeno aleatorio

fenomeno lancio di 2 dadivariabile aleatoria somma dei 2 dadi

fenomeno 3 lanci di una monetavariabile aleatoria numero di rdquotesterdquo complessivo

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 65 88

Funzione di Ripartizione

Sia X una variabile aleatoria Si chiama funzione di ripartizione di X lafunzione F che associa ad ogni numero reale a la probabilita che X siaminore o uguale ad a cioe P(X le a) = FX (a)

Nel caso della moneta (fair) lanciata 3 volte (X indica il numero di testecomplessivo)

FX (a) =

⎧⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎨⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎩

0 if a lt 0

18 per 0 le a lt 1

18 + 38 = 48 per 1 le a lt 2

48 + 38 = 78 per 2 le a lt 3

88 = 1 per a ge 3

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 66 88

Funzione di densita o di massa

Sia X una variabile aleatoria Si chiama funzione di densita di X lafunzione f che associa ad ogni numero reale a la probabilita che X siauguale ad a indicata con fX (a)

Nel caso della moneta (fair) lanciata 3 volte (X indica il numero di testecomplessivo)

fX (a) =

⎧⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎨⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎩

18 per a = 0

38 per a = 1

38 per a = 2

18 per a = 3

0 altrimenti

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 67 88

Valore Atteso

Chiamato anche media (expectation in inglese) e appunto una mediapesata dei possibili valori di una variabile aleatoria Il peso dato a ciascunvalore e la probabilita data a quello specifico valore

E[X ] =sumi

aiP(X = ai)

Esempio dado truccato

valore 6 con probabilita 712

valori da 1 a 5 con probabilita 112

La variabile aleatoria X indica la faccia risultante dal lancio di un dado

E[X ] = 1

12lowast 1 + 1

12lowast 2 + 1

12lowast 3 + 1

12lowast 4 + 1

12lowast 5 + 7

12lowast 6 = 475

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 68 88

Valore Atteso - Proprieta

Sia X una variabile aleatoria con valore atteso E[X ] Se c e una costanteallora anche cX e X + c sono variabili casuali In particolare valgono leseguenti proprieta

E[cX ] = cE[X ]E[X + c] = E[X ] + c

Sia Y una variabile aleatoria Allora

E[X +Y ] = E[X ] +E[Y ]se e solo se X e Y sono independenti

E[XY ] = E[X ]E[Y ]

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 69 88

Varianza

Ersquo il valore atteso del quadrato della differenza tra la variabile aleatoria e ilsuo valore atteso

Var(X ) = E[(X minusE[X ])2] = E[X 2] minus (E[X ])2

La radice quadrata viene detta deviazione standard di X

Esempio dado truccato

E[X 2] = 1

12lowast 12 + 1

12lowast 22 + 1

12lowast 32 + 1

12lowast 42 + 1

12lowast 52 + 7

12lowast 62 ≃ 255

Var(X ) = E[X 2] minus (E[X ])2 ≃ 255 minus 4752 ≃ 3

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 70 88

Varianza - proprieta

Sia X una variabile aleatoria e c una costante Allora valgono le seguentiproprieta

1 Var(cX ) = c2Var(X )

2 Var(X + c) = Var(X )

NOTA

Var(X +X ) ne Var(X ) +Var(X )

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 71 88

Covarianza

Siano X Y due variabili aleatorie con valore atteso rispettivamenteE[X ] = microX e E[Y ] = microY La covarianza e definita come segue

Cov(X Y ) = E[(X minus microX )(Y minus microY )] = = E[XY ] minus microXmicroY

Proprieta

1 Cov(X Y ) = Cov(Y X )2 Cov(X X ) = Var(X )3 Sia a una costante allora

Cov(aX Y ) = aCov(X Y )

4 Sia Z una variabile aleatoria allora

Cov(X + Z Y ) = Cov(X Y ) + Cov(Z Y )

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 72 88

Esercizi - 1

1 Consideriamo una variabile aleatoria X che puo assumere i valori 12o 3 Se sappiamo che

fX (1) = 1

3 fX (2) = 3

7

1 Quanto vale fX (3)2 Disegnare il grafico di questa funzione di massa3 Disegnare il grafico della relativa funzione di ripartizione

2 Dimostrare che se X1 e X2 hanno la stessa distribuzione allora

Cov(X1 +X2X1 minusX2) = 0

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 73 88

Esercizi - 2

3 La funzione di ripartizione di X e definita come segue

FX (x) =

⎧⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎨⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎩

0 per x le 0

x2 per 0 le x lt 1

23 per 1 le x lt 2

1112 per 2 le x lt 3

1 per x ge 3

Se ne tracci il graficoQuanto vale P(X gt 12)Quanto vale P(2 le X le 4)Quanto vale P(X le 3)Quanto vale P(X = 1)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 74 88

Esercizi - 3

4 Un tipo di prodotti vengono classificati a seconda dei loro difetti edella fabbrica che li ha prodotti Sia X1 il numero (1 o 2) dellafabbrica e sia X2 il numero di difetti per pezzo (che possono essere da0 a 3) di un prodotto scelto a caso tra la totalita di quelli esistentiLa tabella seguente riporta la funzione di massa di probabilitacongiunta per queste due variabili aleatorie discrete Le righe siriferiscono alla variabile X1 mentre le colonne alla variabile X2

Trova le distribuzioni marginali di X1 e X2Calcola media e varianza di X2

0 1 2 31 18 116 316 182 116 116 18 14

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 75 88

Scipy

Scipy e un modulo che permette di utilizzare varie distribuzioni diprobabilita sia di tipo discreto che continuo

La sintassi generale e la seguente Scipystatsltnome distribuzionegt

rvs(size=z) restituisce un vettore di numeri casuali estrattisecondo la distribuzione di lunghezza z

pdf(x) restituisce il vettore della densita della distribuzionevalutata nei valori del vettore di input x (pmf per le discrete)

cdf(x) restituisce il vettore della funzione di ripartizione (ocumulativa) della distribuzione valutata nei valori del vettore di inputx

ppf(q) restituisce il vettore dei quantili della distribuzione valutatanei valori del vettore di input q

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 76 88

Variabili aleatorie discrete Binomiale

gtgtgt from scipystats import binom

gtgtgt rv = binom(n p)

rvrvs(x) restituisce un vettore di x numeri estratti secondo unadistribuzione Binomiale di parametri n p

rvpmf(x) restituisce la probabilita di ottenere esattamente x

successi in un esperimento dicotomico (01) ripetuto n volte con unaprobabilita di successo p (x puo essere un vettore)

rvcdf(q) restituisce il valore della funzione di ripartizione in q (qpuo essere un vettore)

rvppf(p) restituisce il valore del quantile di ordine p

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 77 88

Variabili aleatorie discrete Ipergeometrica

Supponiamo di avere M = 20 animali di cui n = 7 cani Se vogliamosapere la probabilita di trovare un dato numero di cani se scegliamoN = 12 dei 20 animali in maniera casuale possiamo usare una distribuzioneipergeometrica in questo modo

gtgtgt from scipystats import hypergeom

gtgtgt [M n N] = [20 7 12]

gtgtgt rv = hypergeom(M n N)

rvpmf(x) restituisce la probabilita di estrarre esattamente x cani

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 78 88

Variabili aleatorie discrete Geometrica

gtgtgt from scipystats import geom

gtgtgt rv = geom(p)

rvpmf(x) restituisce la probabilita di avere un successo dopoesattamente x insuccessi in una successione di esperimenti dicotomici(esito 01) con una probabilita di successo p (x puo essere un vettore)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 79 88

Variabili aleatorie discrete Poisson

La distribuzione di Poisson viene usata spesso come modello per il numerodi volte per cui un evento avviene in un dato intervallo di tempo (ospazio) Ad esempio si puo utilizzare per misurare il numero di chiamatericevute da un call center in una mattinata

gtgtgt from scipystats import poisson

gtgtgt mu = 2

gtgtgt rv = poisson(mu)

rvpmf(x) restituisce il seguente valore

f (x) = exp(minusmicro)microx

x

In questo caso x rappresenta il numero di eventi per cui si vuole calcolarela probabilita sapendo che in media ne accadono micro

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 80 88

Variabili aleatorie continue Uniforme

In Scipy la funzione uniforme e soltanto continua Questo significa chenella generazione di numeri casuali otterro dati di tipo float Possiamotuttavia simulare una variabile discreta estraendo la parte intera delrisultato ottenuto

gtgtgt from scipystats import uniform

gtgtgt rv = uniform()

Il comando uniform() crea una distribuzione uniforme nellrsquointervallo[01] Possiamo creare una distribuzione uniforme qualsiasi usandouniform(x y - x) per lrsquointervallo [x y]

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 81 88

Variabili aleatorie continue

norm(mu sigma) variabile Gaussiana (o Normale) di media micro edeviazione standard σ

expon(scale = 1 lambda) variabile Esponenziale di parametroλ

Altre distribuzioni (con relativa documentazione) disponibili suhttpsdocsscipyorgdocscipyreferencestatshtml

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 82 88

Esercizi - 1

1 Unrsquourna contiene 10 palline di cui 4 bianche e 6 nere Si eseguono 5estrazioni con reimmissione

1 Tracciare grafico della funzione massa di probabilita della variabilecasuale X = rdquonumero di palline bianche estratterdquo

2 Calcolare la probabilita di estrarre 2 palline bianche3 Calcolare la probabilita di estrarre al piu 2 palline bianche4 Calcolare la probabilita di estrarre almeno 2 palline bianche5 Qual e il numero minimo x tale che la probabilita di estrarre al piu x

palline bianche sia almeno 08

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 83 88

Esercizi - 2

2 Si eseguono 10 estrazioni senza reimmissione da unrsquourna

1 Tracciare il grafico della funzione massa di probabilita della variabilecasuale X = rdquonumero di palline bianche estratterdquo nei seguenti casi

1 lrsquourna contiene 100 palline di cui 20 bianche e le restanti nere2 lrsquourna contiene 100 palline di cui 2 bianche e le restanti nere

2 Tracciare il grafico della funzione massa di probabilita della variabilecasuale X nel caso dellrsquourna 1 se si eseguono 25 estrazioni

3 Consideriamo lrsquourna 1 e N = 10 estrazioni Si aumenti il numero totaleM di palline nellrsquourna mantenendo uguale a 02 la frazione di pallinebianche Per ciascun valore di M confrontare graficamente ladistribuzione di probabilita del numero di palline bianche estratte nelcaso di estrazioni con e senza reimmissione Provare con 20 40 e 200palline bianche

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 84 88

Esercizi - 3

3 Calcolare la probabilita di ottenere piu teste che croci lanciando 7volte una moneta truccata con probabilita di avere croce pari a 045

4 Calcolare la probabilita di avere almeno 3 sei lanciando 5 dadi a 12facce

5 Calcolare la probabilita di estrarre 20 euro da un sacco contenente 47monete da 1 centesimo e 53 da 2 euro estraendo (uniformemente) acaso 10 monete senza reinserirle

6 Un grammo di uranio emette mediamente 2152 particelle α ognimillisecondo Qual e con buona approssimazione la probabilita che ungrammo di uranio emetta al piu 2000 particelle α in un millisecondo

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 85 88

Esercizi - 4

7 Un uomo si risveglia in mezzo al deserto senza acqua Dopo ogniminuto ha una probabilita del 3 di perdere conoscenza per via dellecondizioni estreme Calcolare la probabilita che lrsquouomo perdaconoscenza dopo almeno due ore e la probabilita che lrsquouomo perdaconoscenza dopo esattamente un quarto drsquoora

8 Sia X una variabile aleatoria normale di parametri micro = 10 e σ = 36Calcola

1 P(X gt 5)2 P(4 le X le 16)3 P(X le 8)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 86 88

Esercizi - 5

9 Il numero di errori tipografici per pagina di una certa rivista segue unadistribuzione di Poisson Sapendo che mediamente sono presenti 02errori per pagina determinare la probabilita che una pagina contenga

1 nessun refuso2 piu refusi

10 Arrivi alla fermata dellrsquoautobus alle 1000 e sei certo che ne passerauno in un momento distribuito uniformemente tra le 1000 e le 1030

1 Qual e la probabilita che tu debba aspettare piu di 10 minuti2 Se alle 1015 lrsquoautobus non e ancora arrivato qual e la probabilita che

tu debba aspettare almeno altri 10 minuti

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 87 88

Esercizi - 6

11 Il signor Jones e convinto che il tempo di vita di una automobile (inmigliaia di chilometri percorse) sia una variabile aleatoria esponenzialedi parametro 120 Il signor Smith ha una macchina usata da vendereche ha percorso circa 10 000 chilometri

1 Se il signor Jones decide di comprarla che probabilita ha di farle farealmeno altri 20 000 chilometri prima che sia da buttare

2 Il modello assunto dal signor Jones e ragionevole

12 Sia X una variabile casuale binomiale di parametri n = 100 e p = 07

1 Tracciate la funzione di ripartizione di X2 Calcolate il primo quartile il quantile di ordine 09 e la mediana di X3 Calcolare la probabilita P(X le 60)4 Calcolare la probabilita P(X le 88)5 Trovare il piu piccolo valore x tale che P(X le x) ge 09

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 88 88

  • Lezione 1
    • Script in Python
    • Numpy
    • Esercizi
    • Pandas
    • Esercizi
      • Lezione 2
        • File csv
        • DataFrame
        • Accesso ai DataFrame
        • Frequenze
        • Esercizi
          • Lezione 3
            • Matplotlib
            • Grafici a Barre
            • Istogrammi
            • Cumulativa empirica
            • Boxplot
            • QQplot
            • Diagramma di Pareto
            • Esercizi
              • Lezione 4
                • Definizioni
                • Probabilitagrave condizionata
                • Indipendenza
                • Esercizi
                  • Lezione 5
                    • Variabili Aleatorie
                    • Funzione di Ripartizione
                    • Funzione di Densitagrave
                    • Valore Atteso
                    • Varianza
                    • Covarianza
                    • Esercizi
                      • Lezione 6
                        • Scipy - Variabili Discrete
                        • Scipy - Variabili continue
                        • 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) SAD 20182019 January 12 2019 49 88

Esercizi - 1

Utilizzando il file capellicsv dai csv del laboratorio

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) SAD 20182019 January 12 2019 50 88

Esercizi - 2

Utilizzando il file dati-ospedalicsv dai csv del laboratorio

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 e canipdf

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 51 88

Sample space

Un esperimento e qualsiasi processo che produce una realizzazione (oosservazione) Lrsquoinsieme di tutte le possibili realizzazioni di un esperimentoviene detto sample space ed indicato con S

lancio di 2 monete

S = (T T ) (T C) (C T ) (C C)

gara di 3 cavalli (ab c)

S = tutti i possibili ordinamenti di(ab c)= (ab c) (a cb) (c b a)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 52 88

Eventi

lancio di 2 monete

S = (T T ) (T C) (C T ) (C C)

A = 2 monete uguali

A = (T T ) (C C)

B = 2 monete diverse

B = Ac = (T C) (C T )

gara di 3 cavalli

A = cavallo a vincente

A = (ab c) (a c b)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 53 88

Probabilita - 1

Consideriamo un esperimento con sample space S Supponiamo che adogni evento A sia associato un numero chiamato probabilita di A edindicato con P(A) che soddisfa le seguenti proprieta

1 Per ogni evento A la probabilita di A e un numero tra 0 e 1

0 le P(A) le 1

2 La probabilita del sample space S e 1

P(S) = 1

3 La probabilita dellrsquounione di eventi disgiunti e uguale alla somma delleprobabilita di tali eventi

P(A cupB) = P(A) + P(B)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 54 88

Probabilita - 2

In generale 2 eventi potrebbero non essere disgiunti

P(A cupB) = P(A) + P(B) minus P(A capB)

Esempio un certo negozio accetta pagamenti o con carte di credito VISAo Mastercard

1 22 dei clienti ha Mastercard

2 58 dei clienti ha VISA

3 14 dei clienti ha entrambe

Qual e la probabilita che un cliente ha almeno una delle 2 carte

P(A) = 022 P(B) = 058

P(A cupB) = P(A) + P(B) minus P(A capB) = 022 + 058 minus 014 = 066

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 55 88

Probabilita condizionata - 1

Se alcune informazioni riguardo lrsquoesito di un esperimento sono disponibiliparliamo di probabilita condizionata

Esempio lancio di 2 dadi

S = (11) (12) (65) (66)

Probabilita che la somma sia 10 (evento B) sapendo che il primo dadomostra 4 (evento A)

(41) (42) (43) (44) (45) (46)

P(B ∣A) = 16

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 56 88

Probabilita condizionata - 2

In generale

P(B ∣A) = P(A capB)P(A)

Supponiamo lrsquoesito sia in A

Per essere anche in B deve essere in entrambi A e B cioe in A capB

Sapendo che A e gia accaduto il nostro nuovo sample space diventa A

la probabilita di A capB viene calcolata rispetto ad A

Nel caso dei dadi

P(B ∣A) = P((46))P((41) (42) (43) (44) (45) (46)) = 136

16= 1

6

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 57 88

Indipendenza

In generale sapere che A e accaduto modifica le chance che B accadaNel caso cio non avvenga cioe se P(B ∣A) = P(B) allora i 2 eventi sidicono indipendenti In questo caso sapere che A e accaduto nonaggiunge alcuna informazione

SiccomeP(A capB) = P(B ∣A)P(A)

Abbiamo che B e indipendente da A se

P(A capB) = P(B)P(A)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 58 88

Esercizi - 1

1 Svolgere gli esercizi di combinatoria

2 Si consideri il seguente esperimento casuale rdquosi lancia tre volte unamonetardquo Qual e lo spazio degli esiti di questo esperimento casualeSi scriva esplicitamente lrsquoevento rdquosi ottengono piu teste che crocirdquo

3 Si consideri il seguente esperimento casuale rdquoSi tirano due dadirdquo Siconsiderino gli eventi E = rdquola somma dei punteggi e disparirdquo F = rdquoilprimo dado realizza un 1rdquo e G = rdquola somma dei punteggi e 5rdquo Sidescrivano gli eventi E cap F E cup F F capG E cap F c e E cap F capG

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 59 88

Esercizi - 2

4 Si consideri il seguente esperimento casuale rdquoUn sistema e compostoda 4 componenti ciascuno dei quali o funziona oppure e guasto Siosserva lo stato dei componenti ottenendo un vettore (x1 x2 x3 x4)dove xi e 1 oppure 0 a seconda che il componente i-esimo funzionioppure nordquo

1 Da quanti elementi e formato lo spazio degli esiti2 Il sistema nel suo insieme funziona fintantoche entrambi i componenti

1 e 2 oppure entrambi i componenti 3 e 4 funzionano Specifica tuttigli esiti dellrsquoevento il rdquosistema funzionardquo

3 Sia E lrsquoevento rdquoi componenti 1 e 3 sono guastirdquo Quanti esiti contiene

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 60 88

Esercizi - 3

5 Si dimostri che in uno spazio degli esiti Ω dotato di una probabilita Pper ogni evento E F sub Ω vale la disuguaglianza seguente

P(E cap F ) ge P(E) + P(F ) minus 1

6 Un gruppo di 5 bambini e 10 bambine e in fila in ordine casuale nelsenso che tutte le 15 possibili permutazioni si suppongonoequiprobabili

1 Qual e la probabilita che il quarto della fila sia un bambino2 E il dodicesimo3 Qual e la probabilita che un determinato bambino occupi la terza

posizione

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 61 88

Esercizi - 4

7 In un comune vi sono 5 alberghi Se 3 persone devono scegliere unalbergo in cui pernottare qual e la probabilita che finiscano tutte inalberghi differenti Che cosa stiamo assumendo senza dirloesplicitamente

8 La media del salario annuale di un gruppo di 100 lavoratori impiegatinellrsquoamministrazione di una grande azienda e di 130000 dollari conuna deviazione standard di 20000 dollari Se si prende una persona acaso da questo gruppo cosa possiamo dire sulla probabilita che il suosalario sia

1 tra i 90000 e i 170000 dollari2 superiore a 150000 dollari

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 62 88

Esercizi - 5

9 In una certa regione vi sono due ditte che producono forni amicroonde Quelli della fabbrica A sono difettosi con probabilita 005mentre quelli della fabbrica B con probabilita 001 Supponi di averacquistato due apparecchi prodotti dalla stessa ditta che puo essere laA o la B con probabilita del 50 Se il primo microonde e difettosoqual e la probabilita condizionata che sia difettoso anche il secondo

10 Hai chiesto ad un vicino di innaffiare una piantina delicata mentre seiin vacanza Pensi che senza acqua la piantina muoia con probabilita08 mentre se innaffiata questa probabilita si ridurrebbe a 015 Latua fiducia che il vicino si ricordi di innaffiarla e del 90

1 Qual e la probabilita che la pianta sia ancora viva al tuo ritorno2 Se fosse morta quale sarebbe la probabilita che il vicino si sia

dimenticato di innaffiarla

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 63 88

Esercizi - 6

11 Una compagnia di assicurazioni classifica i suoi clienti in tre fascebasso rischio medio rischio alto rischio Le sue statistiche indicanoche le probabilita che un cliente delle tre fasce abbia un incidenteentro un periodo di un anno sono rispettivamente 005 015 e 030Se il 20 dei clienti sono a basso rischio il 50 a medio rischio e il30 ad alto rischio che percentuale dei clienti avra mediamenteincidenti in un lasso di un anno Se un cliente non ha avuto incidentinel 1987 qual e la probabilita che appartenga a ciascuna delle trefasce

12 Se un votante scelto a caso e favorevole ad una certa riforma conprobabilita di 07 qual e la probabilita che su 10 votanti esattamente7 siano favorevoli

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 64 88

Variabili aleatorie

Una variabile aleatoria (o anche variabile aleatoria) e una variabile chepuo assumere valori diversi in dipendenza da qualche fenomeno aleatorio

fenomeno lancio di 2 dadivariabile aleatoria somma dei 2 dadi

fenomeno 3 lanci di una monetavariabile aleatoria numero di rdquotesterdquo complessivo

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 65 88

Funzione di Ripartizione

Sia X una variabile aleatoria Si chiama funzione di ripartizione di X lafunzione F che associa ad ogni numero reale a la probabilita che X siaminore o uguale ad a cioe P(X le a) = FX (a)

Nel caso della moneta (fair) lanciata 3 volte (X indica il numero di testecomplessivo)

FX (a) =

⎧⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎨⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎩

0 if a lt 0

18 per 0 le a lt 1

18 + 38 = 48 per 1 le a lt 2

48 + 38 = 78 per 2 le a lt 3

88 = 1 per a ge 3

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 66 88

Funzione di densita o di massa

Sia X una variabile aleatoria Si chiama funzione di densita di X lafunzione f che associa ad ogni numero reale a la probabilita che X siauguale ad a indicata con fX (a)

Nel caso della moneta (fair) lanciata 3 volte (X indica il numero di testecomplessivo)

fX (a) =

⎧⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎨⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎩

18 per a = 0

38 per a = 1

38 per a = 2

18 per a = 3

0 altrimenti

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 67 88

Valore Atteso

Chiamato anche media (expectation in inglese) e appunto una mediapesata dei possibili valori di una variabile aleatoria Il peso dato a ciascunvalore e la probabilita data a quello specifico valore

E[X ] =sumi

aiP(X = ai)

Esempio dado truccato

valore 6 con probabilita 712

valori da 1 a 5 con probabilita 112

La variabile aleatoria X indica la faccia risultante dal lancio di un dado

E[X ] = 1

12lowast 1 + 1

12lowast 2 + 1

12lowast 3 + 1

12lowast 4 + 1

12lowast 5 + 7

12lowast 6 = 475

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 68 88

Valore Atteso - Proprieta

Sia X una variabile aleatoria con valore atteso E[X ] Se c e una costanteallora anche cX e X + c sono variabili casuali In particolare valgono leseguenti proprieta

E[cX ] = cE[X ]E[X + c] = E[X ] + c

Sia Y una variabile aleatoria Allora

E[X +Y ] = E[X ] +E[Y ]se e solo se X e Y sono independenti

E[XY ] = E[X ]E[Y ]

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 69 88

Varianza

Ersquo il valore atteso del quadrato della differenza tra la variabile aleatoria e ilsuo valore atteso

Var(X ) = E[(X minusE[X ])2] = E[X 2] minus (E[X ])2

La radice quadrata viene detta deviazione standard di X

Esempio dado truccato

E[X 2] = 1

12lowast 12 + 1

12lowast 22 + 1

12lowast 32 + 1

12lowast 42 + 1

12lowast 52 + 7

12lowast 62 ≃ 255

Var(X ) = E[X 2] minus (E[X ])2 ≃ 255 minus 4752 ≃ 3

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 70 88

Varianza - proprieta

Sia X una variabile aleatoria e c una costante Allora valgono le seguentiproprieta

1 Var(cX ) = c2Var(X )

2 Var(X + c) = Var(X )

NOTA

Var(X +X ) ne Var(X ) +Var(X )

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 71 88

Covarianza

Siano X Y due variabili aleatorie con valore atteso rispettivamenteE[X ] = microX e E[Y ] = microY La covarianza e definita come segue

Cov(X Y ) = E[(X minus microX )(Y minus microY )] = = E[XY ] minus microXmicroY

Proprieta

1 Cov(X Y ) = Cov(Y X )2 Cov(X X ) = Var(X )3 Sia a una costante allora

Cov(aX Y ) = aCov(X Y )

4 Sia Z una variabile aleatoria allora

Cov(X + Z Y ) = Cov(X Y ) + Cov(Z Y )

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 72 88

Esercizi - 1

1 Consideriamo una variabile aleatoria X che puo assumere i valori 12o 3 Se sappiamo che

fX (1) = 1

3 fX (2) = 3

7

1 Quanto vale fX (3)2 Disegnare il grafico di questa funzione di massa3 Disegnare il grafico della relativa funzione di ripartizione

2 Dimostrare che se X1 e X2 hanno la stessa distribuzione allora

Cov(X1 +X2X1 minusX2) = 0

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 73 88

Esercizi - 2

3 La funzione di ripartizione di X e definita come segue

FX (x) =

⎧⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎨⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎩

0 per x le 0

x2 per 0 le x lt 1

23 per 1 le x lt 2

1112 per 2 le x lt 3

1 per x ge 3

Se ne tracci il graficoQuanto vale P(X gt 12)Quanto vale P(2 le X le 4)Quanto vale P(X le 3)Quanto vale P(X = 1)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 74 88

Esercizi - 3

4 Un tipo di prodotti vengono classificati a seconda dei loro difetti edella fabbrica che li ha prodotti Sia X1 il numero (1 o 2) dellafabbrica e sia X2 il numero di difetti per pezzo (che possono essere da0 a 3) di un prodotto scelto a caso tra la totalita di quelli esistentiLa tabella seguente riporta la funzione di massa di probabilitacongiunta per queste due variabili aleatorie discrete Le righe siriferiscono alla variabile X1 mentre le colonne alla variabile X2

Trova le distribuzioni marginali di X1 e X2Calcola media e varianza di X2

0 1 2 31 18 116 316 182 116 116 18 14

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 75 88

Scipy

Scipy e un modulo che permette di utilizzare varie distribuzioni diprobabilita sia di tipo discreto che continuo

La sintassi generale e la seguente Scipystatsltnome distribuzionegt

rvs(size=z) restituisce un vettore di numeri casuali estrattisecondo la distribuzione di lunghezza z

pdf(x) restituisce il vettore della densita della distribuzionevalutata nei valori del vettore di input x (pmf per le discrete)

cdf(x) restituisce il vettore della funzione di ripartizione (ocumulativa) della distribuzione valutata nei valori del vettore di inputx

ppf(q) restituisce il vettore dei quantili della distribuzione valutatanei valori del vettore di input q

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 76 88

Variabili aleatorie discrete Binomiale

gtgtgt from scipystats import binom

gtgtgt rv = binom(n p)

rvrvs(x) restituisce un vettore di x numeri estratti secondo unadistribuzione Binomiale di parametri n p

rvpmf(x) restituisce la probabilita di ottenere esattamente x

successi in un esperimento dicotomico (01) ripetuto n volte con unaprobabilita di successo p (x puo essere un vettore)

rvcdf(q) restituisce il valore della funzione di ripartizione in q (qpuo essere un vettore)

rvppf(p) restituisce il valore del quantile di ordine p

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 77 88

Variabili aleatorie discrete Ipergeometrica

Supponiamo di avere M = 20 animali di cui n = 7 cani Se vogliamosapere la probabilita di trovare un dato numero di cani se scegliamoN = 12 dei 20 animali in maniera casuale possiamo usare una distribuzioneipergeometrica in questo modo

gtgtgt from scipystats import hypergeom

gtgtgt [M n N] = [20 7 12]

gtgtgt rv = hypergeom(M n N)

rvpmf(x) restituisce la probabilita di estrarre esattamente x cani

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 78 88

Variabili aleatorie discrete Geometrica

gtgtgt from scipystats import geom

gtgtgt rv = geom(p)

rvpmf(x) restituisce la probabilita di avere un successo dopoesattamente x insuccessi in una successione di esperimenti dicotomici(esito 01) con una probabilita di successo p (x puo essere un vettore)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 79 88

Variabili aleatorie discrete Poisson

La distribuzione di Poisson viene usata spesso come modello per il numerodi volte per cui un evento avviene in un dato intervallo di tempo (ospazio) Ad esempio si puo utilizzare per misurare il numero di chiamatericevute da un call center in una mattinata

gtgtgt from scipystats import poisson

gtgtgt mu = 2

gtgtgt rv = poisson(mu)

rvpmf(x) restituisce il seguente valore

f (x) = exp(minusmicro)microx

x

In questo caso x rappresenta il numero di eventi per cui si vuole calcolarela probabilita sapendo che in media ne accadono micro

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 80 88

Variabili aleatorie continue Uniforme

In Scipy la funzione uniforme e soltanto continua Questo significa chenella generazione di numeri casuali otterro dati di tipo float Possiamotuttavia simulare una variabile discreta estraendo la parte intera delrisultato ottenuto

gtgtgt from scipystats import uniform

gtgtgt rv = uniform()

Il comando uniform() crea una distribuzione uniforme nellrsquointervallo[01] Possiamo creare una distribuzione uniforme qualsiasi usandouniform(x y - x) per lrsquointervallo [x y]

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 81 88

Variabili aleatorie continue

norm(mu sigma) variabile Gaussiana (o Normale) di media micro edeviazione standard σ

expon(scale = 1 lambda) variabile Esponenziale di parametroλ

Altre distribuzioni (con relativa documentazione) disponibili suhttpsdocsscipyorgdocscipyreferencestatshtml

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 82 88

Esercizi - 1

1 Unrsquourna contiene 10 palline di cui 4 bianche e 6 nere Si eseguono 5estrazioni con reimmissione

1 Tracciare grafico della funzione massa di probabilita della variabilecasuale X = rdquonumero di palline bianche estratterdquo

2 Calcolare la probabilita di estrarre 2 palline bianche3 Calcolare la probabilita di estrarre al piu 2 palline bianche4 Calcolare la probabilita di estrarre almeno 2 palline bianche5 Qual e il numero minimo x tale che la probabilita di estrarre al piu x

palline bianche sia almeno 08

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 83 88

Esercizi - 2

2 Si eseguono 10 estrazioni senza reimmissione da unrsquourna

1 Tracciare il grafico della funzione massa di probabilita della variabilecasuale X = rdquonumero di palline bianche estratterdquo nei seguenti casi

1 lrsquourna contiene 100 palline di cui 20 bianche e le restanti nere2 lrsquourna contiene 100 palline di cui 2 bianche e le restanti nere

2 Tracciare il grafico della funzione massa di probabilita della variabilecasuale X nel caso dellrsquourna 1 se si eseguono 25 estrazioni

3 Consideriamo lrsquourna 1 e N = 10 estrazioni Si aumenti il numero totaleM di palline nellrsquourna mantenendo uguale a 02 la frazione di pallinebianche Per ciascun valore di M confrontare graficamente ladistribuzione di probabilita del numero di palline bianche estratte nelcaso di estrazioni con e senza reimmissione Provare con 20 40 e 200palline bianche

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 84 88

Esercizi - 3

3 Calcolare la probabilita di ottenere piu teste che croci lanciando 7volte una moneta truccata con probabilita di avere croce pari a 045

4 Calcolare la probabilita di avere almeno 3 sei lanciando 5 dadi a 12facce

5 Calcolare la probabilita di estrarre 20 euro da un sacco contenente 47monete da 1 centesimo e 53 da 2 euro estraendo (uniformemente) acaso 10 monete senza reinserirle

6 Un grammo di uranio emette mediamente 2152 particelle α ognimillisecondo Qual e con buona approssimazione la probabilita che ungrammo di uranio emetta al piu 2000 particelle α in un millisecondo

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 85 88

Esercizi - 4

7 Un uomo si risveglia in mezzo al deserto senza acqua Dopo ogniminuto ha una probabilita del 3 di perdere conoscenza per via dellecondizioni estreme Calcolare la probabilita che lrsquouomo perdaconoscenza dopo almeno due ore e la probabilita che lrsquouomo perdaconoscenza dopo esattamente un quarto drsquoora

8 Sia X una variabile aleatoria normale di parametri micro = 10 e σ = 36Calcola

1 P(X gt 5)2 P(4 le X le 16)3 P(X le 8)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 86 88

Esercizi - 5

9 Il numero di errori tipografici per pagina di una certa rivista segue unadistribuzione di Poisson Sapendo che mediamente sono presenti 02errori per pagina determinare la probabilita che una pagina contenga

1 nessun refuso2 piu refusi

10 Arrivi alla fermata dellrsquoautobus alle 1000 e sei certo che ne passerauno in un momento distribuito uniformemente tra le 1000 e le 1030

1 Qual e la probabilita che tu debba aspettare piu di 10 minuti2 Se alle 1015 lrsquoautobus non e ancora arrivato qual e la probabilita che

tu debba aspettare almeno altri 10 minuti

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 87 88

Esercizi - 6

11 Il signor Jones e convinto che il tempo di vita di una automobile (inmigliaia di chilometri percorse) sia una variabile aleatoria esponenzialedi parametro 120 Il signor Smith ha una macchina usata da vendereche ha percorso circa 10 000 chilometri

1 Se il signor Jones decide di comprarla che probabilita ha di farle farealmeno altri 20 000 chilometri prima che sia da buttare

2 Il modello assunto dal signor Jones e ragionevole

12 Sia X una variabile casuale binomiale di parametri n = 100 e p = 07

1 Tracciate la funzione di ripartizione di X2 Calcolate il primo quartile il quantile di ordine 09 e la mediana di X3 Calcolare la probabilita P(X le 60)4 Calcolare la probabilita P(X le 88)5 Trovare il piu piccolo valore x tale che P(X le x) ge 09

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 88 88

  • Lezione 1
    • Script in Python
    • Numpy
    • Esercizi
    • Pandas
    • Esercizi
      • Lezione 2
        • File csv
        • DataFrame
        • Accesso ai DataFrame
        • Frequenze
        • Esercizi
          • Lezione 3
            • Matplotlib
            • Grafici a Barre
            • Istogrammi
            • Cumulativa empirica
            • Boxplot
            • QQplot
            • Diagramma di Pareto
            • Esercizi
              • Lezione 4
                • Definizioni
                • Probabilitagrave condizionata
                • Indipendenza
                • Esercizi
                  • Lezione 5
                    • Variabili Aleatorie
                    • Funzione di Ripartizione
                    • Funzione di Densitagrave
                    • Valore Atteso
                    • Varianza
                    • Covarianza
                    • Esercizi
                      • Lezione 6
                        • Scipy - Variabili Discrete
                        • Scipy - Variabili continue
                        • Esercizi

Esercizi - 1

Utilizzando il file capellicsv dai csv del laboratorio

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) SAD 20182019 January 12 2019 50 88

Esercizi - 2

Utilizzando il file dati-ospedalicsv dai csv del laboratorio

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 e canipdf

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 51 88

Sample space

Un esperimento e qualsiasi processo che produce una realizzazione (oosservazione) Lrsquoinsieme di tutte le possibili realizzazioni di un esperimentoviene detto sample space ed indicato con S

lancio di 2 monete

S = (T T ) (T C) (C T ) (C C)

gara di 3 cavalli (ab c)

S = tutti i possibili ordinamenti di(ab c)= (ab c) (a cb) (c b a)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 52 88

Eventi

lancio di 2 monete

S = (T T ) (T C) (C T ) (C C)

A = 2 monete uguali

A = (T T ) (C C)

B = 2 monete diverse

B = Ac = (T C) (C T )

gara di 3 cavalli

A = cavallo a vincente

A = (ab c) (a c b)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 53 88

Probabilita - 1

Consideriamo un esperimento con sample space S Supponiamo che adogni evento A sia associato un numero chiamato probabilita di A edindicato con P(A) che soddisfa le seguenti proprieta

1 Per ogni evento A la probabilita di A e un numero tra 0 e 1

0 le P(A) le 1

2 La probabilita del sample space S e 1

P(S) = 1

3 La probabilita dellrsquounione di eventi disgiunti e uguale alla somma delleprobabilita di tali eventi

P(A cupB) = P(A) + P(B)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 54 88

Probabilita - 2

In generale 2 eventi potrebbero non essere disgiunti

P(A cupB) = P(A) + P(B) minus P(A capB)

Esempio un certo negozio accetta pagamenti o con carte di credito VISAo Mastercard

1 22 dei clienti ha Mastercard

2 58 dei clienti ha VISA

3 14 dei clienti ha entrambe

Qual e la probabilita che un cliente ha almeno una delle 2 carte

P(A) = 022 P(B) = 058

P(A cupB) = P(A) + P(B) minus P(A capB) = 022 + 058 minus 014 = 066

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 55 88

Probabilita condizionata - 1

Se alcune informazioni riguardo lrsquoesito di un esperimento sono disponibiliparliamo di probabilita condizionata

Esempio lancio di 2 dadi

S = (11) (12) (65) (66)

Probabilita che la somma sia 10 (evento B) sapendo che il primo dadomostra 4 (evento A)

(41) (42) (43) (44) (45) (46)

P(B ∣A) = 16

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 56 88

Probabilita condizionata - 2

In generale

P(B ∣A) = P(A capB)P(A)

Supponiamo lrsquoesito sia in A

Per essere anche in B deve essere in entrambi A e B cioe in A capB

Sapendo che A e gia accaduto il nostro nuovo sample space diventa A

la probabilita di A capB viene calcolata rispetto ad A

Nel caso dei dadi

P(B ∣A) = P((46))P((41) (42) (43) (44) (45) (46)) = 136

16= 1

6

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 57 88

Indipendenza

In generale sapere che A e accaduto modifica le chance che B accadaNel caso cio non avvenga cioe se P(B ∣A) = P(B) allora i 2 eventi sidicono indipendenti In questo caso sapere che A e accaduto nonaggiunge alcuna informazione

SiccomeP(A capB) = P(B ∣A)P(A)

Abbiamo che B e indipendente da A se

P(A capB) = P(B)P(A)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 58 88

Esercizi - 1

1 Svolgere gli esercizi di combinatoria

2 Si consideri il seguente esperimento casuale rdquosi lancia tre volte unamonetardquo Qual e lo spazio degli esiti di questo esperimento casualeSi scriva esplicitamente lrsquoevento rdquosi ottengono piu teste che crocirdquo

3 Si consideri il seguente esperimento casuale rdquoSi tirano due dadirdquo Siconsiderino gli eventi E = rdquola somma dei punteggi e disparirdquo F = rdquoilprimo dado realizza un 1rdquo e G = rdquola somma dei punteggi e 5rdquo Sidescrivano gli eventi E cap F E cup F F capG E cap F c e E cap F capG

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 59 88

Esercizi - 2

4 Si consideri il seguente esperimento casuale rdquoUn sistema e compostoda 4 componenti ciascuno dei quali o funziona oppure e guasto Siosserva lo stato dei componenti ottenendo un vettore (x1 x2 x3 x4)dove xi e 1 oppure 0 a seconda che il componente i-esimo funzionioppure nordquo

1 Da quanti elementi e formato lo spazio degli esiti2 Il sistema nel suo insieme funziona fintantoche entrambi i componenti

1 e 2 oppure entrambi i componenti 3 e 4 funzionano Specifica tuttigli esiti dellrsquoevento il rdquosistema funzionardquo

3 Sia E lrsquoevento rdquoi componenti 1 e 3 sono guastirdquo Quanti esiti contiene

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 60 88

Esercizi - 3

5 Si dimostri che in uno spazio degli esiti Ω dotato di una probabilita Pper ogni evento E F sub Ω vale la disuguaglianza seguente

P(E cap F ) ge P(E) + P(F ) minus 1

6 Un gruppo di 5 bambini e 10 bambine e in fila in ordine casuale nelsenso che tutte le 15 possibili permutazioni si suppongonoequiprobabili

1 Qual e la probabilita che il quarto della fila sia un bambino2 E il dodicesimo3 Qual e la probabilita che un determinato bambino occupi la terza

posizione

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 61 88

Esercizi - 4

7 In un comune vi sono 5 alberghi Se 3 persone devono scegliere unalbergo in cui pernottare qual e la probabilita che finiscano tutte inalberghi differenti Che cosa stiamo assumendo senza dirloesplicitamente

8 La media del salario annuale di un gruppo di 100 lavoratori impiegatinellrsquoamministrazione di una grande azienda e di 130000 dollari conuna deviazione standard di 20000 dollari Se si prende una persona acaso da questo gruppo cosa possiamo dire sulla probabilita che il suosalario sia

1 tra i 90000 e i 170000 dollari2 superiore a 150000 dollari

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 62 88

Esercizi - 5

9 In una certa regione vi sono due ditte che producono forni amicroonde Quelli della fabbrica A sono difettosi con probabilita 005mentre quelli della fabbrica B con probabilita 001 Supponi di averacquistato due apparecchi prodotti dalla stessa ditta che puo essere laA o la B con probabilita del 50 Se il primo microonde e difettosoqual e la probabilita condizionata che sia difettoso anche il secondo

10 Hai chiesto ad un vicino di innaffiare una piantina delicata mentre seiin vacanza Pensi che senza acqua la piantina muoia con probabilita08 mentre se innaffiata questa probabilita si ridurrebbe a 015 Latua fiducia che il vicino si ricordi di innaffiarla e del 90

1 Qual e la probabilita che la pianta sia ancora viva al tuo ritorno2 Se fosse morta quale sarebbe la probabilita che il vicino si sia

dimenticato di innaffiarla

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 63 88

Esercizi - 6

11 Una compagnia di assicurazioni classifica i suoi clienti in tre fascebasso rischio medio rischio alto rischio Le sue statistiche indicanoche le probabilita che un cliente delle tre fasce abbia un incidenteentro un periodo di un anno sono rispettivamente 005 015 e 030Se il 20 dei clienti sono a basso rischio il 50 a medio rischio e il30 ad alto rischio che percentuale dei clienti avra mediamenteincidenti in un lasso di un anno Se un cliente non ha avuto incidentinel 1987 qual e la probabilita che appartenga a ciascuna delle trefasce

12 Se un votante scelto a caso e favorevole ad una certa riforma conprobabilita di 07 qual e la probabilita che su 10 votanti esattamente7 siano favorevoli

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 64 88

Variabili aleatorie

Una variabile aleatoria (o anche variabile aleatoria) e una variabile chepuo assumere valori diversi in dipendenza da qualche fenomeno aleatorio

fenomeno lancio di 2 dadivariabile aleatoria somma dei 2 dadi

fenomeno 3 lanci di una monetavariabile aleatoria numero di rdquotesterdquo complessivo

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 65 88

Funzione di Ripartizione

Sia X una variabile aleatoria Si chiama funzione di ripartizione di X lafunzione F che associa ad ogni numero reale a la probabilita che X siaminore o uguale ad a cioe P(X le a) = FX (a)

Nel caso della moneta (fair) lanciata 3 volte (X indica il numero di testecomplessivo)

FX (a) =

⎧⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎨⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎩

0 if a lt 0

18 per 0 le a lt 1

18 + 38 = 48 per 1 le a lt 2

48 + 38 = 78 per 2 le a lt 3

88 = 1 per a ge 3

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 66 88

Funzione di densita o di massa

Sia X una variabile aleatoria Si chiama funzione di densita di X lafunzione f che associa ad ogni numero reale a la probabilita che X siauguale ad a indicata con fX (a)

Nel caso della moneta (fair) lanciata 3 volte (X indica il numero di testecomplessivo)

fX (a) =

⎧⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎨⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎩

18 per a = 0

38 per a = 1

38 per a = 2

18 per a = 3

0 altrimenti

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 67 88

Valore Atteso

Chiamato anche media (expectation in inglese) e appunto una mediapesata dei possibili valori di una variabile aleatoria Il peso dato a ciascunvalore e la probabilita data a quello specifico valore

E[X ] =sumi

aiP(X = ai)

Esempio dado truccato

valore 6 con probabilita 712

valori da 1 a 5 con probabilita 112

La variabile aleatoria X indica la faccia risultante dal lancio di un dado

E[X ] = 1

12lowast 1 + 1

12lowast 2 + 1

12lowast 3 + 1

12lowast 4 + 1

12lowast 5 + 7

12lowast 6 = 475

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 68 88

Valore Atteso - Proprieta

Sia X una variabile aleatoria con valore atteso E[X ] Se c e una costanteallora anche cX e X + c sono variabili casuali In particolare valgono leseguenti proprieta

E[cX ] = cE[X ]E[X + c] = E[X ] + c

Sia Y una variabile aleatoria Allora

E[X +Y ] = E[X ] +E[Y ]se e solo se X e Y sono independenti

E[XY ] = E[X ]E[Y ]

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 69 88

Varianza

Ersquo il valore atteso del quadrato della differenza tra la variabile aleatoria e ilsuo valore atteso

Var(X ) = E[(X minusE[X ])2] = E[X 2] minus (E[X ])2

La radice quadrata viene detta deviazione standard di X

Esempio dado truccato

E[X 2] = 1

12lowast 12 + 1

12lowast 22 + 1

12lowast 32 + 1

12lowast 42 + 1

12lowast 52 + 7

12lowast 62 ≃ 255

Var(X ) = E[X 2] minus (E[X ])2 ≃ 255 minus 4752 ≃ 3

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 70 88

Varianza - proprieta

Sia X una variabile aleatoria e c una costante Allora valgono le seguentiproprieta

1 Var(cX ) = c2Var(X )

2 Var(X + c) = Var(X )

NOTA

Var(X +X ) ne Var(X ) +Var(X )

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 71 88

Covarianza

Siano X Y due variabili aleatorie con valore atteso rispettivamenteE[X ] = microX e E[Y ] = microY La covarianza e definita come segue

Cov(X Y ) = E[(X minus microX )(Y minus microY )] = = E[XY ] minus microXmicroY

Proprieta

1 Cov(X Y ) = Cov(Y X )2 Cov(X X ) = Var(X )3 Sia a una costante allora

Cov(aX Y ) = aCov(X Y )

4 Sia Z una variabile aleatoria allora

Cov(X + Z Y ) = Cov(X Y ) + Cov(Z Y )

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 72 88

Esercizi - 1

1 Consideriamo una variabile aleatoria X che puo assumere i valori 12o 3 Se sappiamo che

fX (1) = 1

3 fX (2) = 3

7

1 Quanto vale fX (3)2 Disegnare il grafico di questa funzione di massa3 Disegnare il grafico della relativa funzione di ripartizione

2 Dimostrare che se X1 e X2 hanno la stessa distribuzione allora

Cov(X1 +X2X1 minusX2) = 0

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 73 88

Esercizi - 2

3 La funzione di ripartizione di X e definita come segue

FX (x) =

⎧⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎨⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎩

0 per x le 0

x2 per 0 le x lt 1

23 per 1 le x lt 2

1112 per 2 le x lt 3

1 per x ge 3

Se ne tracci il graficoQuanto vale P(X gt 12)Quanto vale P(2 le X le 4)Quanto vale P(X le 3)Quanto vale P(X = 1)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 74 88

Esercizi - 3

4 Un tipo di prodotti vengono classificati a seconda dei loro difetti edella fabbrica che li ha prodotti Sia X1 il numero (1 o 2) dellafabbrica e sia X2 il numero di difetti per pezzo (che possono essere da0 a 3) di un prodotto scelto a caso tra la totalita di quelli esistentiLa tabella seguente riporta la funzione di massa di probabilitacongiunta per queste due variabili aleatorie discrete Le righe siriferiscono alla variabile X1 mentre le colonne alla variabile X2

Trova le distribuzioni marginali di X1 e X2Calcola media e varianza di X2

0 1 2 31 18 116 316 182 116 116 18 14

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 75 88

Scipy

Scipy e un modulo che permette di utilizzare varie distribuzioni diprobabilita sia di tipo discreto che continuo

La sintassi generale e la seguente Scipystatsltnome distribuzionegt

rvs(size=z) restituisce un vettore di numeri casuali estrattisecondo la distribuzione di lunghezza z

pdf(x) restituisce il vettore della densita della distribuzionevalutata nei valori del vettore di input x (pmf per le discrete)

cdf(x) restituisce il vettore della funzione di ripartizione (ocumulativa) della distribuzione valutata nei valori del vettore di inputx

ppf(q) restituisce il vettore dei quantili della distribuzione valutatanei valori del vettore di input q

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 76 88

Variabili aleatorie discrete Binomiale

gtgtgt from scipystats import binom

gtgtgt rv = binom(n p)

rvrvs(x) restituisce un vettore di x numeri estratti secondo unadistribuzione Binomiale di parametri n p

rvpmf(x) restituisce la probabilita di ottenere esattamente x

successi in un esperimento dicotomico (01) ripetuto n volte con unaprobabilita di successo p (x puo essere un vettore)

rvcdf(q) restituisce il valore della funzione di ripartizione in q (qpuo essere un vettore)

rvppf(p) restituisce il valore del quantile di ordine p

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 77 88

Variabili aleatorie discrete Ipergeometrica

Supponiamo di avere M = 20 animali di cui n = 7 cani Se vogliamosapere la probabilita di trovare un dato numero di cani se scegliamoN = 12 dei 20 animali in maniera casuale possiamo usare una distribuzioneipergeometrica in questo modo

gtgtgt from scipystats import hypergeom

gtgtgt [M n N] = [20 7 12]

gtgtgt rv = hypergeom(M n N)

rvpmf(x) restituisce la probabilita di estrarre esattamente x cani

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 78 88

Variabili aleatorie discrete Geometrica

gtgtgt from scipystats import geom

gtgtgt rv = geom(p)

rvpmf(x) restituisce la probabilita di avere un successo dopoesattamente x insuccessi in una successione di esperimenti dicotomici(esito 01) con una probabilita di successo p (x puo essere un vettore)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 79 88

Variabili aleatorie discrete Poisson

La distribuzione di Poisson viene usata spesso come modello per il numerodi volte per cui un evento avviene in un dato intervallo di tempo (ospazio) Ad esempio si puo utilizzare per misurare il numero di chiamatericevute da un call center in una mattinata

gtgtgt from scipystats import poisson

gtgtgt mu = 2

gtgtgt rv = poisson(mu)

rvpmf(x) restituisce il seguente valore

f (x) = exp(minusmicro)microx

x

In questo caso x rappresenta il numero di eventi per cui si vuole calcolarela probabilita sapendo che in media ne accadono micro

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 80 88

Variabili aleatorie continue Uniforme

In Scipy la funzione uniforme e soltanto continua Questo significa chenella generazione di numeri casuali otterro dati di tipo float Possiamotuttavia simulare una variabile discreta estraendo la parte intera delrisultato ottenuto

gtgtgt from scipystats import uniform

gtgtgt rv = uniform()

Il comando uniform() crea una distribuzione uniforme nellrsquointervallo[01] Possiamo creare una distribuzione uniforme qualsiasi usandouniform(x y - x) per lrsquointervallo [x y]

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 81 88

Variabili aleatorie continue

norm(mu sigma) variabile Gaussiana (o Normale) di media micro edeviazione standard σ

expon(scale = 1 lambda) variabile Esponenziale di parametroλ

Altre distribuzioni (con relativa documentazione) disponibili suhttpsdocsscipyorgdocscipyreferencestatshtml

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 82 88

Esercizi - 1

1 Unrsquourna contiene 10 palline di cui 4 bianche e 6 nere Si eseguono 5estrazioni con reimmissione

1 Tracciare grafico della funzione massa di probabilita della variabilecasuale X = rdquonumero di palline bianche estratterdquo

2 Calcolare la probabilita di estrarre 2 palline bianche3 Calcolare la probabilita di estrarre al piu 2 palline bianche4 Calcolare la probabilita di estrarre almeno 2 palline bianche5 Qual e il numero minimo x tale che la probabilita di estrarre al piu x

palline bianche sia almeno 08

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 83 88

Esercizi - 2

2 Si eseguono 10 estrazioni senza reimmissione da unrsquourna

1 Tracciare il grafico della funzione massa di probabilita della variabilecasuale X = rdquonumero di palline bianche estratterdquo nei seguenti casi

1 lrsquourna contiene 100 palline di cui 20 bianche e le restanti nere2 lrsquourna contiene 100 palline di cui 2 bianche e le restanti nere

2 Tracciare il grafico della funzione massa di probabilita della variabilecasuale X nel caso dellrsquourna 1 se si eseguono 25 estrazioni

3 Consideriamo lrsquourna 1 e N = 10 estrazioni Si aumenti il numero totaleM di palline nellrsquourna mantenendo uguale a 02 la frazione di pallinebianche Per ciascun valore di M confrontare graficamente ladistribuzione di probabilita del numero di palline bianche estratte nelcaso di estrazioni con e senza reimmissione Provare con 20 40 e 200palline bianche

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 84 88

Esercizi - 3

3 Calcolare la probabilita di ottenere piu teste che croci lanciando 7volte una moneta truccata con probabilita di avere croce pari a 045

4 Calcolare la probabilita di avere almeno 3 sei lanciando 5 dadi a 12facce

5 Calcolare la probabilita di estrarre 20 euro da un sacco contenente 47monete da 1 centesimo e 53 da 2 euro estraendo (uniformemente) acaso 10 monete senza reinserirle

6 Un grammo di uranio emette mediamente 2152 particelle α ognimillisecondo Qual e con buona approssimazione la probabilita che ungrammo di uranio emetta al piu 2000 particelle α in un millisecondo

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 85 88

Esercizi - 4

7 Un uomo si risveglia in mezzo al deserto senza acqua Dopo ogniminuto ha una probabilita del 3 di perdere conoscenza per via dellecondizioni estreme Calcolare la probabilita che lrsquouomo perdaconoscenza dopo almeno due ore e la probabilita che lrsquouomo perdaconoscenza dopo esattamente un quarto drsquoora

8 Sia X una variabile aleatoria normale di parametri micro = 10 e σ = 36Calcola

1 P(X gt 5)2 P(4 le X le 16)3 P(X le 8)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 86 88

Esercizi - 5

9 Il numero di errori tipografici per pagina di una certa rivista segue unadistribuzione di Poisson Sapendo che mediamente sono presenti 02errori per pagina determinare la probabilita che una pagina contenga

1 nessun refuso2 piu refusi

10 Arrivi alla fermata dellrsquoautobus alle 1000 e sei certo che ne passerauno in un momento distribuito uniformemente tra le 1000 e le 1030

1 Qual e la probabilita che tu debba aspettare piu di 10 minuti2 Se alle 1015 lrsquoautobus non e ancora arrivato qual e la probabilita che

tu debba aspettare almeno altri 10 minuti

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 87 88

Esercizi - 6

11 Il signor Jones e convinto che il tempo di vita di una automobile (inmigliaia di chilometri percorse) sia una variabile aleatoria esponenzialedi parametro 120 Il signor Smith ha una macchina usata da vendereche ha percorso circa 10 000 chilometri

1 Se il signor Jones decide di comprarla che probabilita ha di farle farealmeno altri 20 000 chilometri prima che sia da buttare

2 Il modello assunto dal signor Jones e ragionevole

12 Sia X una variabile casuale binomiale di parametri n = 100 e p = 07

1 Tracciate la funzione di ripartizione di X2 Calcolate il primo quartile il quantile di ordine 09 e la mediana di X3 Calcolare la probabilita P(X le 60)4 Calcolare la probabilita P(X le 88)5 Trovare il piu piccolo valore x tale che P(X le x) ge 09

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 88 88

  • Lezione 1
    • Script in Python
    • Numpy
    • Esercizi
    • Pandas
    • Esercizi
      • Lezione 2
        • File csv
        • DataFrame
        • Accesso ai DataFrame
        • Frequenze
        • Esercizi
          • Lezione 3
            • Matplotlib
            • Grafici a Barre
            • Istogrammi
            • Cumulativa empirica
            • Boxplot
            • QQplot
            • Diagramma di Pareto
            • Esercizi
              • Lezione 4
                • Definizioni
                • Probabilitagrave condizionata
                • Indipendenza
                • Esercizi
                  • Lezione 5
                    • Variabili Aleatorie
                    • Funzione di Ripartizione
                    • Funzione di Densitagrave
                    • Valore Atteso
                    • Varianza
                    • Covarianza
                    • Esercizi
                      • Lezione 6
                        • Scipy - Variabili Discrete
                        • Scipy - Variabili continue
                        • Esercizi

Esercizi - 2

Utilizzando il file dati-ospedalicsv dai csv del laboratorio

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 e canipdf

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 51 88

Sample space

Un esperimento e qualsiasi processo che produce una realizzazione (oosservazione) Lrsquoinsieme di tutte le possibili realizzazioni di un esperimentoviene detto sample space ed indicato con S

lancio di 2 monete

S = (T T ) (T C) (C T ) (C C)

gara di 3 cavalli (ab c)

S = tutti i possibili ordinamenti di(ab c)= (ab c) (a cb) (c b a)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 52 88

Eventi

lancio di 2 monete

S = (T T ) (T C) (C T ) (C C)

A = 2 monete uguali

A = (T T ) (C C)

B = 2 monete diverse

B = Ac = (T C) (C T )

gara di 3 cavalli

A = cavallo a vincente

A = (ab c) (a c b)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 53 88

Probabilita - 1

Consideriamo un esperimento con sample space S Supponiamo che adogni evento A sia associato un numero chiamato probabilita di A edindicato con P(A) che soddisfa le seguenti proprieta

1 Per ogni evento A la probabilita di A e un numero tra 0 e 1

0 le P(A) le 1

2 La probabilita del sample space S e 1

P(S) = 1

3 La probabilita dellrsquounione di eventi disgiunti e uguale alla somma delleprobabilita di tali eventi

P(A cupB) = P(A) + P(B)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 54 88

Probabilita - 2

In generale 2 eventi potrebbero non essere disgiunti

P(A cupB) = P(A) + P(B) minus P(A capB)

Esempio un certo negozio accetta pagamenti o con carte di credito VISAo Mastercard

1 22 dei clienti ha Mastercard

2 58 dei clienti ha VISA

3 14 dei clienti ha entrambe

Qual e la probabilita che un cliente ha almeno una delle 2 carte

P(A) = 022 P(B) = 058

P(A cupB) = P(A) + P(B) minus P(A capB) = 022 + 058 minus 014 = 066

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 55 88

Probabilita condizionata - 1

Se alcune informazioni riguardo lrsquoesito di un esperimento sono disponibiliparliamo di probabilita condizionata

Esempio lancio di 2 dadi

S = (11) (12) (65) (66)

Probabilita che la somma sia 10 (evento B) sapendo che il primo dadomostra 4 (evento A)

(41) (42) (43) (44) (45) (46)

P(B ∣A) = 16

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 56 88

Probabilita condizionata - 2

In generale

P(B ∣A) = P(A capB)P(A)

Supponiamo lrsquoesito sia in A

Per essere anche in B deve essere in entrambi A e B cioe in A capB

Sapendo che A e gia accaduto il nostro nuovo sample space diventa A

la probabilita di A capB viene calcolata rispetto ad A

Nel caso dei dadi

P(B ∣A) = P((46))P((41) (42) (43) (44) (45) (46)) = 136

16= 1

6

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 57 88

Indipendenza

In generale sapere che A e accaduto modifica le chance che B accadaNel caso cio non avvenga cioe se P(B ∣A) = P(B) allora i 2 eventi sidicono indipendenti In questo caso sapere che A e accaduto nonaggiunge alcuna informazione

SiccomeP(A capB) = P(B ∣A)P(A)

Abbiamo che B e indipendente da A se

P(A capB) = P(B)P(A)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 58 88

Esercizi - 1

1 Svolgere gli esercizi di combinatoria

2 Si consideri il seguente esperimento casuale rdquosi lancia tre volte unamonetardquo Qual e lo spazio degli esiti di questo esperimento casualeSi scriva esplicitamente lrsquoevento rdquosi ottengono piu teste che crocirdquo

3 Si consideri il seguente esperimento casuale rdquoSi tirano due dadirdquo Siconsiderino gli eventi E = rdquola somma dei punteggi e disparirdquo F = rdquoilprimo dado realizza un 1rdquo e G = rdquola somma dei punteggi e 5rdquo Sidescrivano gli eventi E cap F E cup F F capG E cap F c e E cap F capG

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 59 88

Esercizi - 2

4 Si consideri il seguente esperimento casuale rdquoUn sistema e compostoda 4 componenti ciascuno dei quali o funziona oppure e guasto Siosserva lo stato dei componenti ottenendo un vettore (x1 x2 x3 x4)dove xi e 1 oppure 0 a seconda che il componente i-esimo funzionioppure nordquo

1 Da quanti elementi e formato lo spazio degli esiti2 Il sistema nel suo insieme funziona fintantoche entrambi i componenti

1 e 2 oppure entrambi i componenti 3 e 4 funzionano Specifica tuttigli esiti dellrsquoevento il rdquosistema funzionardquo

3 Sia E lrsquoevento rdquoi componenti 1 e 3 sono guastirdquo Quanti esiti contiene

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 60 88

Esercizi - 3

5 Si dimostri che in uno spazio degli esiti Ω dotato di una probabilita Pper ogni evento E F sub Ω vale la disuguaglianza seguente

P(E cap F ) ge P(E) + P(F ) minus 1

6 Un gruppo di 5 bambini e 10 bambine e in fila in ordine casuale nelsenso che tutte le 15 possibili permutazioni si suppongonoequiprobabili

1 Qual e la probabilita che il quarto della fila sia un bambino2 E il dodicesimo3 Qual e la probabilita che un determinato bambino occupi la terza

posizione

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 61 88

Esercizi - 4

7 In un comune vi sono 5 alberghi Se 3 persone devono scegliere unalbergo in cui pernottare qual e la probabilita che finiscano tutte inalberghi differenti Che cosa stiamo assumendo senza dirloesplicitamente

8 La media del salario annuale di un gruppo di 100 lavoratori impiegatinellrsquoamministrazione di una grande azienda e di 130000 dollari conuna deviazione standard di 20000 dollari Se si prende una persona acaso da questo gruppo cosa possiamo dire sulla probabilita che il suosalario sia

1 tra i 90000 e i 170000 dollari2 superiore a 150000 dollari

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 62 88

Esercizi - 5

9 In una certa regione vi sono due ditte che producono forni amicroonde Quelli della fabbrica A sono difettosi con probabilita 005mentre quelli della fabbrica B con probabilita 001 Supponi di averacquistato due apparecchi prodotti dalla stessa ditta che puo essere laA o la B con probabilita del 50 Se il primo microonde e difettosoqual e la probabilita condizionata che sia difettoso anche il secondo

10 Hai chiesto ad un vicino di innaffiare una piantina delicata mentre seiin vacanza Pensi che senza acqua la piantina muoia con probabilita08 mentre se innaffiata questa probabilita si ridurrebbe a 015 Latua fiducia che il vicino si ricordi di innaffiarla e del 90

1 Qual e la probabilita che la pianta sia ancora viva al tuo ritorno2 Se fosse morta quale sarebbe la probabilita che il vicino si sia

dimenticato di innaffiarla

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 63 88

Esercizi - 6

11 Una compagnia di assicurazioni classifica i suoi clienti in tre fascebasso rischio medio rischio alto rischio Le sue statistiche indicanoche le probabilita che un cliente delle tre fasce abbia un incidenteentro un periodo di un anno sono rispettivamente 005 015 e 030Se il 20 dei clienti sono a basso rischio il 50 a medio rischio e il30 ad alto rischio che percentuale dei clienti avra mediamenteincidenti in un lasso di un anno Se un cliente non ha avuto incidentinel 1987 qual e la probabilita che appartenga a ciascuna delle trefasce

12 Se un votante scelto a caso e favorevole ad una certa riforma conprobabilita di 07 qual e la probabilita che su 10 votanti esattamente7 siano favorevoli

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 64 88

Variabili aleatorie

Una variabile aleatoria (o anche variabile aleatoria) e una variabile chepuo assumere valori diversi in dipendenza da qualche fenomeno aleatorio

fenomeno lancio di 2 dadivariabile aleatoria somma dei 2 dadi

fenomeno 3 lanci di una monetavariabile aleatoria numero di rdquotesterdquo complessivo

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 65 88

Funzione di Ripartizione

Sia X una variabile aleatoria Si chiama funzione di ripartizione di X lafunzione F che associa ad ogni numero reale a la probabilita che X siaminore o uguale ad a cioe P(X le a) = FX (a)

Nel caso della moneta (fair) lanciata 3 volte (X indica il numero di testecomplessivo)

FX (a) =

⎧⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎨⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎩

0 if a lt 0

18 per 0 le a lt 1

18 + 38 = 48 per 1 le a lt 2

48 + 38 = 78 per 2 le a lt 3

88 = 1 per a ge 3

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 66 88

Funzione di densita o di massa

Sia X una variabile aleatoria Si chiama funzione di densita di X lafunzione f che associa ad ogni numero reale a la probabilita che X siauguale ad a indicata con fX (a)

Nel caso della moneta (fair) lanciata 3 volte (X indica il numero di testecomplessivo)

fX (a) =

⎧⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎨⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎩

18 per a = 0

38 per a = 1

38 per a = 2

18 per a = 3

0 altrimenti

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 67 88

Valore Atteso

Chiamato anche media (expectation in inglese) e appunto una mediapesata dei possibili valori di una variabile aleatoria Il peso dato a ciascunvalore e la probabilita data a quello specifico valore

E[X ] =sumi

aiP(X = ai)

Esempio dado truccato

valore 6 con probabilita 712

valori da 1 a 5 con probabilita 112

La variabile aleatoria X indica la faccia risultante dal lancio di un dado

E[X ] = 1

12lowast 1 + 1

12lowast 2 + 1

12lowast 3 + 1

12lowast 4 + 1

12lowast 5 + 7

12lowast 6 = 475

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 68 88

Valore Atteso - Proprieta

Sia X una variabile aleatoria con valore atteso E[X ] Se c e una costanteallora anche cX e X + c sono variabili casuali In particolare valgono leseguenti proprieta

E[cX ] = cE[X ]E[X + c] = E[X ] + c

Sia Y una variabile aleatoria Allora

E[X +Y ] = E[X ] +E[Y ]se e solo se X e Y sono independenti

E[XY ] = E[X ]E[Y ]

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 69 88

Varianza

Ersquo il valore atteso del quadrato della differenza tra la variabile aleatoria e ilsuo valore atteso

Var(X ) = E[(X minusE[X ])2] = E[X 2] minus (E[X ])2

La radice quadrata viene detta deviazione standard di X

Esempio dado truccato

E[X 2] = 1

12lowast 12 + 1

12lowast 22 + 1

12lowast 32 + 1

12lowast 42 + 1

12lowast 52 + 7

12lowast 62 ≃ 255

Var(X ) = E[X 2] minus (E[X ])2 ≃ 255 minus 4752 ≃ 3

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 70 88

Varianza - proprieta

Sia X una variabile aleatoria e c una costante Allora valgono le seguentiproprieta

1 Var(cX ) = c2Var(X )

2 Var(X + c) = Var(X )

NOTA

Var(X +X ) ne Var(X ) +Var(X )

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 71 88

Covarianza

Siano X Y due variabili aleatorie con valore atteso rispettivamenteE[X ] = microX e E[Y ] = microY La covarianza e definita come segue

Cov(X Y ) = E[(X minus microX )(Y minus microY )] = = E[XY ] minus microXmicroY

Proprieta

1 Cov(X Y ) = Cov(Y X )2 Cov(X X ) = Var(X )3 Sia a una costante allora

Cov(aX Y ) = aCov(X Y )

4 Sia Z una variabile aleatoria allora

Cov(X + Z Y ) = Cov(X Y ) + Cov(Z Y )

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 72 88

Esercizi - 1

1 Consideriamo una variabile aleatoria X che puo assumere i valori 12o 3 Se sappiamo che

fX (1) = 1

3 fX (2) = 3

7

1 Quanto vale fX (3)2 Disegnare il grafico di questa funzione di massa3 Disegnare il grafico della relativa funzione di ripartizione

2 Dimostrare che se X1 e X2 hanno la stessa distribuzione allora

Cov(X1 +X2X1 minusX2) = 0

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 73 88

Esercizi - 2

3 La funzione di ripartizione di X e definita come segue

FX (x) =

⎧⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎨⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎩

0 per x le 0

x2 per 0 le x lt 1

23 per 1 le x lt 2

1112 per 2 le x lt 3

1 per x ge 3

Se ne tracci il graficoQuanto vale P(X gt 12)Quanto vale P(2 le X le 4)Quanto vale P(X le 3)Quanto vale P(X = 1)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 74 88

Esercizi - 3

4 Un tipo di prodotti vengono classificati a seconda dei loro difetti edella fabbrica che li ha prodotti Sia X1 il numero (1 o 2) dellafabbrica e sia X2 il numero di difetti per pezzo (che possono essere da0 a 3) di un prodotto scelto a caso tra la totalita di quelli esistentiLa tabella seguente riporta la funzione di massa di probabilitacongiunta per queste due variabili aleatorie discrete Le righe siriferiscono alla variabile X1 mentre le colonne alla variabile X2

Trova le distribuzioni marginali di X1 e X2Calcola media e varianza di X2

0 1 2 31 18 116 316 182 116 116 18 14

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 75 88

Scipy

Scipy e un modulo che permette di utilizzare varie distribuzioni diprobabilita sia di tipo discreto che continuo

La sintassi generale e la seguente Scipystatsltnome distribuzionegt

rvs(size=z) restituisce un vettore di numeri casuali estrattisecondo la distribuzione di lunghezza z

pdf(x) restituisce il vettore della densita della distribuzionevalutata nei valori del vettore di input x (pmf per le discrete)

cdf(x) restituisce il vettore della funzione di ripartizione (ocumulativa) della distribuzione valutata nei valori del vettore di inputx

ppf(q) restituisce il vettore dei quantili della distribuzione valutatanei valori del vettore di input q

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 76 88

Variabili aleatorie discrete Binomiale

gtgtgt from scipystats import binom

gtgtgt rv = binom(n p)

rvrvs(x) restituisce un vettore di x numeri estratti secondo unadistribuzione Binomiale di parametri n p

rvpmf(x) restituisce la probabilita di ottenere esattamente x

successi in un esperimento dicotomico (01) ripetuto n volte con unaprobabilita di successo p (x puo essere un vettore)

rvcdf(q) restituisce il valore della funzione di ripartizione in q (qpuo essere un vettore)

rvppf(p) restituisce il valore del quantile di ordine p

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 77 88

Variabili aleatorie discrete Ipergeometrica

Supponiamo di avere M = 20 animali di cui n = 7 cani Se vogliamosapere la probabilita di trovare un dato numero di cani se scegliamoN = 12 dei 20 animali in maniera casuale possiamo usare una distribuzioneipergeometrica in questo modo

gtgtgt from scipystats import hypergeom

gtgtgt [M n N] = [20 7 12]

gtgtgt rv = hypergeom(M n N)

rvpmf(x) restituisce la probabilita di estrarre esattamente x cani

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 78 88

Variabili aleatorie discrete Geometrica

gtgtgt from scipystats import geom

gtgtgt rv = geom(p)

rvpmf(x) restituisce la probabilita di avere un successo dopoesattamente x insuccessi in una successione di esperimenti dicotomici(esito 01) con una probabilita di successo p (x puo essere un vettore)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 79 88

Variabili aleatorie discrete Poisson

La distribuzione di Poisson viene usata spesso come modello per il numerodi volte per cui un evento avviene in un dato intervallo di tempo (ospazio) Ad esempio si puo utilizzare per misurare il numero di chiamatericevute da un call center in una mattinata

gtgtgt from scipystats import poisson

gtgtgt mu = 2

gtgtgt rv = poisson(mu)

rvpmf(x) restituisce il seguente valore

f (x) = exp(minusmicro)microx

x

In questo caso x rappresenta il numero di eventi per cui si vuole calcolarela probabilita sapendo che in media ne accadono micro

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 80 88

Variabili aleatorie continue Uniforme

In Scipy la funzione uniforme e soltanto continua Questo significa chenella generazione di numeri casuali otterro dati di tipo float Possiamotuttavia simulare una variabile discreta estraendo la parte intera delrisultato ottenuto

gtgtgt from scipystats import uniform

gtgtgt rv = uniform()

Il comando uniform() crea una distribuzione uniforme nellrsquointervallo[01] Possiamo creare una distribuzione uniforme qualsiasi usandouniform(x y - x) per lrsquointervallo [x y]

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 81 88

Variabili aleatorie continue

norm(mu sigma) variabile Gaussiana (o Normale) di media micro edeviazione standard σ

expon(scale = 1 lambda) variabile Esponenziale di parametroλ

Altre distribuzioni (con relativa documentazione) disponibili suhttpsdocsscipyorgdocscipyreferencestatshtml

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 82 88

Esercizi - 1

1 Unrsquourna contiene 10 palline di cui 4 bianche e 6 nere Si eseguono 5estrazioni con reimmissione

1 Tracciare grafico della funzione massa di probabilita della variabilecasuale X = rdquonumero di palline bianche estratterdquo

2 Calcolare la probabilita di estrarre 2 palline bianche3 Calcolare la probabilita di estrarre al piu 2 palline bianche4 Calcolare la probabilita di estrarre almeno 2 palline bianche5 Qual e il numero minimo x tale che la probabilita di estrarre al piu x

palline bianche sia almeno 08

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 83 88

Esercizi - 2

2 Si eseguono 10 estrazioni senza reimmissione da unrsquourna

1 Tracciare il grafico della funzione massa di probabilita della variabilecasuale X = rdquonumero di palline bianche estratterdquo nei seguenti casi

1 lrsquourna contiene 100 palline di cui 20 bianche e le restanti nere2 lrsquourna contiene 100 palline di cui 2 bianche e le restanti nere

2 Tracciare il grafico della funzione massa di probabilita della variabilecasuale X nel caso dellrsquourna 1 se si eseguono 25 estrazioni

3 Consideriamo lrsquourna 1 e N = 10 estrazioni Si aumenti il numero totaleM di palline nellrsquourna mantenendo uguale a 02 la frazione di pallinebianche Per ciascun valore di M confrontare graficamente ladistribuzione di probabilita del numero di palline bianche estratte nelcaso di estrazioni con e senza reimmissione Provare con 20 40 e 200palline bianche

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 84 88

Esercizi - 3

3 Calcolare la probabilita di ottenere piu teste che croci lanciando 7volte una moneta truccata con probabilita di avere croce pari a 045

4 Calcolare la probabilita di avere almeno 3 sei lanciando 5 dadi a 12facce

5 Calcolare la probabilita di estrarre 20 euro da un sacco contenente 47monete da 1 centesimo e 53 da 2 euro estraendo (uniformemente) acaso 10 monete senza reinserirle

6 Un grammo di uranio emette mediamente 2152 particelle α ognimillisecondo Qual e con buona approssimazione la probabilita che ungrammo di uranio emetta al piu 2000 particelle α in un millisecondo

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 85 88

Esercizi - 4

7 Un uomo si risveglia in mezzo al deserto senza acqua Dopo ogniminuto ha una probabilita del 3 di perdere conoscenza per via dellecondizioni estreme Calcolare la probabilita che lrsquouomo perdaconoscenza dopo almeno due ore e la probabilita che lrsquouomo perdaconoscenza dopo esattamente un quarto drsquoora

8 Sia X una variabile aleatoria normale di parametri micro = 10 e σ = 36Calcola

1 P(X gt 5)2 P(4 le X le 16)3 P(X le 8)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 86 88

Esercizi - 5

9 Il numero di errori tipografici per pagina di una certa rivista segue unadistribuzione di Poisson Sapendo che mediamente sono presenti 02errori per pagina determinare la probabilita che una pagina contenga

1 nessun refuso2 piu refusi

10 Arrivi alla fermata dellrsquoautobus alle 1000 e sei certo che ne passerauno in un momento distribuito uniformemente tra le 1000 e le 1030

1 Qual e la probabilita che tu debba aspettare piu di 10 minuti2 Se alle 1015 lrsquoautobus non e ancora arrivato qual e la probabilita che

tu debba aspettare almeno altri 10 minuti

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 87 88

Esercizi - 6

11 Il signor Jones e convinto che il tempo di vita di una automobile (inmigliaia di chilometri percorse) sia una variabile aleatoria esponenzialedi parametro 120 Il signor Smith ha una macchina usata da vendereche ha percorso circa 10 000 chilometri

1 Se il signor Jones decide di comprarla che probabilita ha di farle farealmeno altri 20 000 chilometri prima che sia da buttare

2 Il modello assunto dal signor Jones e ragionevole

12 Sia X una variabile casuale binomiale di parametri n = 100 e p = 07

1 Tracciate la funzione di ripartizione di X2 Calcolate il primo quartile il quantile di ordine 09 e la mediana di X3 Calcolare la probabilita P(X le 60)4 Calcolare la probabilita P(X le 88)5 Trovare il piu piccolo valore x tale che P(X le x) ge 09

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 88 88

  • Lezione 1
    • Script in Python
    • Numpy
    • Esercizi
    • Pandas
    • Esercizi
      • Lezione 2
        • File csv
        • DataFrame
        • Accesso ai DataFrame
        • Frequenze
        • Esercizi
          • Lezione 3
            • Matplotlib
            • Grafici a Barre
            • Istogrammi
            • Cumulativa empirica
            • Boxplot
            • QQplot
            • Diagramma di Pareto
            • Esercizi
              • Lezione 4
                • Definizioni
                • Probabilitagrave condizionata
                • Indipendenza
                • Esercizi
                  • Lezione 5
                    • Variabili Aleatorie
                    • Funzione di Ripartizione
                    • Funzione di Densitagrave
                    • Valore Atteso
                    • Varianza
                    • Covarianza
                    • Esercizi
                      • Lezione 6
                        • Scipy - Variabili Discrete
                        • Scipy - Variabili continue
                        • Esercizi

Sample space

Un esperimento e qualsiasi processo che produce una realizzazione (oosservazione) Lrsquoinsieme di tutte le possibili realizzazioni di un esperimentoviene detto sample space ed indicato con S

lancio di 2 monete

S = (T T ) (T C) (C T ) (C C)

gara di 3 cavalli (ab c)

S = tutti i possibili ordinamenti di(ab c)= (ab c) (a cb) (c b a)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 52 88

Eventi

lancio di 2 monete

S = (T T ) (T C) (C T ) (C C)

A = 2 monete uguali

A = (T T ) (C C)

B = 2 monete diverse

B = Ac = (T C) (C T )

gara di 3 cavalli

A = cavallo a vincente

A = (ab c) (a c b)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 53 88

Probabilita - 1

Consideriamo un esperimento con sample space S Supponiamo che adogni evento A sia associato un numero chiamato probabilita di A edindicato con P(A) che soddisfa le seguenti proprieta

1 Per ogni evento A la probabilita di A e un numero tra 0 e 1

0 le P(A) le 1

2 La probabilita del sample space S e 1

P(S) = 1

3 La probabilita dellrsquounione di eventi disgiunti e uguale alla somma delleprobabilita di tali eventi

P(A cupB) = P(A) + P(B)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 54 88

Probabilita - 2

In generale 2 eventi potrebbero non essere disgiunti

P(A cupB) = P(A) + P(B) minus P(A capB)

Esempio un certo negozio accetta pagamenti o con carte di credito VISAo Mastercard

1 22 dei clienti ha Mastercard

2 58 dei clienti ha VISA

3 14 dei clienti ha entrambe

Qual e la probabilita che un cliente ha almeno una delle 2 carte

P(A) = 022 P(B) = 058

P(A cupB) = P(A) + P(B) minus P(A capB) = 022 + 058 minus 014 = 066

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 55 88

Probabilita condizionata - 1

Se alcune informazioni riguardo lrsquoesito di un esperimento sono disponibiliparliamo di probabilita condizionata

Esempio lancio di 2 dadi

S = (11) (12) (65) (66)

Probabilita che la somma sia 10 (evento B) sapendo che il primo dadomostra 4 (evento A)

(41) (42) (43) (44) (45) (46)

P(B ∣A) = 16

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 56 88

Probabilita condizionata - 2

In generale

P(B ∣A) = P(A capB)P(A)

Supponiamo lrsquoesito sia in A

Per essere anche in B deve essere in entrambi A e B cioe in A capB

Sapendo che A e gia accaduto il nostro nuovo sample space diventa A

la probabilita di A capB viene calcolata rispetto ad A

Nel caso dei dadi

P(B ∣A) = P((46))P((41) (42) (43) (44) (45) (46)) = 136

16= 1

6

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 57 88

Indipendenza

In generale sapere che A e accaduto modifica le chance che B accadaNel caso cio non avvenga cioe se P(B ∣A) = P(B) allora i 2 eventi sidicono indipendenti In questo caso sapere che A e accaduto nonaggiunge alcuna informazione

SiccomeP(A capB) = P(B ∣A)P(A)

Abbiamo che B e indipendente da A se

P(A capB) = P(B)P(A)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 58 88

Esercizi - 1

1 Svolgere gli esercizi di combinatoria

2 Si consideri il seguente esperimento casuale rdquosi lancia tre volte unamonetardquo Qual e lo spazio degli esiti di questo esperimento casualeSi scriva esplicitamente lrsquoevento rdquosi ottengono piu teste che crocirdquo

3 Si consideri il seguente esperimento casuale rdquoSi tirano due dadirdquo Siconsiderino gli eventi E = rdquola somma dei punteggi e disparirdquo F = rdquoilprimo dado realizza un 1rdquo e G = rdquola somma dei punteggi e 5rdquo Sidescrivano gli eventi E cap F E cup F F capG E cap F c e E cap F capG

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 59 88

Esercizi - 2

4 Si consideri il seguente esperimento casuale rdquoUn sistema e compostoda 4 componenti ciascuno dei quali o funziona oppure e guasto Siosserva lo stato dei componenti ottenendo un vettore (x1 x2 x3 x4)dove xi e 1 oppure 0 a seconda che il componente i-esimo funzionioppure nordquo

1 Da quanti elementi e formato lo spazio degli esiti2 Il sistema nel suo insieme funziona fintantoche entrambi i componenti

1 e 2 oppure entrambi i componenti 3 e 4 funzionano Specifica tuttigli esiti dellrsquoevento il rdquosistema funzionardquo

3 Sia E lrsquoevento rdquoi componenti 1 e 3 sono guastirdquo Quanti esiti contiene

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 60 88

Esercizi - 3

5 Si dimostri che in uno spazio degli esiti Ω dotato di una probabilita Pper ogni evento E F sub Ω vale la disuguaglianza seguente

P(E cap F ) ge P(E) + P(F ) minus 1

6 Un gruppo di 5 bambini e 10 bambine e in fila in ordine casuale nelsenso che tutte le 15 possibili permutazioni si suppongonoequiprobabili

1 Qual e la probabilita che il quarto della fila sia un bambino2 E il dodicesimo3 Qual e la probabilita che un determinato bambino occupi la terza

posizione

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 61 88

Esercizi - 4

7 In un comune vi sono 5 alberghi Se 3 persone devono scegliere unalbergo in cui pernottare qual e la probabilita che finiscano tutte inalberghi differenti Che cosa stiamo assumendo senza dirloesplicitamente

8 La media del salario annuale di un gruppo di 100 lavoratori impiegatinellrsquoamministrazione di una grande azienda e di 130000 dollari conuna deviazione standard di 20000 dollari Se si prende una persona acaso da questo gruppo cosa possiamo dire sulla probabilita che il suosalario sia

1 tra i 90000 e i 170000 dollari2 superiore a 150000 dollari

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 62 88

Esercizi - 5

9 In una certa regione vi sono due ditte che producono forni amicroonde Quelli della fabbrica A sono difettosi con probabilita 005mentre quelli della fabbrica B con probabilita 001 Supponi di averacquistato due apparecchi prodotti dalla stessa ditta che puo essere laA o la B con probabilita del 50 Se il primo microonde e difettosoqual e la probabilita condizionata che sia difettoso anche il secondo

10 Hai chiesto ad un vicino di innaffiare una piantina delicata mentre seiin vacanza Pensi che senza acqua la piantina muoia con probabilita08 mentre se innaffiata questa probabilita si ridurrebbe a 015 Latua fiducia che il vicino si ricordi di innaffiarla e del 90

1 Qual e la probabilita che la pianta sia ancora viva al tuo ritorno2 Se fosse morta quale sarebbe la probabilita che il vicino si sia

dimenticato di innaffiarla

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 63 88

Esercizi - 6

11 Una compagnia di assicurazioni classifica i suoi clienti in tre fascebasso rischio medio rischio alto rischio Le sue statistiche indicanoche le probabilita che un cliente delle tre fasce abbia un incidenteentro un periodo di un anno sono rispettivamente 005 015 e 030Se il 20 dei clienti sono a basso rischio il 50 a medio rischio e il30 ad alto rischio che percentuale dei clienti avra mediamenteincidenti in un lasso di un anno Se un cliente non ha avuto incidentinel 1987 qual e la probabilita che appartenga a ciascuna delle trefasce

12 Se un votante scelto a caso e favorevole ad una certa riforma conprobabilita di 07 qual e la probabilita che su 10 votanti esattamente7 siano favorevoli

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 64 88

Variabili aleatorie

Una variabile aleatoria (o anche variabile aleatoria) e una variabile chepuo assumere valori diversi in dipendenza da qualche fenomeno aleatorio

fenomeno lancio di 2 dadivariabile aleatoria somma dei 2 dadi

fenomeno 3 lanci di una monetavariabile aleatoria numero di rdquotesterdquo complessivo

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 65 88

Funzione di Ripartizione

Sia X una variabile aleatoria Si chiama funzione di ripartizione di X lafunzione F che associa ad ogni numero reale a la probabilita che X siaminore o uguale ad a cioe P(X le a) = FX (a)

Nel caso della moneta (fair) lanciata 3 volte (X indica il numero di testecomplessivo)

FX (a) =

⎧⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎨⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎩

0 if a lt 0

18 per 0 le a lt 1

18 + 38 = 48 per 1 le a lt 2

48 + 38 = 78 per 2 le a lt 3

88 = 1 per a ge 3

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 66 88

Funzione di densita o di massa

Sia X una variabile aleatoria Si chiama funzione di densita di X lafunzione f che associa ad ogni numero reale a la probabilita che X siauguale ad a indicata con fX (a)

Nel caso della moneta (fair) lanciata 3 volte (X indica il numero di testecomplessivo)

fX (a) =

⎧⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎨⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎩

18 per a = 0

38 per a = 1

38 per a = 2

18 per a = 3

0 altrimenti

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 67 88

Valore Atteso

Chiamato anche media (expectation in inglese) e appunto una mediapesata dei possibili valori di una variabile aleatoria Il peso dato a ciascunvalore e la probabilita data a quello specifico valore

E[X ] =sumi

aiP(X = ai)

Esempio dado truccato

valore 6 con probabilita 712

valori da 1 a 5 con probabilita 112

La variabile aleatoria X indica la faccia risultante dal lancio di un dado

E[X ] = 1

12lowast 1 + 1

12lowast 2 + 1

12lowast 3 + 1

12lowast 4 + 1

12lowast 5 + 7

12lowast 6 = 475

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 68 88

Valore Atteso - Proprieta

Sia X una variabile aleatoria con valore atteso E[X ] Se c e una costanteallora anche cX e X + c sono variabili casuali In particolare valgono leseguenti proprieta

E[cX ] = cE[X ]E[X + c] = E[X ] + c

Sia Y una variabile aleatoria Allora

E[X +Y ] = E[X ] +E[Y ]se e solo se X e Y sono independenti

E[XY ] = E[X ]E[Y ]

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 69 88

Varianza

Ersquo il valore atteso del quadrato della differenza tra la variabile aleatoria e ilsuo valore atteso

Var(X ) = E[(X minusE[X ])2] = E[X 2] minus (E[X ])2

La radice quadrata viene detta deviazione standard di X

Esempio dado truccato

E[X 2] = 1

12lowast 12 + 1

12lowast 22 + 1

12lowast 32 + 1

12lowast 42 + 1

12lowast 52 + 7

12lowast 62 ≃ 255

Var(X ) = E[X 2] minus (E[X ])2 ≃ 255 minus 4752 ≃ 3

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 70 88

Varianza - proprieta

Sia X una variabile aleatoria e c una costante Allora valgono le seguentiproprieta

1 Var(cX ) = c2Var(X )

2 Var(X + c) = Var(X )

NOTA

Var(X +X ) ne Var(X ) +Var(X )

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 71 88

Covarianza

Siano X Y due variabili aleatorie con valore atteso rispettivamenteE[X ] = microX e E[Y ] = microY La covarianza e definita come segue

Cov(X Y ) = E[(X minus microX )(Y minus microY )] = = E[XY ] minus microXmicroY

Proprieta

1 Cov(X Y ) = Cov(Y X )2 Cov(X X ) = Var(X )3 Sia a una costante allora

Cov(aX Y ) = aCov(X Y )

4 Sia Z una variabile aleatoria allora

Cov(X + Z Y ) = Cov(X Y ) + Cov(Z Y )

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 72 88

Esercizi - 1

1 Consideriamo una variabile aleatoria X che puo assumere i valori 12o 3 Se sappiamo che

fX (1) = 1

3 fX (2) = 3

7

1 Quanto vale fX (3)2 Disegnare il grafico di questa funzione di massa3 Disegnare il grafico della relativa funzione di ripartizione

2 Dimostrare che se X1 e X2 hanno la stessa distribuzione allora

Cov(X1 +X2X1 minusX2) = 0

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 73 88

Esercizi - 2

3 La funzione di ripartizione di X e definita come segue

FX (x) =

⎧⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎨⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎩

0 per x le 0

x2 per 0 le x lt 1

23 per 1 le x lt 2

1112 per 2 le x lt 3

1 per x ge 3

Se ne tracci il graficoQuanto vale P(X gt 12)Quanto vale P(2 le X le 4)Quanto vale P(X le 3)Quanto vale P(X = 1)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 74 88

Esercizi - 3

4 Un tipo di prodotti vengono classificati a seconda dei loro difetti edella fabbrica che li ha prodotti Sia X1 il numero (1 o 2) dellafabbrica e sia X2 il numero di difetti per pezzo (che possono essere da0 a 3) di un prodotto scelto a caso tra la totalita di quelli esistentiLa tabella seguente riporta la funzione di massa di probabilitacongiunta per queste due variabili aleatorie discrete Le righe siriferiscono alla variabile X1 mentre le colonne alla variabile X2

Trova le distribuzioni marginali di X1 e X2Calcola media e varianza di X2

0 1 2 31 18 116 316 182 116 116 18 14

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 75 88

Scipy

Scipy e un modulo che permette di utilizzare varie distribuzioni diprobabilita sia di tipo discreto che continuo

La sintassi generale e la seguente Scipystatsltnome distribuzionegt

rvs(size=z) restituisce un vettore di numeri casuali estrattisecondo la distribuzione di lunghezza z

pdf(x) restituisce il vettore della densita della distribuzionevalutata nei valori del vettore di input x (pmf per le discrete)

cdf(x) restituisce il vettore della funzione di ripartizione (ocumulativa) della distribuzione valutata nei valori del vettore di inputx

ppf(q) restituisce il vettore dei quantili della distribuzione valutatanei valori del vettore di input q

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 76 88

Variabili aleatorie discrete Binomiale

gtgtgt from scipystats import binom

gtgtgt rv = binom(n p)

rvrvs(x) restituisce un vettore di x numeri estratti secondo unadistribuzione Binomiale di parametri n p

rvpmf(x) restituisce la probabilita di ottenere esattamente x

successi in un esperimento dicotomico (01) ripetuto n volte con unaprobabilita di successo p (x puo essere un vettore)

rvcdf(q) restituisce il valore della funzione di ripartizione in q (qpuo essere un vettore)

rvppf(p) restituisce il valore del quantile di ordine p

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 77 88

Variabili aleatorie discrete Ipergeometrica

Supponiamo di avere M = 20 animali di cui n = 7 cani Se vogliamosapere la probabilita di trovare un dato numero di cani se scegliamoN = 12 dei 20 animali in maniera casuale possiamo usare una distribuzioneipergeometrica in questo modo

gtgtgt from scipystats import hypergeom

gtgtgt [M n N] = [20 7 12]

gtgtgt rv = hypergeom(M n N)

rvpmf(x) restituisce la probabilita di estrarre esattamente x cani

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 78 88

Variabili aleatorie discrete Geometrica

gtgtgt from scipystats import geom

gtgtgt rv = geom(p)

rvpmf(x) restituisce la probabilita di avere un successo dopoesattamente x insuccessi in una successione di esperimenti dicotomici(esito 01) con una probabilita di successo p (x puo essere un vettore)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 79 88

Variabili aleatorie discrete Poisson

La distribuzione di Poisson viene usata spesso come modello per il numerodi volte per cui un evento avviene in un dato intervallo di tempo (ospazio) Ad esempio si puo utilizzare per misurare il numero di chiamatericevute da un call center in una mattinata

gtgtgt from scipystats import poisson

gtgtgt mu = 2

gtgtgt rv = poisson(mu)

rvpmf(x) restituisce il seguente valore

f (x) = exp(minusmicro)microx

x

In questo caso x rappresenta il numero di eventi per cui si vuole calcolarela probabilita sapendo che in media ne accadono micro

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 80 88

Variabili aleatorie continue Uniforme

In Scipy la funzione uniforme e soltanto continua Questo significa chenella generazione di numeri casuali otterro dati di tipo float Possiamotuttavia simulare una variabile discreta estraendo la parte intera delrisultato ottenuto

gtgtgt from scipystats import uniform

gtgtgt rv = uniform()

Il comando uniform() crea una distribuzione uniforme nellrsquointervallo[01] Possiamo creare una distribuzione uniforme qualsiasi usandouniform(x y - x) per lrsquointervallo [x y]

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 81 88

Variabili aleatorie continue

norm(mu sigma) variabile Gaussiana (o Normale) di media micro edeviazione standard σ

expon(scale = 1 lambda) variabile Esponenziale di parametroλ

Altre distribuzioni (con relativa documentazione) disponibili suhttpsdocsscipyorgdocscipyreferencestatshtml

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 82 88

Esercizi - 1

1 Unrsquourna contiene 10 palline di cui 4 bianche e 6 nere Si eseguono 5estrazioni con reimmissione

1 Tracciare grafico della funzione massa di probabilita della variabilecasuale X = rdquonumero di palline bianche estratterdquo

2 Calcolare la probabilita di estrarre 2 palline bianche3 Calcolare la probabilita di estrarre al piu 2 palline bianche4 Calcolare la probabilita di estrarre almeno 2 palline bianche5 Qual e il numero minimo x tale che la probabilita di estrarre al piu x

palline bianche sia almeno 08

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 83 88

Esercizi - 2

2 Si eseguono 10 estrazioni senza reimmissione da unrsquourna

1 Tracciare il grafico della funzione massa di probabilita della variabilecasuale X = rdquonumero di palline bianche estratterdquo nei seguenti casi

1 lrsquourna contiene 100 palline di cui 20 bianche e le restanti nere2 lrsquourna contiene 100 palline di cui 2 bianche e le restanti nere

2 Tracciare il grafico della funzione massa di probabilita della variabilecasuale X nel caso dellrsquourna 1 se si eseguono 25 estrazioni

3 Consideriamo lrsquourna 1 e N = 10 estrazioni Si aumenti il numero totaleM di palline nellrsquourna mantenendo uguale a 02 la frazione di pallinebianche Per ciascun valore di M confrontare graficamente ladistribuzione di probabilita del numero di palline bianche estratte nelcaso di estrazioni con e senza reimmissione Provare con 20 40 e 200palline bianche

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 84 88

Esercizi - 3

3 Calcolare la probabilita di ottenere piu teste che croci lanciando 7volte una moneta truccata con probabilita di avere croce pari a 045

4 Calcolare la probabilita di avere almeno 3 sei lanciando 5 dadi a 12facce

5 Calcolare la probabilita di estrarre 20 euro da un sacco contenente 47monete da 1 centesimo e 53 da 2 euro estraendo (uniformemente) acaso 10 monete senza reinserirle

6 Un grammo di uranio emette mediamente 2152 particelle α ognimillisecondo Qual e con buona approssimazione la probabilita che ungrammo di uranio emetta al piu 2000 particelle α in un millisecondo

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 85 88

Esercizi - 4

7 Un uomo si risveglia in mezzo al deserto senza acqua Dopo ogniminuto ha una probabilita del 3 di perdere conoscenza per via dellecondizioni estreme Calcolare la probabilita che lrsquouomo perdaconoscenza dopo almeno due ore e la probabilita che lrsquouomo perdaconoscenza dopo esattamente un quarto drsquoora

8 Sia X una variabile aleatoria normale di parametri micro = 10 e σ = 36Calcola

1 P(X gt 5)2 P(4 le X le 16)3 P(X le 8)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 86 88

Esercizi - 5

9 Il numero di errori tipografici per pagina di una certa rivista segue unadistribuzione di Poisson Sapendo che mediamente sono presenti 02errori per pagina determinare la probabilita che una pagina contenga

1 nessun refuso2 piu refusi

10 Arrivi alla fermata dellrsquoautobus alle 1000 e sei certo che ne passerauno in un momento distribuito uniformemente tra le 1000 e le 1030

1 Qual e la probabilita che tu debba aspettare piu di 10 minuti2 Se alle 1015 lrsquoautobus non e ancora arrivato qual e la probabilita che

tu debba aspettare almeno altri 10 minuti

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 87 88

Esercizi - 6

11 Il signor Jones e convinto che il tempo di vita di una automobile (inmigliaia di chilometri percorse) sia una variabile aleatoria esponenzialedi parametro 120 Il signor Smith ha una macchina usata da vendereche ha percorso circa 10 000 chilometri

1 Se il signor Jones decide di comprarla che probabilita ha di farle farealmeno altri 20 000 chilometri prima che sia da buttare

2 Il modello assunto dal signor Jones e ragionevole

12 Sia X una variabile casuale binomiale di parametri n = 100 e p = 07

1 Tracciate la funzione di ripartizione di X2 Calcolate il primo quartile il quantile di ordine 09 e la mediana di X3 Calcolare la probabilita P(X le 60)4 Calcolare la probabilita P(X le 88)5 Trovare il piu piccolo valore x tale che P(X le x) ge 09

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 88 88

  • Lezione 1
    • Script in Python
    • Numpy
    • Esercizi
    • Pandas
    • Esercizi
      • Lezione 2
        • File csv
        • DataFrame
        • Accesso ai DataFrame
        • Frequenze
        • Esercizi
          • Lezione 3
            • Matplotlib
            • Grafici a Barre
            • Istogrammi
            • Cumulativa empirica
            • Boxplot
            • QQplot
            • Diagramma di Pareto
            • Esercizi
              • Lezione 4
                • Definizioni
                • Probabilitagrave condizionata
                • Indipendenza
                • Esercizi
                  • Lezione 5
                    • Variabili Aleatorie
                    • Funzione di Ripartizione
                    • Funzione di Densitagrave
                    • Valore Atteso
                    • Varianza
                    • Covarianza
                    • Esercizi
                      • Lezione 6
                        • Scipy - Variabili Discrete
                        • Scipy - Variabili continue
                        • Esercizi

Eventi

lancio di 2 monete

S = (T T ) (T C) (C T ) (C C)

A = 2 monete uguali

A = (T T ) (C C)

B = 2 monete diverse

B = Ac = (T C) (C T )

gara di 3 cavalli

A = cavallo a vincente

A = (ab c) (a c b)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 53 88

Probabilita - 1

Consideriamo un esperimento con sample space S Supponiamo che adogni evento A sia associato un numero chiamato probabilita di A edindicato con P(A) che soddisfa le seguenti proprieta

1 Per ogni evento A la probabilita di A e un numero tra 0 e 1

0 le P(A) le 1

2 La probabilita del sample space S e 1

P(S) = 1

3 La probabilita dellrsquounione di eventi disgiunti e uguale alla somma delleprobabilita di tali eventi

P(A cupB) = P(A) + P(B)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 54 88

Probabilita - 2

In generale 2 eventi potrebbero non essere disgiunti

P(A cupB) = P(A) + P(B) minus P(A capB)

Esempio un certo negozio accetta pagamenti o con carte di credito VISAo Mastercard

1 22 dei clienti ha Mastercard

2 58 dei clienti ha VISA

3 14 dei clienti ha entrambe

Qual e la probabilita che un cliente ha almeno una delle 2 carte

P(A) = 022 P(B) = 058

P(A cupB) = P(A) + P(B) minus P(A capB) = 022 + 058 minus 014 = 066

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 55 88

Probabilita condizionata - 1

Se alcune informazioni riguardo lrsquoesito di un esperimento sono disponibiliparliamo di probabilita condizionata

Esempio lancio di 2 dadi

S = (11) (12) (65) (66)

Probabilita che la somma sia 10 (evento B) sapendo che il primo dadomostra 4 (evento A)

(41) (42) (43) (44) (45) (46)

P(B ∣A) = 16

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 56 88

Probabilita condizionata - 2

In generale

P(B ∣A) = P(A capB)P(A)

Supponiamo lrsquoesito sia in A

Per essere anche in B deve essere in entrambi A e B cioe in A capB

Sapendo che A e gia accaduto il nostro nuovo sample space diventa A

la probabilita di A capB viene calcolata rispetto ad A

Nel caso dei dadi

P(B ∣A) = P((46))P((41) (42) (43) (44) (45) (46)) = 136

16= 1

6

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 57 88

Indipendenza

In generale sapere che A e accaduto modifica le chance che B accadaNel caso cio non avvenga cioe se P(B ∣A) = P(B) allora i 2 eventi sidicono indipendenti In questo caso sapere che A e accaduto nonaggiunge alcuna informazione

SiccomeP(A capB) = P(B ∣A)P(A)

Abbiamo che B e indipendente da A se

P(A capB) = P(B)P(A)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 58 88

Esercizi - 1

1 Svolgere gli esercizi di combinatoria

2 Si consideri il seguente esperimento casuale rdquosi lancia tre volte unamonetardquo Qual e lo spazio degli esiti di questo esperimento casualeSi scriva esplicitamente lrsquoevento rdquosi ottengono piu teste che crocirdquo

3 Si consideri il seguente esperimento casuale rdquoSi tirano due dadirdquo Siconsiderino gli eventi E = rdquola somma dei punteggi e disparirdquo F = rdquoilprimo dado realizza un 1rdquo e G = rdquola somma dei punteggi e 5rdquo Sidescrivano gli eventi E cap F E cup F F capG E cap F c e E cap F capG

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 59 88

Esercizi - 2

4 Si consideri il seguente esperimento casuale rdquoUn sistema e compostoda 4 componenti ciascuno dei quali o funziona oppure e guasto Siosserva lo stato dei componenti ottenendo un vettore (x1 x2 x3 x4)dove xi e 1 oppure 0 a seconda che il componente i-esimo funzionioppure nordquo

1 Da quanti elementi e formato lo spazio degli esiti2 Il sistema nel suo insieme funziona fintantoche entrambi i componenti

1 e 2 oppure entrambi i componenti 3 e 4 funzionano Specifica tuttigli esiti dellrsquoevento il rdquosistema funzionardquo

3 Sia E lrsquoevento rdquoi componenti 1 e 3 sono guastirdquo Quanti esiti contiene

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 60 88

Esercizi - 3

5 Si dimostri che in uno spazio degli esiti Ω dotato di una probabilita Pper ogni evento E F sub Ω vale la disuguaglianza seguente

P(E cap F ) ge P(E) + P(F ) minus 1

6 Un gruppo di 5 bambini e 10 bambine e in fila in ordine casuale nelsenso che tutte le 15 possibili permutazioni si suppongonoequiprobabili

1 Qual e la probabilita che il quarto della fila sia un bambino2 E il dodicesimo3 Qual e la probabilita che un determinato bambino occupi la terza

posizione

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 61 88

Esercizi - 4

7 In un comune vi sono 5 alberghi Se 3 persone devono scegliere unalbergo in cui pernottare qual e la probabilita che finiscano tutte inalberghi differenti Che cosa stiamo assumendo senza dirloesplicitamente

8 La media del salario annuale di un gruppo di 100 lavoratori impiegatinellrsquoamministrazione di una grande azienda e di 130000 dollari conuna deviazione standard di 20000 dollari Se si prende una persona acaso da questo gruppo cosa possiamo dire sulla probabilita che il suosalario sia

1 tra i 90000 e i 170000 dollari2 superiore a 150000 dollari

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 62 88

Esercizi - 5

9 In una certa regione vi sono due ditte che producono forni amicroonde Quelli della fabbrica A sono difettosi con probabilita 005mentre quelli della fabbrica B con probabilita 001 Supponi di averacquistato due apparecchi prodotti dalla stessa ditta che puo essere laA o la B con probabilita del 50 Se il primo microonde e difettosoqual e la probabilita condizionata che sia difettoso anche il secondo

10 Hai chiesto ad un vicino di innaffiare una piantina delicata mentre seiin vacanza Pensi che senza acqua la piantina muoia con probabilita08 mentre se innaffiata questa probabilita si ridurrebbe a 015 Latua fiducia che il vicino si ricordi di innaffiarla e del 90

1 Qual e la probabilita che la pianta sia ancora viva al tuo ritorno2 Se fosse morta quale sarebbe la probabilita che il vicino si sia

dimenticato di innaffiarla

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 63 88

Esercizi - 6

11 Una compagnia di assicurazioni classifica i suoi clienti in tre fascebasso rischio medio rischio alto rischio Le sue statistiche indicanoche le probabilita che un cliente delle tre fasce abbia un incidenteentro un periodo di un anno sono rispettivamente 005 015 e 030Se il 20 dei clienti sono a basso rischio il 50 a medio rischio e il30 ad alto rischio che percentuale dei clienti avra mediamenteincidenti in un lasso di un anno Se un cliente non ha avuto incidentinel 1987 qual e la probabilita che appartenga a ciascuna delle trefasce

12 Se un votante scelto a caso e favorevole ad una certa riforma conprobabilita di 07 qual e la probabilita che su 10 votanti esattamente7 siano favorevoli

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 64 88

Variabili aleatorie

Una variabile aleatoria (o anche variabile aleatoria) e una variabile chepuo assumere valori diversi in dipendenza da qualche fenomeno aleatorio

fenomeno lancio di 2 dadivariabile aleatoria somma dei 2 dadi

fenomeno 3 lanci di una monetavariabile aleatoria numero di rdquotesterdquo complessivo

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 65 88

Funzione di Ripartizione

Sia X una variabile aleatoria Si chiama funzione di ripartizione di X lafunzione F che associa ad ogni numero reale a la probabilita che X siaminore o uguale ad a cioe P(X le a) = FX (a)

Nel caso della moneta (fair) lanciata 3 volte (X indica il numero di testecomplessivo)

FX (a) =

⎧⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎨⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎩

0 if a lt 0

18 per 0 le a lt 1

18 + 38 = 48 per 1 le a lt 2

48 + 38 = 78 per 2 le a lt 3

88 = 1 per a ge 3

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 66 88

Funzione di densita o di massa

Sia X una variabile aleatoria Si chiama funzione di densita di X lafunzione f che associa ad ogni numero reale a la probabilita che X siauguale ad a indicata con fX (a)

Nel caso della moneta (fair) lanciata 3 volte (X indica il numero di testecomplessivo)

fX (a) =

⎧⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎨⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎩

18 per a = 0

38 per a = 1

38 per a = 2

18 per a = 3

0 altrimenti

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 67 88

Valore Atteso

Chiamato anche media (expectation in inglese) e appunto una mediapesata dei possibili valori di una variabile aleatoria Il peso dato a ciascunvalore e la probabilita data a quello specifico valore

E[X ] =sumi

aiP(X = ai)

Esempio dado truccato

valore 6 con probabilita 712

valori da 1 a 5 con probabilita 112

La variabile aleatoria X indica la faccia risultante dal lancio di un dado

E[X ] = 1

12lowast 1 + 1

12lowast 2 + 1

12lowast 3 + 1

12lowast 4 + 1

12lowast 5 + 7

12lowast 6 = 475

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 68 88

Valore Atteso - Proprieta

Sia X una variabile aleatoria con valore atteso E[X ] Se c e una costanteallora anche cX e X + c sono variabili casuali In particolare valgono leseguenti proprieta

E[cX ] = cE[X ]E[X + c] = E[X ] + c

Sia Y una variabile aleatoria Allora

E[X +Y ] = E[X ] +E[Y ]se e solo se X e Y sono independenti

E[XY ] = E[X ]E[Y ]

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 69 88

Varianza

Ersquo il valore atteso del quadrato della differenza tra la variabile aleatoria e ilsuo valore atteso

Var(X ) = E[(X minusE[X ])2] = E[X 2] minus (E[X ])2

La radice quadrata viene detta deviazione standard di X

Esempio dado truccato

E[X 2] = 1

12lowast 12 + 1

12lowast 22 + 1

12lowast 32 + 1

12lowast 42 + 1

12lowast 52 + 7

12lowast 62 ≃ 255

Var(X ) = E[X 2] minus (E[X ])2 ≃ 255 minus 4752 ≃ 3

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 70 88

Varianza - proprieta

Sia X una variabile aleatoria e c una costante Allora valgono le seguentiproprieta

1 Var(cX ) = c2Var(X )

2 Var(X + c) = Var(X )

NOTA

Var(X +X ) ne Var(X ) +Var(X )

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 71 88

Covarianza

Siano X Y due variabili aleatorie con valore atteso rispettivamenteE[X ] = microX e E[Y ] = microY La covarianza e definita come segue

Cov(X Y ) = E[(X minus microX )(Y minus microY )] = = E[XY ] minus microXmicroY

Proprieta

1 Cov(X Y ) = Cov(Y X )2 Cov(X X ) = Var(X )3 Sia a una costante allora

Cov(aX Y ) = aCov(X Y )

4 Sia Z una variabile aleatoria allora

Cov(X + Z Y ) = Cov(X Y ) + Cov(Z Y )

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 72 88

Esercizi - 1

1 Consideriamo una variabile aleatoria X che puo assumere i valori 12o 3 Se sappiamo che

fX (1) = 1

3 fX (2) = 3

7

1 Quanto vale fX (3)2 Disegnare il grafico di questa funzione di massa3 Disegnare il grafico della relativa funzione di ripartizione

2 Dimostrare che se X1 e X2 hanno la stessa distribuzione allora

Cov(X1 +X2X1 minusX2) = 0

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 73 88

Esercizi - 2

3 La funzione di ripartizione di X e definita come segue

FX (x) =

⎧⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎨⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎩

0 per x le 0

x2 per 0 le x lt 1

23 per 1 le x lt 2

1112 per 2 le x lt 3

1 per x ge 3

Se ne tracci il graficoQuanto vale P(X gt 12)Quanto vale P(2 le X le 4)Quanto vale P(X le 3)Quanto vale P(X = 1)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 74 88

Esercizi - 3

4 Un tipo di prodotti vengono classificati a seconda dei loro difetti edella fabbrica che li ha prodotti Sia X1 il numero (1 o 2) dellafabbrica e sia X2 il numero di difetti per pezzo (che possono essere da0 a 3) di un prodotto scelto a caso tra la totalita di quelli esistentiLa tabella seguente riporta la funzione di massa di probabilitacongiunta per queste due variabili aleatorie discrete Le righe siriferiscono alla variabile X1 mentre le colonne alla variabile X2

Trova le distribuzioni marginali di X1 e X2Calcola media e varianza di X2

0 1 2 31 18 116 316 182 116 116 18 14

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 75 88

Scipy

Scipy e un modulo che permette di utilizzare varie distribuzioni diprobabilita sia di tipo discreto che continuo

La sintassi generale e la seguente Scipystatsltnome distribuzionegt

rvs(size=z) restituisce un vettore di numeri casuali estrattisecondo la distribuzione di lunghezza z

pdf(x) restituisce il vettore della densita della distribuzionevalutata nei valori del vettore di input x (pmf per le discrete)

cdf(x) restituisce il vettore della funzione di ripartizione (ocumulativa) della distribuzione valutata nei valori del vettore di inputx

ppf(q) restituisce il vettore dei quantili della distribuzione valutatanei valori del vettore di input q

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 76 88

Variabili aleatorie discrete Binomiale

gtgtgt from scipystats import binom

gtgtgt rv = binom(n p)

rvrvs(x) restituisce un vettore di x numeri estratti secondo unadistribuzione Binomiale di parametri n p

rvpmf(x) restituisce la probabilita di ottenere esattamente x

successi in un esperimento dicotomico (01) ripetuto n volte con unaprobabilita di successo p (x puo essere un vettore)

rvcdf(q) restituisce il valore della funzione di ripartizione in q (qpuo essere un vettore)

rvppf(p) restituisce il valore del quantile di ordine p

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 77 88

Variabili aleatorie discrete Ipergeometrica

Supponiamo di avere M = 20 animali di cui n = 7 cani Se vogliamosapere la probabilita di trovare un dato numero di cani se scegliamoN = 12 dei 20 animali in maniera casuale possiamo usare una distribuzioneipergeometrica in questo modo

gtgtgt from scipystats import hypergeom

gtgtgt [M n N] = [20 7 12]

gtgtgt rv = hypergeom(M n N)

rvpmf(x) restituisce la probabilita di estrarre esattamente x cani

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 78 88

Variabili aleatorie discrete Geometrica

gtgtgt from scipystats import geom

gtgtgt rv = geom(p)

rvpmf(x) restituisce la probabilita di avere un successo dopoesattamente x insuccessi in una successione di esperimenti dicotomici(esito 01) con una probabilita di successo p (x puo essere un vettore)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 79 88

Variabili aleatorie discrete Poisson

La distribuzione di Poisson viene usata spesso come modello per il numerodi volte per cui un evento avviene in un dato intervallo di tempo (ospazio) Ad esempio si puo utilizzare per misurare il numero di chiamatericevute da un call center in una mattinata

gtgtgt from scipystats import poisson

gtgtgt mu = 2

gtgtgt rv = poisson(mu)

rvpmf(x) restituisce il seguente valore

f (x) = exp(minusmicro)microx

x

In questo caso x rappresenta il numero di eventi per cui si vuole calcolarela probabilita sapendo che in media ne accadono micro

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 80 88

Variabili aleatorie continue Uniforme

In Scipy la funzione uniforme e soltanto continua Questo significa chenella generazione di numeri casuali otterro dati di tipo float Possiamotuttavia simulare una variabile discreta estraendo la parte intera delrisultato ottenuto

gtgtgt from scipystats import uniform

gtgtgt rv = uniform()

Il comando uniform() crea una distribuzione uniforme nellrsquointervallo[01] Possiamo creare una distribuzione uniforme qualsiasi usandouniform(x y - x) per lrsquointervallo [x y]

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 81 88

Variabili aleatorie continue

norm(mu sigma) variabile Gaussiana (o Normale) di media micro edeviazione standard σ

expon(scale = 1 lambda) variabile Esponenziale di parametroλ

Altre distribuzioni (con relativa documentazione) disponibili suhttpsdocsscipyorgdocscipyreferencestatshtml

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 82 88

Esercizi - 1

1 Unrsquourna contiene 10 palline di cui 4 bianche e 6 nere Si eseguono 5estrazioni con reimmissione

1 Tracciare grafico della funzione massa di probabilita della variabilecasuale X = rdquonumero di palline bianche estratterdquo

2 Calcolare la probabilita di estrarre 2 palline bianche3 Calcolare la probabilita di estrarre al piu 2 palline bianche4 Calcolare la probabilita di estrarre almeno 2 palline bianche5 Qual e il numero minimo x tale che la probabilita di estrarre al piu x

palline bianche sia almeno 08

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 83 88

Esercizi - 2

2 Si eseguono 10 estrazioni senza reimmissione da unrsquourna

1 Tracciare il grafico della funzione massa di probabilita della variabilecasuale X = rdquonumero di palline bianche estratterdquo nei seguenti casi

1 lrsquourna contiene 100 palline di cui 20 bianche e le restanti nere2 lrsquourna contiene 100 palline di cui 2 bianche e le restanti nere

2 Tracciare il grafico della funzione massa di probabilita della variabilecasuale X nel caso dellrsquourna 1 se si eseguono 25 estrazioni

3 Consideriamo lrsquourna 1 e N = 10 estrazioni Si aumenti il numero totaleM di palline nellrsquourna mantenendo uguale a 02 la frazione di pallinebianche Per ciascun valore di M confrontare graficamente ladistribuzione di probabilita del numero di palline bianche estratte nelcaso di estrazioni con e senza reimmissione Provare con 20 40 e 200palline bianche

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 84 88

Esercizi - 3

3 Calcolare la probabilita di ottenere piu teste che croci lanciando 7volte una moneta truccata con probabilita di avere croce pari a 045

4 Calcolare la probabilita di avere almeno 3 sei lanciando 5 dadi a 12facce

5 Calcolare la probabilita di estrarre 20 euro da un sacco contenente 47monete da 1 centesimo e 53 da 2 euro estraendo (uniformemente) acaso 10 monete senza reinserirle

6 Un grammo di uranio emette mediamente 2152 particelle α ognimillisecondo Qual e con buona approssimazione la probabilita che ungrammo di uranio emetta al piu 2000 particelle α in un millisecondo

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 85 88

Esercizi - 4

7 Un uomo si risveglia in mezzo al deserto senza acqua Dopo ogniminuto ha una probabilita del 3 di perdere conoscenza per via dellecondizioni estreme Calcolare la probabilita che lrsquouomo perdaconoscenza dopo almeno due ore e la probabilita che lrsquouomo perdaconoscenza dopo esattamente un quarto drsquoora

8 Sia X una variabile aleatoria normale di parametri micro = 10 e σ = 36Calcola

1 P(X gt 5)2 P(4 le X le 16)3 P(X le 8)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 86 88

Esercizi - 5

9 Il numero di errori tipografici per pagina di una certa rivista segue unadistribuzione di Poisson Sapendo che mediamente sono presenti 02errori per pagina determinare la probabilita che una pagina contenga

1 nessun refuso2 piu refusi

10 Arrivi alla fermata dellrsquoautobus alle 1000 e sei certo che ne passerauno in un momento distribuito uniformemente tra le 1000 e le 1030

1 Qual e la probabilita che tu debba aspettare piu di 10 minuti2 Se alle 1015 lrsquoautobus non e ancora arrivato qual e la probabilita che

tu debba aspettare almeno altri 10 minuti

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 87 88

Esercizi - 6

11 Il signor Jones e convinto che il tempo di vita di una automobile (inmigliaia di chilometri percorse) sia una variabile aleatoria esponenzialedi parametro 120 Il signor Smith ha una macchina usata da vendereche ha percorso circa 10 000 chilometri

1 Se il signor Jones decide di comprarla che probabilita ha di farle farealmeno altri 20 000 chilometri prima che sia da buttare

2 Il modello assunto dal signor Jones e ragionevole

12 Sia X una variabile casuale binomiale di parametri n = 100 e p = 07

1 Tracciate la funzione di ripartizione di X2 Calcolate il primo quartile il quantile di ordine 09 e la mediana di X3 Calcolare la probabilita P(X le 60)4 Calcolare la probabilita P(X le 88)5 Trovare il piu piccolo valore x tale che P(X le x) ge 09

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 88 88

  • Lezione 1
    • Script in Python
    • Numpy
    • Esercizi
    • Pandas
    • Esercizi
      • Lezione 2
        • File csv
        • DataFrame
        • Accesso ai DataFrame
        • Frequenze
        • Esercizi
          • Lezione 3
            • Matplotlib
            • Grafici a Barre
            • Istogrammi
            • Cumulativa empirica
            • Boxplot
            • QQplot
            • Diagramma di Pareto
            • Esercizi
              • Lezione 4
                • Definizioni
                • Probabilitagrave condizionata
                • Indipendenza
                • Esercizi
                  • Lezione 5
                    • Variabili Aleatorie
                    • Funzione di Ripartizione
                    • Funzione di Densitagrave
                    • Valore Atteso
                    • Varianza
                    • Covarianza
                    • Esercizi
                      • Lezione 6
                        • Scipy - Variabili Discrete
                        • Scipy - Variabili continue
                        • Esercizi

Probabilita - 1

Consideriamo un esperimento con sample space S Supponiamo che adogni evento A sia associato un numero chiamato probabilita di A edindicato con P(A) che soddisfa le seguenti proprieta

1 Per ogni evento A la probabilita di A e un numero tra 0 e 1

0 le P(A) le 1

2 La probabilita del sample space S e 1

P(S) = 1

3 La probabilita dellrsquounione di eventi disgiunti e uguale alla somma delleprobabilita di tali eventi

P(A cupB) = P(A) + P(B)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 54 88

Probabilita - 2

In generale 2 eventi potrebbero non essere disgiunti

P(A cupB) = P(A) + P(B) minus P(A capB)

Esempio un certo negozio accetta pagamenti o con carte di credito VISAo Mastercard

1 22 dei clienti ha Mastercard

2 58 dei clienti ha VISA

3 14 dei clienti ha entrambe

Qual e la probabilita che un cliente ha almeno una delle 2 carte

P(A) = 022 P(B) = 058

P(A cupB) = P(A) + P(B) minus P(A capB) = 022 + 058 minus 014 = 066

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 55 88

Probabilita condizionata - 1

Se alcune informazioni riguardo lrsquoesito di un esperimento sono disponibiliparliamo di probabilita condizionata

Esempio lancio di 2 dadi

S = (11) (12) (65) (66)

Probabilita che la somma sia 10 (evento B) sapendo che il primo dadomostra 4 (evento A)

(41) (42) (43) (44) (45) (46)

P(B ∣A) = 16

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 56 88

Probabilita condizionata - 2

In generale

P(B ∣A) = P(A capB)P(A)

Supponiamo lrsquoesito sia in A

Per essere anche in B deve essere in entrambi A e B cioe in A capB

Sapendo che A e gia accaduto il nostro nuovo sample space diventa A

la probabilita di A capB viene calcolata rispetto ad A

Nel caso dei dadi

P(B ∣A) = P((46))P((41) (42) (43) (44) (45) (46)) = 136

16= 1

6

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 57 88

Indipendenza

In generale sapere che A e accaduto modifica le chance che B accadaNel caso cio non avvenga cioe se P(B ∣A) = P(B) allora i 2 eventi sidicono indipendenti In questo caso sapere che A e accaduto nonaggiunge alcuna informazione

SiccomeP(A capB) = P(B ∣A)P(A)

Abbiamo che B e indipendente da A se

P(A capB) = P(B)P(A)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 58 88

Esercizi - 1

1 Svolgere gli esercizi di combinatoria

2 Si consideri il seguente esperimento casuale rdquosi lancia tre volte unamonetardquo Qual e lo spazio degli esiti di questo esperimento casualeSi scriva esplicitamente lrsquoevento rdquosi ottengono piu teste che crocirdquo

3 Si consideri il seguente esperimento casuale rdquoSi tirano due dadirdquo Siconsiderino gli eventi E = rdquola somma dei punteggi e disparirdquo F = rdquoilprimo dado realizza un 1rdquo e G = rdquola somma dei punteggi e 5rdquo Sidescrivano gli eventi E cap F E cup F F capG E cap F c e E cap F capG

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 59 88

Esercizi - 2

4 Si consideri il seguente esperimento casuale rdquoUn sistema e compostoda 4 componenti ciascuno dei quali o funziona oppure e guasto Siosserva lo stato dei componenti ottenendo un vettore (x1 x2 x3 x4)dove xi e 1 oppure 0 a seconda che il componente i-esimo funzionioppure nordquo

1 Da quanti elementi e formato lo spazio degli esiti2 Il sistema nel suo insieme funziona fintantoche entrambi i componenti

1 e 2 oppure entrambi i componenti 3 e 4 funzionano Specifica tuttigli esiti dellrsquoevento il rdquosistema funzionardquo

3 Sia E lrsquoevento rdquoi componenti 1 e 3 sono guastirdquo Quanti esiti contiene

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 60 88

Esercizi - 3

5 Si dimostri che in uno spazio degli esiti Ω dotato di una probabilita Pper ogni evento E F sub Ω vale la disuguaglianza seguente

P(E cap F ) ge P(E) + P(F ) minus 1

6 Un gruppo di 5 bambini e 10 bambine e in fila in ordine casuale nelsenso che tutte le 15 possibili permutazioni si suppongonoequiprobabili

1 Qual e la probabilita che il quarto della fila sia un bambino2 E il dodicesimo3 Qual e la probabilita che un determinato bambino occupi la terza

posizione

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 61 88

Esercizi - 4

7 In un comune vi sono 5 alberghi Se 3 persone devono scegliere unalbergo in cui pernottare qual e la probabilita che finiscano tutte inalberghi differenti Che cosa stiamo assumendo senza dirloesplicitamente

8 La media del salario annuale di un gruppo di 100 lavoratori impiegatinellrsquoamministrazione di una grande azienda e di 130000 dollari conuna deviazione standard di 20000 dollari Se si prende una persona acaso da questo gruppo cosa possiamo dire sulla probabilita che il suosalario sia

1 tra i 90000 e i 170000 dollari2 superiore a 150000 dollari

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 62 88

Esercizi - 5

9 In una certa regione vi sono due ditte che producono forni amicroonde Quelli della fabbrica A sono difettosi con probabilita 005mentre quelli della fabbrica B con probabilita 001 Supponi di averacquistato due apparecchi prodotti dalla stessa ditta che puo essere laA o la B con probabilita del 50 Se il primo microonde e difettosoqual e la probabilita condizionata che sia difettoso anche il secondo

10 Hai chiesto ad un vicino di innaffiare una piantina delicata mentre seiin vacanza Pensi che senza acqua la piantina muoia con probabilita08 mentre se innaffiata questa probabilita si ridurrebbe a 015 Latua fiducia che il vicino si ricordi di innaffiarla e del 90

1 Qual e la probabilita che la pianta sia ancora viva al tuo ritorno2 Se fosse morta quale sarebbe la probabilita che il vicino si sia

dimenticato di innaffiarla

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 63 88

Esercizi - 6

11 Una compagnia di assicurazioni classifica i suoi clienti in tre fascebasso rischio medio rischio alto rischio Le sue statistiche indicanoche le probabilita che un cliente delle tre fasce abbia un incidenteentro un periodo di un anno sono rispettivamente 005 015 e 030Se il 20 dei clienti sono a basso rischio il 50 a medio rischio e il30 ad alto rischio che percentuale dei clienti avra mediamenteincidenti in un lasso di un anno Se un cliente non ha avuto incidentinel 1987 qual e la probabilita che appartenga a ciascuna delle trefasce

12 Se un votante scelto a caso e favorevole ad una certa riforma conprobabilita di 07 qual e la probabilita che su 10 votanti esattamente7 siano favorevoli

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 64 88

Variabili aleatorie

Una variabile aleatoria (o anche variabile aleatoria) e una variabile chepuo assumere valori diversi in dipendenza da qualche fenomeno aleatorio

fenomeno lancio di 2 dadivariabile aleatoria somma dei 2 dadi

fenomeno 3 lanci di una monetavariabile aleatoria numero di rdquotesterdquo complessivo

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 65 88

Funzione di Ripartizione

Sia X una variabile aleatoria Si chiama funzione di ripartizione di X lafunzione F che associa ad ogni numero reale a la probabilita che X siaminore o uguale ad a cioe P(X le a) = FX (a)

Nel caso della moneta (fair) lanciata 3 volte (X indica il numero di testecomplessivo)

FX (a) =

⎧⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎨⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎩

0 if a lt 0

18 per 0 le a lt 1

18 + 38 = 48 per 1 le a lt 2

48 + 38 = 78 per 2 le a lt 3

88 = 1 per a ge 3

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 66 88

Funzione di densita o di massa

Sia X una variabile aleatoria Si chiama funzione di densita di X lafunzione f che associa ad ogni numero reale a la probabilita che X siauguale ad a indicata con fX (a)

Nel caso della moneta (fair) lanciata 3 volte (X indica il numero di testecomplessivo)

fX (a) =

⎧⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎨⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎩

18 per a = 0

38 per a = 1

38 per a = 2

18 per a = 3

0 altrimenti

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 67 88

Valore Atteso

Chiamato anche media (expectation in inglese) e appunto una mediapesata dei possibili valori di una variabile aleatoria Il peso dato a ciascunvalore e la probabilita data a quello specifico valore

E[X ] =sumi

aiP(X = ai)

Esempio dado truccato

valore 6 con probabilita 712

valori da 1 a 5 con probabilita 112

La variabile aleatoria X indica la faccia risultante dal lancio di un dado

E[X ] = 1

12lowast 1 + 1

12lowast 2 + 1

12lowast 3 + 1

12lowast 4 + 1

12lowast 5 + 7

12lowast 6 = 475

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 68 88

Valore Atteso - Proprieta

Sia X una variabile aleatoria con valore atteso E[X ] Se c e una costanteallora anche cX e X + c sono variabili casuali In particolare valgono leseguenti proprieta

E[cX ] = cE[X ]E[X + c] = E[X ] + c

Sia Y una variabile aleatoria Allora

E[X +Y ] = E[X ] +E[Y ]se e solo se X e Y sono independenti

E[XY ] = E[X ]E[Y ]

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 69 88

Varianza

Ersquo il valore atteso del quadrato della differenza tra la variabile aleatoria e ilsuo valore atteso

Var(X ) = E[(X minusE[X ])2] = E[X 2] minus (E[X ])2

La radice quadrata viene detta deviazione standard di X

Esempio dado truccato

E[X 2] = 1

12lowast 12 + 1

12lowast 22 + 1

12lowast 32 + 1

12lowast 42 + 1

12lowast 52 + 7

12lowast 62 ≃ 255

Var(X ) = E[X 2] minus (E[X ])2 ≃ 255 minus 4752 ≃ 3

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 70 88

Varianza - proprieta

Sia X una variabile aleatoria e c una costante Allora valgono le seguentiproprieta

1 Var(cX ) = c2Var(X )

2 Var(X + c) = Var(X )

NOTA

Var(X +X ) ne Var(X ) +Var(X )

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 71 88

Covarianza

Siano X Y due variabili aleatorie con valore atteso rispettivamenteE[X ] = microX e E[Y ] = microY La covarianza e definita come segue

Cov(X Y ) = E[(X minus microX )(Y minus microY )] = = E[XY ] minus microXmicroY

Proprieta

1 Cov(X Y ) = Cov(Y X )2 Cov(X X ) = Var(X )3 Sia a una costante allora

Cov(aX Y ) = aCov(X Y )

4 Sia Z una variabile aleatoria allora

Cov(X + Z Y ) = Cov(X Y ) + Cov(Z Y )

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 72 88

Esercizi - 1

1 Consideriamo una variabile aleatoria X che puo assumere i valori 12o 3 Se sappiamo che

fX (1) = 1

3 fX (2) = 3

7

1 Quanto vale fX (3)2 Disegnare il grafico di questa funzione di massa3 Disegnare il grafico della relativa funzione di ripartizione

2 Dimostrare che se X1 e X2 hanno la stessa distribuzione allora

Cov(X1 +X2X1 minusX2) = 0

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 73 88

Esercizi - 2

3 La funzione di ripartizione di X e definita come segue

FX (x) =

⎧⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎨⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎩

0 per x le 0

x2 per 0 le x lt 1

23 per 1 le x lt 2

1112 per 2 le x lt 3

1 per x ge 3

Se ne tracci il graficoQuanto vale P(X gt 12)Quanto vale P(2 le X le 4)Quanto vale P(X le 3)Quanto vale P(X = 1)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 74 88

Esercizi - 3

4 Un tipo di prodotti vengono classificati a seconda dei loro difetti edella fabbrica che li ha prodotti Sia X1 il numero (1 o 2) dellafabbrica e sia X2 il numero di difetti per pezzo (che possono essere da0 a 3) di un prodotto scelto a caso tra la totalita di quelli esistentiLa tabella seguente riporta la funzione di massa di probabilitacongiunta per queste due variabili aleatorie discrete Le righe siriferiscono alla variabile X1 mentre le colonne alla variabile X2

Trova le distribuzioni marginali di X1 e X2Calcola media e varianza di X2

0 1 2 31 18 116 316 182 116 116 18 14

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 75 88

Scipy

Scipy e un modulo che permette di utilizzare varie distribuzioni diprobabilita sia di tipo discreto che continuo

La sintassi generale e la seguente Scipystatsltnome distribuzionegt

rvs(size=z) restituisce un vettore di numeri casuali estrattisecondo la distribuzione di lunghezza z

pdf(x) restituisce il vettore della densita della distribuzionevalutata nei valori del vettore di input x (pmf per le discrete)

cdf(x) restituisce il vettore della funzione di ripartizione (ocumulativa) della distribuzione valutata nei valori del vettore di inputx

ppf(q) restituisce il vettore dei quantili della distribuzione valutatanei valori del vettore di input q

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 76 88

Variabili aleatorie discrete Binomiale

gtgtgt from scipystats import binom

gtgtgt rv = binom(n p)

rvrvs(x) restituisce un vettore di x numeri estratti secondo unadistribuzione Binomiale di parametri n p

rvpmf(x) restituisce la probabilita di ottenere esattamente x

successi in un esperimento dicotomico (01) ripetuto n volte con unaprobabilita di successo p (x puo essere un vettore)

rvcdf(q) restituisce il valore della funzione di ripartizione in q (qpuo essere un vettore)

rvppf(p) restituisce il valore del quantile di ordine p

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 77 88

Variabili aleatorie discrete Ipergeometrica

Supponiamo di avere M = 20 animali di cui n = 7 cani Se vogliamosapere la probabilita di trovare un dato numero di cani se scegliamoN = 12 dei 20 animali in maniera casuale possiamo usare una distribuzioneipergeometrica in questo modo

gtgtgt from scipystats import hypergeom

gtgtgt [M n N] = [20 7 12]

gtgtgt rv = hypergeom(M n N)

rvpmf(x) restituisce la probabilita di estrarre esattamente x cani

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 78 88

Variabili aleatorie discrete Geometrica

gtgtgt from scipystats import geom

gtgtgt rv = geom(p)

rvpmf(x) restituisce la probabilita di avere un successo dopoesattamente x insuccessi in una successione di esperimenti dicotomici(esito 01) con una probabilita di successo p (x puo essere un vettore)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 79 88

Variabili aleatorie discrete Poisson

La distribuzione di Poisson viene usata spesso come modello per il numerodi volte per cui un evento avviene in un dato intervallo di tempo (ospazio) Ad esempio si puo utilizzare per misurare il numero di chiamatericevute da un call center in una mattinata

gtgtgt from scipystats import poisson

gtgtgt mu = 2

gtgtgt rv = poisson(mu)

rvpmf(x) restituisce il seguente valore

f (x) = exp(minusmicro)microx

x

In questo caso x rappresenta il numero di eventi per cui si vuole calcolarela probabilita sapendo che in media ne accadono micro

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 80 88

Variabili aleatorie continue Uniforme

In Scipy la funzione uniforme e soltanto continua Questo significa chenella generazione di numeri casuali otterro dati di tipo float Possiamotuttavia simulare una variabile discreta estraendo la parte intera delrisultato ottenuto

gtgtgt from scipystats import uniform

gtgtgt rv = uniform()

Il comando uniform() crea una distribuzione uniforme nellrsquointervallo[01] Possiamo creare una distribuzione uniforme qualsiasi usandouniform(x y - x) per lrsquointervallo [x y]

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 81 88

Variabili aleatorie continue

norm(mu sigma) variabile Gaussiana (o Normale) di media micro edeviazione standard σ

expon(scale = 1 lambda) variabile Esponenziale di parametroλ

Altre distribuzioni (con relativa documentazione) disponibili suhttpsdocsscipyorgdocscipyreferencestatshtml

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 82 88

Esercizi - 1

1 Unrsquourna contiene 10 palline di cui 4 bianche e 6 nere Si eseguono 5estrazioni con reimmissione

1 Tracciare grafico della funzione massa di probabilita della variabilecasuale X = rdquonumero di palline bianche estratterdquo

2 Calcolare la probabilita di estrarre 2 palline bianche3 Calcolare la probabilita di estrarre al piu 2 palline bianche4 Calcolare la probabilita di estrarre almeno 2 palline bianche5 Qual e il numero minimo x tale che la probabilita di estrarre al piu x

palline bianche sia almeno 08

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 83 88

Esercizi - 2

2 Si eseguono 10 estrazioni senza reimmissione da unrsquourna

1 Tracciare il grafico della funzione massa di probabilita della variabilecasuale X = rdquonumero di palline bianche estratterdquo nei seguenti casi

1 lrsquourna contiene 100 palline di cui 20 bianche e le restanti nere2 lrsquourna contiene 100 palline di cui 2 bianche e le restanti nere

2 Tracciare il grafico della funzione massa di probabilita della variabilecasuale X nel caso dellrsquourna 1 se si eseguono 25 estrazioni

3 Consideriamo lrsquourna 1 e N = 10 estrazioni Si aumenti il numero totaleM di palline nellrsquourna mantenendo uguale a 02 la frazione di pallinebianche Per ciascun valore di M confrontare graficamente ladistribuzione di probabilita del numero di palline bianche estratte nelcaso di estrazioni con e senza reimmissione Provare con 20 40 e 200palline bianche

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 84 88

Esercizi - 3

3 Calcolare la probabilita di ottenere piu teste che croci lanciando 7volte una moneta truccata con probabilita di avere croce pari a 045

4 Calcolare la probabilita di avere almeno 3 sei lanciando 5 dadi a 12facce

5 Calcolare la probabilita di estrarre 20 euro da un sacco contenente 47monete da 1 centesimo e 53 da 2 euro estraendo (uniformemente) acaso 10 monete senza reinserirle

6 Un grammo di uranio emette mediamente 2152 particelle α ognimillisecondo Qual e con buona approssimazione la probabilita che ungrammo di uranio emetta al piu 2000 particelle α in un millisecondo

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 85 88

Esercizi - 4

7 Un uomo si risveglia in mezzo al deserto senza acqua Dopo ogniminuto ha una probabilita del 3 di perdere conoscenza per via dellecondizioni estreme Calcolare la probabilita che lrsquouomo perdaconoscenza dopo almeno due ore e la probabilita che lrsquouomo perdaconoscenza dopo esattamente un quarto drsquoora

8 Sia X una variabile aleatoria normale di parametri micro = 10 e σ = 36Calcola

1 P(X gt 5)2 P(4 le X le 16)3 P(X le 8)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 86 88

Esercizi - 5

9 Il numero di errori tipografici per pagina di una certa rivista segue unadistribuzione di Poisson Sapendo che mediamente sono presenti 02errori per pagina determinare la probabilita che una pagina contenga

1 nessun refuso2 piu refusi

10 Arrivi alla fermata dellrsquoautobus alle 1000 e sei certo che ne passerauno in un momento distribuito uniformemente tra le 1000 e le 1030

1 Qual e la probabilita che tu debba aspettare piu di 10 minuti2 Se alle 1015 lrsquoautobus non e ancora arrivato qual e la probabilita che

tu debba aspettare almeno altri 10 minuti

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 87 88

Esercizi - 6

11 Il signor Jones e convinto che il tempo di vita di una automobile (inmigliaia di chilometri percorse) sia una variabile aleatoria esponenzialedi parametro 120 Il signor Smith ha una macchina usata da vendereche ha percorso circa 10 000 chilometri

1 Se il signor Jones decide di comprarla che probabilita ha di farle farealmeno altri 20 000 chilometri prima che sia da buttare

2 Il modello assunto dal signor Jones e ragionevole

12 Sia X una variabile casuale binomiale di parametri n = 100 e p = 07

1 Tracciate la funzione di ripartizione di X2 Calcolate il primo quartile il quantile di ordine 09 e la mediana di X3 Calcolare la probabilita P(X le 60)4 Calcolare la probabilita P(X le 88)5 Trovare il piu piccolo valore x tale che P(X le x) ge 09

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 88 88

  • Lezione 1
    • Script in Python
    • Numpy
    • Esercizi
    • Pandas
    • Esercizi
      • Lezione 2
        • File csv
        • DataFrame
        • Accesso ai DataFrame
        • Frequenze
        • Esercizi
          • Lezione 3
            • Matplotlib
            • Grafici a Barre
            • Istogrammi
            • Cumulativa empirica
            • Boxplot
            • QQplot
            • Diagramma di Pareto
            • Esercizi
              • Lezione 4
                • Definizioni
                • Probabilitagrave condizionata
                • Indipendenza
                • Esercizi
                  • Lezione 5
                    • Variabili Aleatorie
                    • Funzione di Ripartizione
                    • Funzione di Densitagrave
                    • Valore Atteso
                    • Varianza
                    • Covarianza
                    • Esercizi
                      • Lezione 6
                        • Scipy - Variabili Discrete
                        • Scipy - Variabili continue
                        • Esercizi

Probabilita - 2

In generale 2 eventi potrebbero non essere disgiunti

P(A cupB) = P(A) + P(B) minus P(A capB)

Esempio un certo negozio accetta pagamenti o con carte di credito VISAo Mastercard

1 22 dei clienti ha Mastercard

2 58 dei clienti ha VISA

3 14 dei clienti ha entrambe

Qual e la probabilita che un cliente ha almeno una delle 2 carte

P(A) = 022 P(B) = 058

P(A cupB) = P(A) + P(B) minus P(A capB) = 022 + 058 minus 014 = 066

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 55 88

Probabilita condizionata - 1

Se alcune informazioni riguardo lrsquoesito di un esperimento sono disponibiliparliamo di probabilita condizionata

Esempio lancio di 2 dadi

S = (11) (12) (65) (66)

Probabilita che la somma sia 10 (evento B) sapendo che il primo dadomostra 4 (evento A)

(41) (42) (43) (44) (45) (46)

P(B ∣A) = 16

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 56 88

Probabilita condizionata - 2

In generale

P(B ∣A) = P(A capB)P(A)

Supponiamo lrsquoesito sia in A

Per essere anche in B deve essere in entrambi A e B cioe in A capB

Sapendo che A e gia accaduto il nostro nuovo sample space diventa A

la probabilita di A capB viene calcolata rispetto ad A

Nel caso dei dadi

P(B ∣A) = P((46))P((41) (42) (43) (44) (45) (46)) = 136

16= 1

6

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 57 88

Indipendenza

In generale sapere che A e accaduto modifica le chance che B accadaNel caso cio non avvenga cioe se P(B ∣A) = P(B) allora i 2 eventi sidicono indipendenti In questo caso sapere che A e accaduto nonaggiunge alcuna informazione

SiccomeP(A capB) = P(B ∣A)P(A)

Abbiamo che B e indipendente da A se

P(A capB) = P(B)P(A)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 58 88

Esercizi - 1

1 Svolgere gli esercizi di combinatoria

2 Si consideri il seguente esperimento casuale rdquosi lancia tre volte unamonetardquo Qual e lo spazio degli esiti di questo esperimento casualeSi scriva esplicitamente lrsquoevento rdquosi ottengono piu teste che crocirdquo

3 Si consideri il seguente esperimento casuale rdquoSi tirano due dadirdquo Siconsiderino gli eventi E = rdquola somma dei punteggi e disparirdquo F = rdquoilprimo dado realizza un 1rdquo e G = rdquola somma dei punteggi e 5rdquo Sidescrivano gli eventi E cap F E cup F F capG E cap F c e E cap F capG

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 59 88

Esercizi - 2

4 Si consideri il seguente esperimento casuale rdquoUn sistema e compostoda 4 componenti ciascuno dei quali o funziona oppure e guasto Siosserva lo stato dei componenti ottenendo un vettore (x1 x2 x3 x4)dove xi e 1 oppure 0 a seconda che il componente i-esimo funzionioppure nordquo

1 Da quanti elementi e formato lo spazio degli esiti2 Il sistema nel suo insieme funziona fintantoche entrambi i componenti

1 e 2 oppure entrambi i componenti 3 e 4 funzionano Specifica tuttigli esiti dellrsquoevento il rdquosistema funzionardquo

3 Sia E lrsquoevento rdquoi componenti 1 e 3 sono guastirdquo Quanti esiti contiene

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 60 88

Esercizi - 3

5 Si dimostri che in uno spazio degli esiti Ω dotato di una probabilita Pper ogni evento E F sub Ω vale la disuguaglianza seguente

P(E cap F ) ge P(E) + P(F ) minus 1

6 Un gruppo di 5 bambini e 10 bambine e in fila in ordine casuale nelsenso che tutte le 15 possibili permutazioni si suppongonoequiprobabili

1 Qual e la probabilita che il quarto della fila sia un bambino2 E il dodicesimo3 Qual e la probabilita che un determinato bambino occupi la terza

posizione

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 61 88

Esercizi - 4

7 In un comune vi sono 5 alberghi Se 3 persone devono scegliere unalbergo in cui pernottare qual e la probabilita che finiscano tutte inalberghi differenti Che cosa stiamo assumendo senza dirloesplicitamente

8 La media del salario annuale di un gruppo di 100 lavoratori impiegatinellrsquoamministrazione di una grande azienda e di 130000 dollari conuna deviazione standard di 20000 dollari Se si prende una persona acaso da questo gruppo cosa possiamo dire sulla probabilita che il suosalario sia

1 tra i 90000 e i 170000 dollari2 superiore a 150000 dollari

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 62 88

Esercizi - 5

9 In una certa regione vi sono due ditte che producono forni amicroonde Quelli della fabbrica A sono difettosi con probabilita 005mentre quelli della fabbrica B con probabilita 001 Supponi di averacquistato due apparecchi prodotti dalla stessa ditta che puo essere laA o la B con probabilita del 50 Se il primo microonde e difettosoqual e la probabilita condizionata che sia difettoso anche il secondo

10 Hai chiesto ad un vicino di innaffiare una piantina delicata mentre seiin vacanza Pensi che senza acqua la piantina muoia con probabilita08 mentre se innaffiata questa probabilita si ridurrebbe a 015 Latua fiducia che il vicino si ricordi di innaffiarla e del 90

1 Qual e la probabilita che la pianta sia ancora viva al tuo ritorno2 Se fosse morta quale sarebbe la probabilita che il vicino si sia

dimenticato di innaffiarla

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 63 88

Esercizi - 6

11 Una compagnia di assicurazioni classifica i suoi clienti in tre fascebasso rischio medio rischio alto rischio Le sue statistiche indicanoche le probabilita che un cliente delle tre fasce abbia un incidenteentro un periodo di un anno sono rispettivamente 005 015 e 030Se il 20 dei clienti sono a basso rischio il 50 a medio rischio e il30 ad alto rischio che percentuale dei clienti avra mediamenteincidenti in un lasso di un anno Se un cliente non ha avuto incidentinel 1987 qual e la probabilita che appartenga a ciascuna delle trefasce

12 Se un votante scelto a caso e favorevole ad una certa riforma conprobabilita di 07 qual e la probabilita che su 10 votanti esattamente7 siano favorevoli

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 64 88

Variabili aleatorie

Una variabile aleatoria (o anche variabile aleatoria) e una variabile chepuo assumere valori diversi in dipendenza da qualche fenomeno aleatorio

fenomeno lancio di 2 dadivariabile aleatoria somma dei 2 dadi

fenomeno 3 lanci di una monetavariabile aleatoria numero di rdquotesterdquo complessivo

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 65 88

Funzione di Ripartizione

Sia X una variabile aleatoria Si chiama funzione di ripartizione di X lafunzione F che associa ad ogni numero reale a la probabilita che X siaminore o uguale ad a cioe P(X le a) = FX (a)

Nel caso della moneta (fair) lanciata 3 volte (X indica il numero di testecomplessivo)

FX (a) =

⎧⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎨⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎩

0 if a lt 0

18 per 0 le a lt 1

18 + 38 = 48 per 1 le a lt 2

48 + 38 = 78 per 2 le a lt 3

88 = 1 per a ge 3

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 66 88

Funzione di densita o di massa

Sia X una variabile aleatoria Si chiama funzione di densita di X lafunzione f che associa ad ogni numero reale a la probabilita che X siauguale ad a indicata con fX (a)

Nel caso della moneta (fair) lanciata 3 volte (X indica il numero di testecomplessivo)

fX (a) =

⎧⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎨⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎩

18 per a = 0

38 per a = 1

38 per a = 2

18 per a = 3

0 altrimenti

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 67 88

Valore Atteso

Chiamato anche media (expectation in inglese) e appunto una mediapesata dei possibili valori di una variabile aleatoria Il peso dato a ciascunvalore e la probabilita data a quello specifico valore

E[X ] =sumi

aiP(X = ai)

Esempio dado truccato

valore 6 con probabilita 712

valori da 1 a 5 con probabilita 112

La variabile aleatoria X indica la faccia risultante dal lancio di un dado

E[X ] = 1

12lowast 1 + 1

12lowast 2 + 1

12lowast 3 + 1

12lowast 4 + 1

12lowast 5 + 7

12lowast 6 = 475

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 68 88

Valore Atteso - Proprieta

Sia X una variabile aleatoria con valore atteso E[X ] Se c e una costanteallora anche cX e X + c sono variabili casuali In particolare valgono leseguenti proprieta

E[cX ] = cE[X ]E[X + c] = E[X ] + c

Sia Y una variabile aleatoria Allora

E[X +Y ] = E[X ] +E[Y ]se e solo se X e Y sono independenti

E[XY ] = E[X ]E[Y ]

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 69 88

Varianza

Ersquo il valore atteso del quadrato della differenza tra la variabile aleatoria e ilsuo valore atteso

Var(X ) = E[(X minusE[X ])2] = E[X 2] minus (E[X ])2

La radice quadrata viene detta deviazione standard di X

Esempio dado truccato

E[X 2] = 1

12lowast 12 + 1

12lowast 22 + 1

12lowast 32 + 1

12lowast 42 + 1

12lowast 52 + 7

12lowast 62 ≃ 255

Var(X ) = E[X 2] minus (E[X ])2 ≃ 255 minus 4752 ≃ 3

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 70 88

Varianza - proprieta

Sia X una variabile aleatoria e c una costante Allora valgono le seguentiproprieta

1 Var(cX ) = c2Var(X )

2 Var(X + c) = Var(X )

NOTA

Var(X +X ) ne Var(X ) +Var(X )

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 71 88

Covarianza

Siano X Y due variabili aleatorie con valore atteso rispettivamenteE[X ] = microX e E[Y ] = microY La covarianza e definita come segue

Cov(X Y ) = E[(X minus microX )(Y minus microY )] = = E[XY ] minus microXmicroY

Proprieta

1 Cov(X Y ) = Cov(Y X )2 Cov(X X ) = Var(X )3 Sia a una costante allora

Cov(aX Y ) = aCov(X Y )

4 Sia Z una variabile aleatoria allora

Cov(X + Z Y ) = Cov(X Y ) + Cov(Z Y )

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 72 88

Esercizi - 1

1 Consideriamo una variabile aleatoria X che puo assumere i valori 12o 3 Se sappiamo che

fX (1) = 1

3 fX (2) = 3

7

1 Quanto vale fX (3)2 Disegnare il grafico di questa funzione di massa3 Disegnare il grafico della relativa funzione di ripartizione

2 Dimostrare che se X1 e X2 hanno la stessa distribuzione allora

Cov(X1 +X2X1 minusX2) = 0

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 73 88

Esercizi - 2

3 La funzione di ripartizione di X e definita come segue

FX (x) =

⎧⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎨⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎩

0 per x le 0

x2 per 0 le x lt 1

23 per 1 le x lt 2

1112 per 2 le x lt 3

1 per x ge 3

Se ne tracci il graficoQuanto vale P(X gt 12)Quanto vale P(2 le X le 4)Quanto vale P(X le 3)Quanto vale P(X = 1)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 74 88

Esercizi - 3

4 Un tipo di prodotti vengono classificati a seconda dei loro difetti edella fabbrica che li ha prodotti Sia X1 il numero (1 o 2) dellafabbrica e sia X2 il numero di difetti per pezzo (che possono essere da0 a 3) di un prodotto scelto a caso tra la totalita di quelli esistentiLa tabella seguente riporta la funzione di massa di probabilitacongiunta per queste due variabili aleatorie discrete Le righe siriferiscono alla variabile X1 mentre le colonne alla variabile X2

Trova le distribuzioni marginali di X1 e X2Calcola media e varianza di X2

0 1 2 31 18 116 316 182 116 116 18 14

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 75 88

Scipy

Scipy e un modulo che permette di utilizzare varie distribuzioni diprobabilita sia di tipo discreto che continuo

La sintassi generale e la seguente Scipystatsltnome distribuzionegt

rvs(size=z) restituisce un vettore di numeri casuali estrattisecondo la distribuzione di lunghezza z

pdf(x) restituisce il vettore della densita della distribuzionevalutata nei valori del vettore di input x (pmf per le discrete)

cdf(x) restituisce il vettore della funzione di ripartizione (ocumulativa) della distribuzione valutata nei valori del vettore di inputx

ppf(q) restituisce il vettore dei quantili della distribuzione valutatanei valori del vettore di input q

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 76 88

Variabili aleatorie discrete Binomiale

gtgtgt from scipystats import binom

gtgtgt rv = binom(n p)

rvrvs(x) restituisce un vettore di x numeri estratti secondo unadistribuzione Binomiale di parametri n p

rvpmf(x) restituisce la probabilita di ottenere esattamente x

successi in un esperimento dicotomico (01) ripetuto n volte con unaprobabilita di successo p (x puo essere un vettore)

rvcdf(q) restituisce il valore della funzione di ripartizione in q (qpuo essere un vettore)

rvppf(p) restituisce il valore del quantile di ordine p

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 77 88

Variabili aleatorie discrete Ipergeometrica

Supponiamo di avere M = 20 animali di cui n = 7 cani Se vogliamosapere la probabilita di trovare un dato numero di cani se scegliamoN = 12 dei 20 animali in maniera casuale possiamo usare una distribuzioneipergeometrica in questo modo

gtgtgt from scipystats import hypergeom

gtgtgt [M n N] = [20 7 12]

gtgtgt rv = hypergeom(M n N)

rvpmf(x) restituisce la probabilita di estrarre esattamente x cani

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 78 88

Variabili aleatorie discrete Geometrica

gtgtgt from scipystats import geom

gtgtgt rv = geom(p)

rvpmf(x) restituisce la probabilita di avere un successo dopoesattamente x insuccessi in una successione di esperimenti dicotomici(esito 01) con una probabilita di successo p (x puo essere un vettore)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 79 88

Variabili aleatorie discrete Poisson

La distribuzione di Poisson viene usata spesso come modello per il numerodi volte per cui un evento avviene in un dato intervallo di tempo (ospazio) Ad esempio si puo utilizzare per misurare il numero di chiamatericevute da un call center in una mattinata

gtgtgt from scipystats import poisson

gtgtgt mu = 2

gtgtgt rv = poisson(mu)

rvpmf(x) restituisce il seguente valore

f (x) = exp(minusmicro)microx

x

In questo caso x rappresenta il numero di eventi per cui si vuole calcolarela probabilita sapendo che in media ne accadono micro

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 80 88

Variabili aleatorie continue Uniforme

In Scipy la funzione uniforme e soltanto continua Questo significa chenella generazione di numeri casuali otterro dati di tipo float Possiamotuttavia simulare una variabile discreta estraendo la parte intera delrisultato ottenuto

gtgtgt from scipystats import uniform

gtgtgt rv = uniform()

Il comando uniform() crea una distribuzione uniforme nellrsquointervallo[01] Possiamo creare una distribuzione uniforme qualsiasi usandouniform(x y - x) per lrsquointervallo [x y]

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 81 88

Variabili aleatorie continue

norm(mu sigma) variabile Gaussiana (o Normale) di media micro edeviazione standard σ

expon(scale = 1 lambda) variabile Esponenziale di parametroλ

Altre distribuzioni (con relativa documentazione) disponibili suhttpsdocsscipyorgdocscipyreferencestatshtml

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 82 88

Esercizi - 1

1 Unrsquourna contiene 10 palline di cui 4 bianche e 6 nere Si eseguono 5estrazioni con reimmissione

1 Tracciare grafico della funzione massa di probabilita della variabilecasuale X = rdquonumero di palline bianche estratterdquo

2 Calcolare la probabilita di estrarre 2 palline bianche3 Calcolare la probabilita di estrarre al piu 2 palline bianche4 Calcolare la probabilita di estrarre almeno 2 palline bianche5 Qual e il numero minimo x tale che la probabilita di estrarre al piu x

palline bianche sia almeno 08

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 83 88

Esercizi - 2

2 Si eseguono 10 estrazioni senza reimmissione da unrsquourna

1 Tracciare il grafico della funzione massa di probabilita della variabilecasuale X = rdquonumero di palline bianche estratterdquo nei seguenti casi

1 lrsquourna contiene 100 palline di cui 20 bianche e le restanti nere2 lrsquourna contiene 100 palline di cui 2 bianche e le restanti nere

2 Tracciare il grafico della funzione massa di probabilita della variabilecasuale X nel caso dellrsquourna 1 se si eseguono 25 estrazioni

3 Consideriamo lrsquourna 1 e N = 10 estrazioni Si aumenti il numero totaleM di palline nellrsquourna mantenendo uguale a 02 la frazione di pallinebianche Per ciascun valore di M confrontare graficamente ladistribuzione di probabilita del numero di palline bianche estratte nelcaso di estrazioni con e senza reimmissione Provare con 20 40 e 200palline bianche

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 84 88

Esercizi - 3

3 Calcolare la probabilita di ottenere piu teste che croci lanciando 7volte una moneta truccata con probabilita di avere croce pari a 045

4 Calcolare la probabilita di avere almeno 3 sei lanciando 5 dadi a 12facce

5 Calcolare la probabilita di estrarre 20 euro da un sacco contenente 47monete da 1 centesimo e 53 da 2 euro estraendo (uniformemente) acaso 10 monete senza reinserirle

6 Un grammo di uranio emette mediamente 2152 particelle α ognimillisecondo Qual e con buona approssimazione la probabilita che ungrammo di uranio emetta al piu 2000 particelle α in un millisecondo

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 85 88

Esercizi - 4

7 Un uomo si risveglia in mezzo al deserto senza acqua Dopo ogniminuto ha una probabilita del 3 di perdere conoscenza per via dellecondizioni estreme Calcolare la probabilita che lrsquouomo perdaconoscenza dopo almeno due ore e la probabilita che lrsquouomo perdaconoscenza dopo esattamente un quarto drsquoora

8 Sia X una variabile aleatoria normale di parametri micro = 10 e σ = 36Calcola

1 P(X gt 5)2 P(4 le X le 16)3 P(X le 8)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 86 88

Esercizi - 5

9 Il numero di errori tipografici per pagina di una certa rivista segue unadistribuzione di Poisson Sapendo che mediamente sono presenti 02errori per pagina determinare la probabilita che una pagina contenga

1 nessun refuso2 piu refusi

10 Arrivi alla fermata dellrsquoautobus alle 1000 e sei certo che ne passerauno in un momento distribuito uniformemente tra le 1000 e le 1030

1 Qual e la probabilita che tu debba aspettare piu di 10 minuti2 Se alle 1015 lrsquoautobus non e ancora arrivato qual e la probabilita che

tu debba aspettare almeno altri 10 minuti

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 87 88

Esercizi - 6

11 Il signor Jones e convinto che il tempo di vita di una automobile (inmigliaia di chilometri percorse) sia una variabile aleatoria esponenzialedi parametro 120 Il signor Smith ha una macchina usata da vendereche ha percorso circa 10 000 chilometri

1 Se il signor Jones decide di comprarla che probabilita ha di farle farealmeno altri 20 000 chilometri prima che sia da buttare

2 Il modello assunto dal signor Jones e ragionevole

12 Sia X una variabile casuale binomiale di parametri n = 100 e p = 07

1 Tracciate la funzione di ripartizione di X2 Calcolate il primo quartile il quantile di ordine 09 e la mediana di X3 Calcolare la probabilita P(X le 60)4 Calcolare la probabilita P(X le 88)5 Trovare il piu piccolo valore x tale che P(X le x) ge 09

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 88 88

  • Lezione 1
    • Script in Python
    • Numpy
    • Esercizi
    • Pandas
    • Esercizi
      • Lezione 2
        • File csv
        • DataFrame
        • Accesso ai DataFrame
        • Frequenze
        • Esercizi
          • Lezione 3
            • Matplotlib
            • Grafici a Barre
            • Istogrammi
            • Cumulativa empirica
            • Boxplot
            • QQplot
            • Diagramma di Pareto
            • Esercizi
              • Lezione 4
                • Definizioni
                • Probabilitagrave condizionata
                • Indipendenza
                • Esercizi
                  • Lezione 5
                    • Variabili Aleatorie
                    • Funzione di Ripartizione
                    • Funzione di Densitagrave
                    • Valore Atteso
                    • Varianza
                    • Covarianza
                    • Esercizi
                      • Lezione 6
                        • Scipy - Variabili Discrete
                        • Scipy - Variabili continue
                        • Esercizi

Probabilita condizionata - 1

Se alcune informazioni riguardo lrsquoesito di un esperimento sono disponibiliparliamo di probabilita condizionata

Esempio lancio di 2 dadi

S = (11) (12) (65) (66)

Probabilita che la somma sia 10 (evento B) sapendo che il primo dadomostra 4 (evento A)

(41) (42) (43) (44) (45) (46)

P(B ∣A) = 16

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 56 88

Probabilita condizionata - 2

In generale

P(B ∣A) = P(A capB)P(A)

Supponiamo lrsquoesito sia in A

Per essere anche in B deve essere in entrambi A e B cioe in A capB

Sapendo che A e gia accaduto il nostro nuovo sample space diventa A

la probabilita di A capB viene calcolata rispetto ad A

Nel caso dei dadi

P(B ∣A) = P((46))P((41) (42) (43) (44) (45) (46)) = 136

16= 1

6

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 57 88

Indipendenza

In generale sapere che A e accaduto modifica le chance che B accadaNel caso cio non avvenga cioe se P(B ∣A) = P(B) allora i 2 eventi sidicono indipendenti In questo caso sapere che A e accaduto nonaggiunge alcuna informazione

SiccomeP(A capB) = P(B ∣A)P(A)

Abbiamo che B e indipendente da A se

P(A capB) = P(B)P(A)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 58 88

Esercizi - 1

1 Svolgere gli esercizi di combinatoria

2 Si consideri il seguente esperimento casuale rdquosi lancia tre volte unamonetardquo Qual e lo spazio degli esiti di questo esperimento casualeSi scriva esplicitamente lrsquoevento rdquosi ottengono piu teste che crocirdquo

3 Si consideri il seguente esperimento casuale rdquoSi tirano due dadirdquo Siconsiderino gli eventi E = rdquola somma dei punteggi e disparirdquo F = rdquoilprimo dado realizza un 1rdquo e G = rdquola somma dei punteggi e 5rdquo Sidescrivano gli eventi E cap F E cup F F capG E cap F c e E cap F capG

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 59 88

Esercizi - 2

4 Si consideri il seguente esperimento casuale rdquoUn sistema e compostoda 4 componenti ciascuno dei quali o funziona oppure e guasto Siosserva lo stato dei componenti ottenendo un vettore (x1 x2 x3 x4)dove xi e 1 oppure 0 a seconda che il componente i-esimo funzionioppure nordquo

1 Da quanti elementi e formato lo spazio degli esiti2 Il sistema nel suo insieme funziona fintantoche entrambi i componenti

1 e 2 oppure entrambi i componenti 3 e 4 funzionano Specifica tuttigli esiti dellrsquoevento il rdquosistema funzionardquo

3 Sia E lrsquoevento rdquoi componenti 1 e 3 sono guastirdquo Quanti esiti contiene

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 60 88

Esercizi - 3

5 Si dimostri che in uno spazio degli esiti Ω dotato di una probabilita Pper ogni evento E F sub Ω vale la disuguaglianza seguente

P(E cap F ) ge P(E) + P(F ) minus 1

6 Un gruppo di 5 bambini e 10 bambine e in fila in ordine casuale nelsenso che tutte le 15 possibili permutazioni si suppongonoequiprobabili

1 Qual e la probabilita che il quarto della fila sia un bambino2 E il dodicesimo3 Qual e la probabilita che un determinato bambino occupi la terza

posizione

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 61 88

Esercizi - 4

7 In un comune vi sono 5 alberghi Se 3 persone devono scegliere unalbergo in cui pernottare qual e la probabilita che finiscano tutte inalberghi differenti Che cosa stiamo assumendo senza dirloesplicitamente

8 La media del salario annuale di un gruppo di 100 lavoratori impiegatinellrsquoamministrazione di una grande azienda e di 130000 dollari conuna deviazione standard di 20000 dollari Se si prende una persona acaso da questo gruppo cosa possiamo dire sulla probabilita che il suosalario sia

1 tra i 90000 e i 170000 dollari2 superiore a 150000 dollari

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 62 88

Esercizi - 5

9 In una certa regione vi sono due ditte che producono forni amicroonde Quelli della fabbrica A sono difettosi con probabilita 005mentre quelli della fabbrica B con probabilita 001 Supponi di averacquistato due apparecchi prodotti dalla stessa ditta che puo essere laA o la B con probabilita del 50 Se il primo microonde e difettosoqual e la probabilita condizionata che sia difettoso anche il secondo

10 Hai chiesto ad un vicino di innaffiare una piantina delicata mentre seiin vacanza Pensi che senza acqua la piantina muoia con probabilita08 mentre se innaffiata questa probabilita si ridurrebbe a 015 Latua fiducia che il vicino si ricordi di innaffiarla e del 90

1 Qual e la probabilita che la pianta sia ancora viva al tuo ritorno2 Se fosse morta quale sarebbe la probabilita che il vicino si sia

dimenticato di innaffiarla

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 63 88

Esercizi - 6

11 Una compagnia di assicurazioni classifica i suoi clienti in tre fascebasso rischio medio rischio alto rischio Le sue statistiche indicanoche le probabilita che un cliente delle tre fasce abbia un incidenteentro un periodo di un anno sono rispettivamente 005 015 e 030Se il 20 dei clienti sono a basso rischio il 50 a medio rischio e il30 ad alto rischio che percentuale dei clienti avra mediamenteincidenti in un lasso di un anno Se un cliente non ha avuto incidentinel 1987 qual e la probabilita che appartenga a ciascuna delle trefasce

12 Se un votante scelto a caso e favorevole ad una certa riforma conprobabilita di 07 qual e la probabilita che su 10 votanti esattamente7 siano favorevoli

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 64 88

Variabili aleatorie

Una variabile aleatoria (o anche variabile aleatoria) e una variabile chepuo assumere valori diversi in dipendenza da qualche fenomeno aleatorio

fenomeno lancio di 2 dadivariabile aleatoria somma dei 2 dadi

fenomeno 3 lanci di una monetavariabile aleatoria numero di rdquotesterdquo complessivo

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 65 88

Funzione di Ripartizione

Sia X una variabile aleatoria Si chiama funzione di ripartizione di X lafunzione F che associa ad ogni numero reale a la probabilita che X siaminore o uguale ad a cioe P(X le a) = FX (a)

Nel caso della moneta (fair) lanciata 3 volte (X indica il numero di testecomplessivo)

FX (a) =

⎧⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎨⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎩

0 if a lt 0

18 per 0 le a lt 1

18 + 38 = 48 per 1 le a lt 2

48 + 38 = 78 per 2 le a lt 3

88 = 1 per a ge 3

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 66 88

Funzione di densita o di massa

Sia X una variabile aleatoria Si chiama funzione di densita di X lafunzione f che associa ad ogni numero reale a la probabilita che X siauguale ad a indicata con fX (a)

Nel caso della moneta (fair) lanciata 3 volte (X indica il numero di testecomplessivo)

fX (a) =

⎧⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎨⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎩

18 per a = 0

38 per a = 1

38 per a = 2

18 per a = 3

0 altrimenti

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 67 88

Valore Atteso

Chiamato anche media (expectation in inglese) e appunto una mediapesata dei possibili valori di una variabile aleatoria Il peso dato a ciascunvalore e la probabilita data a quello specifico valore

E[X ] =sumi

aiP(X = ai)

Esempio dado truccato

valore 6 con probabilita 712

valori da 1 a 5 con probabilita 112

La variabile aleatoria X indica la faccia risultante dal lancio di un dado

E[X ] = 1

12lowast 1 + 1

12lowast 2 + 1

12lowast 3 + 1

12lowast 4 + 1

12lowast 5 + 7

12lowast 6 = 475

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 68 88

Valore Atteso - Proprieta

Sia X una variabile aleatoria con valore atteso E[X ] Se c e una costanteallora anche cX e X + c sono variabili casuali In particolare valgono leseguenti proprieta

E[cX ] = cE[X ]E[X + c] = E[X ] + c

Sia Y una variabile aleatoria Allora

E[X +Y ] = E[X ] +E[Y ]se e solo se X e Y sono independenti

E[XY ] = E[X ]E[Y ]

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 69 88

Varianza

Ersquo il valore atteso del quadrato della differenza tra la variabile aleatoria e ilsuo valore atteso

Var(X ) = E[(X minusE[X ])2] = E[X 2] minus (E[X ])2

La radice quadrata viene detta deviazione standard di X

Esempio dado truccato

E[X 2] = 1

12lowast 12 + 1

12lowast 22 + 1

12lowast 32 + 1

12lowast 42 + 1

12lowast 52 + 7

12lowast 62 ≃ 255

Var(X ) = E[X 2] minus (E[X ])2 ≃ 255 minus 4752 ≃ 3

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 70 88

Varianza - proprieta

Sia X una variabile aleatoria e c una costante Allora valgono le seguentiproprieta

1 Var(cX ) = c2Var(X )

2 Var(X + c) = Var(X )

NOTA

Var(X +X ) ne Var(X ) +Var(X )

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 71 88

Covarianza

Siano X Y due variabili aleatorie con valore atteso rispettivamenteE[X ] = microX e E[Y ] = microY La covarianza e definita come segue

Cov(X Y ) = E[(X minus microX )(Y minus microY )] = = E[XY ] minus microXmicroY

Proprieta

1 Cov(X Y ) = Cov(Y X )2 Cov(X X ) = Var(X )3 Sia a una costante allora

Cov(aX Y ) = aCov(X Y )

4 Sia Z una variabile aleatoria allora

Cov(X + Z Y ) = Cov(X Y ) + Cov(Z Y )

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 72 88

Esercizi - 1

1 Consideriamo una variabile aleatoria X che puo assumere i valori 12o 3 Se sappiamo che

fX (1) = 1

3 fX (2) = 3

7

1 Quanto vale fX (3)2 Disegnare il grafico di questa funzione di massa3 Disegnare il grafico della relativa funzione di ripartizione

2 Dimostrare che se X1 e X2 hanno la stessa distribuzione allora

Cov(X1 +X2X1 minusX2) = 0

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 73 88

Esercizi - 2

3 La funzione di ripartizione di X e definita come segue

FX (x) =

⎧⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎨⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎩

0 per x le 0

x2 per 0 le x lt 1

23 per 1 le x lt 2

1112 per 2 le x lt 3

1 per x ge 3

Se ne tracci il graficoQuanto vale P(X gt 12)Quanto vale P(2 le X le 4)Quanto vale P(X le 3)Quanto vale P(X = 1)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 74 88

Esercizi - 3

4 Un tipo di prodotti vengono classificati a seconda dei loro difetti edella fabbrica che li ha prodotti Sia X1 il numero (1 o 2) dellafabbrica e sia X2 il numero di difetti per pezzo (che possono essere da0 a 3) di un prodotto scelto a caso tra la totalita di quelli esistentiLa tabella seguente riporta la funzione di massa di probabilitacongiunta per queste due variabili aleatorie discrete Le righe siriferiscono alla variabile X1 mentre le colonne alla variabile X2

Trova le distribuzioni marginali di X1 e X2Calcola media e varianza di X2

0 1 2 31 18 116 316 182 116 116 18 14

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 75 88

Scipy

Scipy e un modulo che permette di utilizzare varie distribuzioni diprobabilita sia di tipo discreto che continuo

La sintassi generale e la seguente Scipystatsltnome distribuzionegt

rvs(size=z) restituisce un vettore di numeri casuali estrattisecondo la distribuzione di lunghezza z

pdf(x) restituisce il vettore della densita della distribuzionevalutata nei valori del vettore di input x (pmf per le discrete)

cdf(x) restituisce il vettore della funzione di ripartizione (ocumulativa) della distribuzione valutata nei valori del vettore di inputx

ppf(q) restituisce il vettore dei quantili della distribuzione valutatanei valori del vettore di input q

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 76 88

Variabili aleatorie discrete Binomiale

gtgtgt from scipystats import binom

gtgtgt rv = binom(n p)

rvrvs(x) restituisce un vettore di x numeri estratti secondo unadistribuzione Binomiale di parametri n p

rvpmf(x) restituisce la probabilita di ottenere esattamente x

successi in un esperimento dicotomico (01) ripetuto n volte con unaprobabilita di successo p (x puo essere un vettore)

rvcdf(q) restituisce il valore della funzione di ripartizione in q (qpuo essere un vettore)

rvppf(p) restituisce il valore del quantile di ordine p

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 77 88

Variabili aleatorie discrete Ipergeometrica

Supponiamo di avere M = 20 animali di cui n = 7 cani Se vogliamosapere la probabilita di trovare un dato numero di cani se scegliamoN = 12 dei 20 animali in maniera casuale possiamo usare una distribuzioneipergeometrica in questo modo

gtgtgt from scipystats import hypergeom

gtgtgt [M n N] = [20 7 12]

gtgtgt rv = hypergeom(M n N)

rvpmf(x) restituisce la probabilita di estrarre esattamente x cani

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 78 88

Variabili aleatorie discrete Geometrica

gtgtgt from scipystats import geom

gtgtgt rv = geom(p)

rvpmf(x) restituisce la probabilita di avere un successo dopoesattamente x insuccessi in una successione di esperimenti dicotomici(esito 01) con una probabilita di successo p (x puo essere un vettore)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 79 88

Variabili aleatorie discrete Poisson

La distribuzione di Poisson viene usata spesso come modello per il numerodi volte per cui un evento avviene in un dato intervallo di tempo (ospazio) Ad esempio si puo utilizzare per misurare il numero di chiamatericevute da un call center in una mattinata

gtgtgt from scipystats import poisson

gtgtgt mu = 2

gtgtgt rv = poisson(mu)

rvpmf(x) restituisce il seguente valore

f (x) = exp(minusmicro)microx

x

In questo caso x rappresenta il numero di eventi per cui si vuole calcolarela probabilita sapendo che in media ne accadono micro

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 80 88

Variabili aleatorie continue Uniforme

In Scipy la funzione uniforme e soltanto continua Questo significa chenella generazione di numeri casuali otterro dati di tipo float Possiamotuttavia simulare una variabile discreta estraendo la parte intera delrisultato ottenuto

gtgtgt from scipystats import uniform

gtgtgt rv = uniform()

Il comando uniform() crea una distribuzione uniforme nellrsquointervallo[01] Possiamo creare una distribuzione uniforme qualsiasi usandouniform(x y - x) per lrsquointervallo [x y]

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 81 88

Variabili aleatorie continue

norm(mu sigma) variabile Gaussiana (o Normale) di media micro edeviazione standard σ

expon(scale = 1 lambda) variabile Esponenziale di parametroλ

Altre distribuzioni (con relativa documentazione) disponibili suhttpsdocsscipyorgdocscipyreferencestatshtml

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 82 88

Esercizi - 1

1 Unrsquourna contiene 10 palline di cui 4 bianche e 6 nere Si eseguono 5estrazioni con reimmissione

1 Tracciare grafico della funzione massa di probabilita della variabilecasuale X = rdquonumero di palline bianche estratterdquo

2 Calcolare la probabilita di estrarre 2 palline bianche3 Calcolare la probabilita di estrarre al piu 2 palline bianche4 Calcolare la probabilita di estrarre almeno 2 palline bianche5 Qual e il numero minimo x tale che la probabilita di estrarre al piu x

palline bianche sia almeno 08

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 83 88

Esercizi - 2

2 Si eseguono 10 estrazioni senza reimmissione da unrsquourna

1 Tracciare il grafico della funzione massa di probabilita della variabilecasuale X = rdquonumero di palline bianche estratterdquo nei seguenti casi

1 lrsquourna contiene 100 palline di cui 20 bianche e le restanti nere2 lrsquourna contiene 100 palline di cui 2 bianche e le restanti nere

2 Tracciare il grafico della funzione massa di probabilita della variabilecasuale X nel caso dellrsquourna 1 se si eseguono 25 estrazioni

3 Consideriamo lrsquourna 1 e N = 10 estrazioni Si aumenti il numero totaleM di palline nellrsquourna mantenendo uguale a 02 la frazione di pallinebianche Per ciascun valore di M confrontare graficamente ladistribuzione di probabilita del numero di palline bianche estratte nelcaso di estrazioni con e senza reimmissione Provare con 20 40 e 200palline bianche

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 84 88

Esercizi - 3

3 Calcolare la probabilita di ottenere piu teste che croci lanciando 7volte una moneta truccata con probabilita di avere croce pari a 045

4 Calcolare la probabilita di avere almeno 3 sei lanciando 5 dadi a 12facce

5 Calcolare la probabilita di estrarre 20 euro da un sacco contenente 47monete da 1 centesimo e 53 da 2 euro estraendo (uniformemente) acaso 10 monete senza reinserirle

6 Un grammo di uranio emette mediamente 2152 particelle α ognimillisecondo Qual e con buona approssimazione la probabilita che ungrammo di uranio emetta al piu 2000 particelle α in un millisecondo

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 85 88

Esercizi - 4

7 Un uomo si risveglia in mezzo al deserto senza acqua Dopo ogniminuto ha una probabilita del 3 di perdere conoscenza per via dellecondizioni estreme Calcolare la probabilita che lrsquouomo perdaconoscenza dopo almeno due ore e la probabilita che lrsquouomo perdaconoscenza dopo esattamente un quarto drsquoora

8 Sia X una variabile aleatoria normale di parametri micro = 10 e σ = 36Calcola

1 P(X gt 5)2 P(4 le X le 16)3 P(X le 8)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 86 88

Esercizi - 5

9 Il numero di errori tipografici per pagina di una certa rivista segue unadistribuzione di Poisson Sapendo che mediamente sono presenti 02errori per pagina determinare la probabilita che una pagina contenga

1 nessun refuso2 piu refusi

10 Arrivi alla fermata dellrsquoautobus alle 1000 e sei certo che ne passerauno in un momento distribuito uniformemente tra le 1000 e le 1030

1 Qual e la probabilita che tu debba aspettare piu di 10 minuti2 Se alle 1015 lrsquoautobus non e ancora arrivato qual e la probabilita che

tu debba aspettare almeno altri 10 minuti

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 87 88

Esercizi - 6

11 Il signor Jones e convinto che il tempo di vita di una automobile (inmigliaia di chilometri percorse) sia una variabile aleatoria esponenzialedi parametro 120 Il signor Smith ha una macchina usata da vendereche ha percorso circa 10 000 chilometri

1 Se il signor Jones decide di comprarla che probabilita ha di farle farealmeno altri 20 000 chilometri prima che sia da buttare

2 Il modello assunto dal signor Jones e ragionevole

12 Sia X una variabile casuale binomiale di parametri n = 100 e p = 07

1 Tracciate la funzione di ripartizione di X2 Calcolate il primo quartile il quantile di ordine 09 e la mediana di X3 Calcolare la probabilita P(X le 60)4 Calcolare la probabilita P(X le 88)5 Trovare il piu piccolo valore x tale che P(X le x) ge 09

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 88 88

  • Lezione 1
    • Script in Python
    • Numpy
    • Esercizi
    • Pandas
    • Esercizi
      • Lezione 2
        • File csv
        • DataFrame
        • Accesso ai DataFrame
        • Frequenze
        • Esercizi
          • Lezione 3
            • Matplotlib
            • Grafici a Barre
            • Istogrammi
            • Cumulativa empirica
            • Boxplot
            • QQplot
            • Diagramma di Pareto
            • Esercizi
              • Lezione 4
                • Definizioni
                • Probabilitagrave condizionata
                • Indipendenza
                • Esercizi
                  • Lezione 5
                    • Variabili Aleatorie
                    • Funzione di Ripartizione
                    • Funzione di Densitagrave
                    • Valore Atteso
                    • Varianza
                    • Covarianza
                    • Esercizi
                      • Lezione 6
                        • Scipy - Variabili Discrete
                        • Scipy - Variabili continue
                        • Esercizi

Probabilita condizionata - 2

In generale

P(B ∣A) = P(A capB)P(A)

Supponiamo lrsquoesito sia in A

Per essere anche in B deve essere in entrambi A e B cioe in A capB

Sapendo che A e gia accaduto il nostro nuovo sample space diventa A

la probabilita di A capB viene calcolata rispetto ad A

Nel caso dei dadi

P(B ∣A) = P((46))P((41) (42) (43) (44) (45) (46)) = 136

16= 1

6

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 57 88

Indipendenza

In generale sapere che A e accaduto modifica le chance che B accadaNel caso cio non avvenga cioe se P(B ∣A) = P(B) allora i 2 eventi sidicono indipendenti In questo caso sapere che A e accaduto nonaggiunge alcuna informazione

SiccomeP(A capB) = P(B ∣A)P(A)

Abbiamo che B e indipendente da A se

P(A capB) = P(B)P(A)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 58 88

Esercizi - 1

1 Svolgere gli esercizi di combinatoria

2 Si consideri il seguente esperimento casuale rdquosi lancia tre volte unamonetardquo Qual e lo spazio degli esiti di questo esperimento casualeSi scriva esplicitamente lrsquoevento rdquosi ottengono piu teste che crocirdquo

3 Si consideri il seguente esperimento casuale rdquoSi tirano due dadirdquo Siconsiderino gli eventi E = rdquola somma dei punteggi e disparirdquo F = rdquoilprimo dado realizza un 1rdquo e G = rdquola somma dei punteggi e 5rdquo Sidescrivano gli eventi E cap F E cup F F capG E cap F c e E cap F capG

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 59 88

Esercizi - 2

4 Si consideri il seguente esperimento casuale rdquoUn sistema e compostoda 4 componenti ciascuno dei quali o funziona oppure e guasto Siosserva lo stato dei componenti ottenendo un vettore (x1 x2 x3 x4)dove xi e 1 oppure 0 a seconda che il componente i-esimo funzionioppure nordquo

1 Da quanti elementi e formato lo spazio degli esiti2 Il sistema nel suo insieme funziona fintantoche entrambi i componenti

1 e 2 oppure entrambi i componenti 3 e 4 funzionano Specifica tuttigli esiti dellrsquoevento il rdquosistema funzionardquo

3 Sia E lrsquoevento rdquoi componenti 1 e 3 sono guastirdquo Quanti esiti contiene

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 60 88

Esercizi - 3

5 Si dimostri che in uno spazio degli esiti Ω dotato di una probabilita Pper ogni evento E F sub Ω vale la disuguaglianza seguente

P(E cap F ) ge P(E) + P(F ) minus 1

6 Un gruppo di 5 bambini e 10 bambine e in fila in ordine casuale nelsenso che tutte le 15 possibili permutazioni si suppongonoequiprobabili

1 Qual e la probabilita che il quarto della fila sia un bambino2 E il dodicesimo3 Qual e la probabilita che un determinato bambino occupi la terza

posizione

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 61 88

Esercizi - 4

7 In un comune vi sono 5 alberghi Se 3 persone devono scegliere unalbergo in cui pernottare qual e la probabilita che finiscano tutte inalberghi differenti Che cosa stiamo assumendo senza dirloesplicitamente

8 La media del salario annuale di un gruppo di 100 lavoratori impiegatinellrsquoamministrazione di una grande azienda e di 130000 dollari conuna deviazione standard di 20000 dollari Se si prende una persona acaso da questo gruppo cosa possiamo dire sulla probabilita che il suosalario sia

1 tra i 90000 e i 170000 dollari2 superiore a 150000 dollari

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 62 88

Esercizi - 5

9 In una certa regione vi sono due ditte che producono forni amicroonde Quelli della fabbrica A sono difettosi con probabilita 005mentre quelli della fabbrica B con probabilita 001 Supponi di averacquistato due apparecchi prodotti dalla stessa ditta che puo essere laA o la B con probabilita del 50 Se il primo microonde e difettosoqual e la probabilita condizionata che sia difettoso anche il secondo

10 Hai chiesto ad un vicino di innaffiare una piantina delicata mentre seiin vacanza Pensi che senza acqua la piantina muoia con probabilita08 mentre se innaffiata questa probabilita si ridurrebbe a 015 Latua fiducia che il vicino si ricordi di innaffiarla e del 90

1 Qual e la probabilita che la pianta sia ancora viva al tuo ritorno2 Se fosse morta quale sarebbe la probabilita che il vicino si sia

dimenticato di innaffiarla

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 63 88

Esercizi - 6

11 Una compagnia di assicurazioni classifica i suoi clienti in tre fascebasso rischio medio rischio alto rischio Le sue statistiche indicanoche le probabilita che un cliente delle tre fasce abbia un incidenteentro un periodo di un anno sono rispettivamente 005 015 e 030Se il 20 dei clienti sono a basso rischio il 50 a medio rischio e il30 ad alto rischio che percentuale dei clienti avra mediamenteincidenti in un lasso di un anno Se un cliente non ha avuto incidentinel 1987 qual e la probabilita che appartenga a ciascuna delle trefasce

12 Se un votante scelto a caso e favorevole ad una certa riforma conprobabilita di 07 qual e la probabilita che su 10 votanti esattamente7 siano favorevoli

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 64 88

Variabili aleatorie

Una variabile aleatoria (o anche variabile aleatoria) e una variabile chepuo assumere valori diversi in dipendenza da qualche fenomeno aleatorio

fenomeno lancio di 2 dadivariabile aleatoria somma dei 2 dadi

fenomeno 3 lanci di una monetavariabile aleatoria numero di rdquotesterdquo complessivo

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 65 88

Funzione di Ripartizione

Sia X una variabile aleatoria Si chiama funzione di ripartizione di X lafunzione F che associa ad ogni numero reale a la probabilita che X siaminore o uguale ad a cioe P(X le a) = FX (a)

Nel caso della moneta (fair) lanciata 3 volte (X indica il numero di testecomplessivo)

FX (a) =

⎧⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎨⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎩

0 if a lt 0

18 per 0 le a lt 1

18 + 38 = 48 per 1 le a lt 2

48 + 38 = 78 per 2 le a lt 3

88 = 1 per a ge 3

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 66 88

Funzione di densita o di massa

Sia X una variabile aleatoria Si chiama funzione di densita di X lafunzione f che associa ad ogni numero reale a la probabilita che X siauguale ad a indicata con fX (a)

Nel caso della moneta (fair) lanciata 3 volte (X indica il numero di testecomplessivo)

fX (a) =

⎧⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎨⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎩

18 per a = 0

38 per a = 1

38 per a = 2

18 per a = 3

0 altrimenti

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 67 88

Valore Atteso

Chiamato anche media (expectation in inglese) e appunto una mediapesata dei possibili valori di una variabile aleatoria Il peso dato a ciascunvalore e la probabilita data a quello specifico valore

E[X ] =sumi

aiP(X = ai)

Esempio dado truccato

valore 6 con probabilita 712

valori da 1 a 5 con probabilita 112

La variabile aleatoria X indica la faccia risultante dal lancio di un dado

E[X ] = 1

12lowast 1 + 1

12lowast 2 + 1

12lowast 3 + 1

12lowast 4 + 1

12lowast 5 + 7

12lowast 6 = 475

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 68 88

Valore Atteso - Proprieta

Sia X una variabile aleatoria con valore atteso E[X ] Se c e una costanteallora anche cX e X + c sono variabili casuali In particolare valgono leseguenti proprieta

E[cX ] = cE[X ]E[X + c] = E[X ] + c

Sia Y una variabile aleatoria Allora

E[X +Y ] = E[X ] +E[Y ]se e solo se X e Y sono independenti

E[XY ] = E[X ]E[Y ]

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 69 88

Varianza

Ersquo il valore atteso del quadrato della differenza tra la variabile aleatoria e ilsuo valore atteso

Var(X ) = E[(X minusE[X ])2] = E[X 2] minus (E[X ])2

La radice quadrata viene detta deviazione standard di X

Esempio dado truccato

E[X 2] = 1

12lowast 12 + 1

12lowast 22 + 1

12lowast 32 + 1

12lowast 42 + 1

12lowast 52 + 7

12lowast 62 ≃ 255

Var(X ) = E[X 2] minus (E[X ])2 ≃ 255 minus 4752 ≃ 3

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 70 88

Varianza - proprieta

Sia X una variabile aleatoria e c una costante Allora valgono le seguentiproprieta

1 Var(cX ) = c2Var(X )

2 Var(X + c) = Var(X )

NOTA

Var(X +X ) ne Var(X ) +Var(X )

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 71 88

Covarianza

Siano X Y due variabili aleatorie con valore atteso rispettivamenteE[X ] = microX e E[Y ] = microY La covarianza e definita come segue

Cov(X Y ) = E[(X minus microX )(Y minus microY )] = = E[XY ] minus microXmicroY

Proprieta

1 Cov(X Y ) = Cov(Y X )2 Cov(X X ) = Var(X )3 Sia a una costante allora

Cov(aX Y ) = aCov(X Y )

4 Sia Z una variabile aleatoria allora

Cov(X + Z Y ) = Cov(X Y ) + Cov(Z Y )

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 72 88

Esercizi - 1

1 Consideriamo una variabile aleatoria X che puo assumere i valori 12o 3 Se sappiamo che

fX (1) = 1

3 fX (2) = 3

7

1 Quanto vale fX (3)2 Disegnare il grafico di questa funzione di massa3 Disegnare il grafico della relativa funzione di ripartizione

2 Dimostrare che se X1 e X2 hanno la stessa distribuzione allora

Cov(X1 +X2X1 minusX2) = 0

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 73 88

Esercizi - 2

3 La funzione di ripartizione di X e definita come segue

FX (x) =

⎧⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎨⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎩

0 per x le 0

x2 per 0 le x lt 1

23 per 1 le x lt 2

1112 per 2 le x lt 3

1 per x ge 3

Se ne tracci il graficoQuanto vale P(X gt 12)Quanto vale P(2 le X le 4)Quanto vale P(X le 3)Quanto vale P(X = 1)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 74 88

Esercizi - 3

4 Un tipo di prodotti vengono classificati a seconda dei loro difetti edella fabbrica che li ha prodotti Sia X1 il numero (1 o 2) dellafabbrica e sia X2 il numero di difetti per pezzo (che possono essere da0 a 3) di un prodotto scelto a caso tra la totalita di quelli esistentiLa tabella seguente riporta la funzione di massa di probabilitacongiunta per queste due variabili aleatorie discrete Le righe siriferiscono alla variabile X1 mentre le colonne alla variabile X2

Trova le distribuzioni marginali di X1 e X2Calcola media e varianza di X2

0 1 2 31 18 116 316 182 116 116 18 14

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 75 88

Scipy

Scipy e un modulo che permette di utilizzare varie distribuzioni diprobabilita sia di tipo discreto che continuo

La sintassi generale e la seguente Scipystatsltnome distribuzionegt

rvs(size=z) restituisce un vettore di numeri casuali estrattisecondo la distribuzione di lunghezza z

pdf(x) restituisce il vettore della densita della distribuzionevalutata nei valori del vettore di input x (pmf per le discrete)

cdf(x) restituisce il vettore della funzione di ripartizione (ocumulativa) della distribuzione valutata nei valori del vettore di inputx

ppf(q) restituisce il vettore dei quantili della distribuzione valutatanei valori del vettore di input q

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 76 88

Variabili aleatorie discrete Binomiale

gtgtgt from scipystats import binom

gtgtgt rv = binom(n p)

rvrvs(x) restituisce un vettore di x numeri estratti secondo unadistribuzione Binomiale di parametri n p

rvpmf(x) restituisce la probabilita di ottenere esattamente x

successi in un esperimento dicotomico (01) ripetuto n volte con unaprobabilita di successo p (x puo essere un vettore)

rvcdf(q) restituisce il valore della funzione di ripartizione in q (qpuo essere un vettore)

rvppf(p) restituisce il valore del quantile di ordine p

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 77 88

Variabili aleatorie discrete Ipergeometrica

Supponiamo di avere M = 20 animali di cui n = 7 cani Se vogliamosapere la probabilita di trovare un dato numero di cani se scegliamoN = 12 dei 20 animali in maniera casuale possiamo usare una distribuzioneipergeometrica in questo modo

gtgtgt from scipystats import hypergeom

gtgtgt [M n N] = [20 7 12]

gtgtgt rv = hypergeom(M n N)

rvpmf(x) restituisce la probabilita di estrarre esattamente x cani

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 78 88

Variabili aleatorie discrete Geometrica

gtgtgt from scipystats import geom

gtgtgt rv = geom(p)

rvpmf(x) restituisce la probabilita di avere un successo dopoesattamente x insuccessi in una successione di esperimenti dicotomici(esito 01) con una probabilita di successo p (x puo essere un vettore)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 79 88

Variabili aleatorie discrete Poisson

La distribuzione di Poisson viene usata spesso come modello per il numerodi volte per cui un evento avviene in un dato intervallo di tempo (ospazio) Ad esempio si puo utilizzare per misurare il numero di chiamatericevute da un call center in una mattinata

gtgtgt from scipystats import poisson

gtgtgt mu = 2

gtgtgt rv = poisson(mu)

rvpmf(x) restituisce il seguente valore

f (x) = exp(minusmicro)microx

x

In questo caso x rappresenta il numero di eventi per cui si vuole calcolarela probabilita sapendo che in media ne accadono micro

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 80 88

Variabili aleatorie continue Uniforme

In Scipy la funzione uniforme e soltanto continua Questo significa chenella generazione di numeri casuali otterro dati di tipo float Possiamotuttavia simulare una variabile discreta estraendo la parte intera delrisultato ottenuto

gtgtgt from scipystats import uniform

gtgtgt rv = uniform()

Il comando uniform() crea una distribuzione uniforme nellrsquointervallo[01] Possiamo creare una distribuzione uniforme qualsiasi usandouniform(x y - x) per lrsquointervallo [x y]

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 81 88

Variabili aleatorie continue

norm(mu sigma) variabile Gaussiana (o Normale) di media micro edeviazione standard σ

expon(scale = 1 lambda) variabile Esponenziale di parametroλ

Altre distribuzioni (con relativa documentazione) disponibili suhttpsdocsscipyorgdocscipyreferencestatshtml

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 82 88

Esercizi - 1

1 Unrsquourna contiene 10 palline di cui 4 bianche e 6 nere Si eseguono 5estrazioni con reimmissione

1 Tracciare grafico della funzione massa di probabilita della variabilecasuale X = rdquonumero di palline bianche estratterdquo

2 Calcolare la probabilita di estrarre 2 palline bianche3 Calcolare la probabilita di estrarre al piu 2 palline bianche4 Calcolare la probabilita di estrarre almeno 2 palline bianche5 Qual e il numero minimo x tale che la probabilita di estrarre al piu x

palline bianche sia almeno 08

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 83 88

Esercizi - 2

2 Si eseguono 10 estrazioni senza reimmissione da unrsquourna

1 Tracciare il grafico della funzione massa di probabilita della variabilecasuale X = rdquonumero di palline bianche estratterdquo nei seguenti casi

1 lrsquourna contiene 100 palline di cui 20 bianche e le restanti nere2 lrsquourna contiene 100 palline di cui 2 bianche e le restanti nere

2 Tracciare il grafico della funzione massa di probabilita della variabilecasuale X nel caso dellrsquourna 1 se si eseguono 25 estrazioni

3 Consideriamo lrsquourna 1 e N = 10 estrazioni Si aumenti il numero totaleM di palline nellrsquourna mantenendo uguale a 02 la frazione di pallinebianche Per ciascun valore di M confrontare graficamente ladistribuzione di probabilita del numero di palline bianche estratte nelcaso di estrazioni con e senza reimmissione Provare con 20 40 e 200palline bianche

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 84 88

Esercizi - 3

3 Calcolare la probabilita di ottenere piu teste che croci lanciando 7volte una moneta truccata con probabilita di avere croce pari a 045

4 Calcolare la probabilita di avere almeno 3 sei lanciando 5 dadi a 12facce

5 Calcolare la probabilita di estrarre 20 euro da un sacco contenente 47monete da 1 centesimo e 53 da 2 euro estraendo (uniformemente) acaso 10 monete senza reinserirle

6 Un grammo di uranio emette mediamente 2152 particelle α ognimillisecondo Qual e con buona approssimazione la probabilita che ungrammo di uranio emetta al piu 2000 particelle α in un millisecondo

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 85 88

Esercizi - 4

7 Un uomo si risveglia in mezzo al deserto senza acqua Dopo ogniminuto ha una probabilita del 3 di perdere conoscenza per via dellecondizioni estreme Calcolare la probabilita che lrsquouomo perdaconoscenza dopo almeno due ore e la probabilita che lrsquouomo perdaconoscenza dopo esattamente un quarto drsquoora

8 Sia X una variabile aleatoria normale di parametri micro = 10 e σ = 36Calcola

1 P(X gt 5)2 P(4 le X le 16)3 P(X le 8)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 86 88

Esercizi - 5

9 Il numero di errori tipografici per pagina di una certa rivista segue unadistribuzione di Poisson Sapendo che mediamente sono presenti 02errori per pagina determinare la probabilita che una pagina contenga

1 nessun refuso2 piu refusi

10 Arrivi alla fermata dellrsquoautobus alle 1000 e sei certo che ne passerauno in un momento distribuito uniformemente tra le 1000 e le 1030

1 Qual e la probabilita che tu debba aspettare piu di 10 minuti2 Se alle 1015 lrsquoautobus non e ancora arrivato qual e la probabilita che

tu debba aspettare almeno altri 10 minuti

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 87 88

Esercizi - 6

11 Il signor Jones e convinto che il tempo di vita di una automobile (inmigliaia di chilometri percorse) sia una variabile aleatoria esponenzialedi parametro 120 Il signor Smith ha una macchina usata da vendereche ha percorso circa 10 000 chilometri

1 Se il signor Jones decide di comprarla che probabilita ha di farle farealmeno altri 20 000 chilometri prima che sia da buttare

2 Il modello assunto dal signor Jones e ragionevole

12 Sia X una variabile casuale binomiale di parametri n = 100 e p = 07

1 Tracciate la funzione di ripartizione di X2 Calcolate il primo quartile il quantile di ordine 09 e la mediana di X3 Calcolare la probabilita P(X le 60)4 Calcolare la probabilita P(X le 88)5 Trovare il piu piccolo valore x tale che P(X le x) ge 09

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 88 88

  • Lezione 1
    • Script in Python
    • Numpy
    • Esercizi
    • Pandas
    • Esercizi
      • Lezione 2
        • File csv
        • DataFrame
        • Accesso ai DataFrame
        • Frequenze
        • Esercizi
          • Lezione 3
            • Matplotlib
            • Grafici a Barre
            • Istogrammi
            • Cumulativa empirica
            • Boxplot
            • QQplot
            • Diagramma di Pareto
            • Esercizi
              • Lezione 4
                • Definizioni
                • Probabilitagrave condizionata
                • Indipendenza
                • Esercizi
                  • Lezione 5
                    • Variabili Aleatorie
                    • Funzione di Ripartizione
                    • Funzione di Densitagrave
                    • Valore Atteso
                    • Varianza
                    • Covarianza
                    • Esercizi
                      • Lezione 6
                        • Scipy - Variabili Discrete
                        • Scipy - Variabili continue
                        • Esercizi

Indipendenza

In generale sapere che A e accaduto modifica le chance che B accadaNel caso cio non avvenga cioe se P(B ∣A) = P(B) allora i 2 eventi sidicono indipendenti In questo caso sapere che A e accaduto nonaggiunge alcuna informazione

SiccomeP(A capB) = P(B ∣A)P(A)

Abbiamo che B e indipendente da A se

P(A capB) = P(B)P(A)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 58 88

Esercizi - 1

1 Svolgere gli esercizi di combinatoria

2 Si consideri il seguente esperimento casuale rdquosi lancia tre volte unamonetardquo Qual e lo spazio degli esiti di questo esperimento casualeSi scriva esplicitamente lrsquoevento rdquosi ottengono piu teste che crocirdquo

3 Si consideri il seguente esperimento casuale rdquoSi tirano due dadirdquo Siconsiderino gli eventi E = rdquola somma dei punteggi e disparirdquo F = rdquoilprimo dado realizza un 1rdquo e G = rdquola somma dei punteggi e 5rdquo Sidescrivano gli eventi E cap F E cup F F capG E cap F c e E cap F capG

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 59 88

Esercizi - 2

4 Si consideri il seguente esperimento casuale rdquoUn sistema e compostoda 4 componenti ciascuno dei quali o funziona oppure e guasto Siosserva lo stato dei componenti ottenendo un vettore (x1 x2 x3 x4)dove xi e 1 oppure 0 a seconda che il componente i-esimo funzionioppure nordquo

1 Da quanti elementi e formato lo spazio degli esiti2 Il sistema nel suo insieme funziona fintantoche entrambi i componenti

1 e 2 oppure entrambi i componenti 3 e 4 funzionano Specifica tuttigli esiti dellrsquoevento il rdquosistema funzionardquo

3 Sia E lrsquoevento rdquoi componenti 1 e 3 sono guastirdquo Quanti esiti contiene

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 60 88

Esercizi - 3

5 Si dimostri che in uno spazio degli esiti Ω dotato di una probabilita Pper ogni evento E F sub Ω vale la disuguaglianza seguente

P(E cap F ) ge P(E) + P(F ) minus 1

6 Un gruppo di 5 bambini e 10 bambine e in fila in ordine casuale nelsenso che tutte le 15 possibili permutazioni si suppongonoequiprobabili

1 Qual e la probabilita che il quarto della fila sia un bambino2 E il dodicesimo3 Qual e la probabilita che un determinato bambino occupi la terza

posizione

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 61 88

Esercizi - 4

7 In un comune vi sono 5 alberghi Se 3 persone devono scegliere unalbergo in cui pernottare qual e la probabilita che finiscano tutte inalberghi differenti Che cosa stiamo assumendo senza dirloesplicitamente

8 La media del salario annuale di un gruppo di 100 lavoratori impiegatinellrsquoamministrazione di una grande azienda e di 130000 dollari conuna deviazione standard di 20000 dollari Se si prende una persona acaso da questo gruppo cosa possiamo dire sulla probabilita che il suosalario sia

1 tra i 90000 e i 170000 dollari2 superiore a 150000 dollari

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 62 88

Esercizi - 5

9 In una certa regione vi sono due ditte che producono forni amicroonde Quelli della fabbrica A sono difettosi con probabilita 005mentre quelli della fabbrica B con probabilita 001 Supponi di averacquistato due apparecchi prodotti dalla stessa ditta che puo essere laA o la B con probabilita del 50 Se il primo microonde e difettosoqual e la probabilita condizionata che sia difettoso anche il secondo

10 Hai chiesto ad un vicino di innaffiare una piantina delicata mentre seiin vacanza Pensi che senza acqua la piantina muoia con probabilita08 mentre se innaffiata questa probabilita si ridurrebbe a 015 Latua fiducia che il vicino si ricordi di innaffiarla e del 90

1 Qual e la probabilita che la pianta sia ancora viva al tuo ritorno2 Se fosse morta quale sarebbe la probabilita che il vicino si sia

dimenticato di innaffiarla

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 63 88

Esercizi - 6

11 Una compagnia di assicurazioni classifica i suoi clienti in tre fascebasso rischio medio rischio alto rischio Le sue statistiche indicanoche le probabilita che un cliente delle tre fasce abbia un incidenteentro un periodo di un anno sono rispettivamente 005 015 e 030Se il 20 dei clienti sono a basso rischio il 50 a medio rischio e il30 ad alto rischio che percentuale dei clienti avra mediamenteincidenti in un lasso di un anno Se un cliente non ha avuto incidentinel 1987 qual e la probabilita che appartenga a ciascuna delle trefasce

12 Se un votante scelto a caso e favorevole ad una certa riforma conprobabilita di 07 qual e la probabilita che su 10 votanti esattamente7 siano favorevoli

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 64 88

Variabili aleatorie

Una variabile aleatoria (o anche variabile aleatoria) e una variabile chepuo assumere valori diversi in dipendenza da qualche fenomeno aleatorio

fenomeno lancio di 2 dadivariabile aleatoria somma dei 2 dadi

fenomeno 3 lanci di una monetavariabile aleatoria numero di rdquotesterdquo complessivo

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 65 88

Funzione di Ripartizione

Sia X una variabile aleatoria Si chiama funzione di ripartizione di X lafunzione F che associa ad ogni numero reale a la probabilita che X siaminore o uguale ad a cioe P(X le a) = FX (a)

Nel caso della moneta (fair) lanciata 3 volte (X indica il numero di testecomplessivo)

FX (a) =

⎧⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎨⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎩

0 if a lt 0

18 per 0 le a lt 1

18 + 38 = 48 per 1 le a lt 2

48 + 38 = 78 per 2 le a lt 3

88 = 1 per a ge 3

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 66 88

Funzione di densita o di massa

Sia X una variabile aleatoria Si chiama funzione di densita di X lafunzione f che associa ad ogni numero reale a la probabilita che X siauguale ad a indicata con fX (a)

Nel caso della moneta (fair) lanciata 3 volte (X indica il numero di testecomplessivo)

fX (a) =

⎧⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎨⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎩

18 per a = 0

38 per a = 1

38 per a = 2

18 per a = 3

0 altrimenti

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 67 88

Valore Atteso

Chiamato anche media (expectation in inglese) e appunto una mediapesata dei possibili valori di una variabile aleatoria Il peso dato a ciascunvalore e la probabilita data a quello specifico valore

E[X ] =sumi

aiP(X = ai)

Esempio dado truccato

valore 6 con probabilita 712

valori da 1 a 5 con probabilita 112

La variabile aleatoria X indica la faccia risultante dal lancio di un dado

E[X ] = 1

12lowast 1 + 1

12lowast 2 + 1

12lowast 3 + 1

12lowast 4 + 1

12lowast 5 + 7

12lowast 6 = 475

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 68 88

Valore Atteso - Proprieta

Sia X una variabile aleatoria con valore atteso E[X ] Se c e una costanteallora anche cX e X + c sono variabili casuali In particolare valgono leseguenti proprieta

E[cX ] = cE[X ]E[X + c] = E[X ] + c

Sia Y una variabile aleatoria Allora

E[X +Y ] = E[X ] +E[Y ]se e solo se X e Y sono independenti

E[XY ] = E[X ]E[Y ]

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 69 88

Varianza

Ersquo il valore atteso del quadrato della differenza tra la variabile aleatoria e ilsuo valore atteso

Var(X ) = E[(X minusE[X ])2] = E[X 2] minus (E[X ])2

La radice quadrata viene detta deviazione standard di X

Esempio dado truccato

E[X 2] = 1

12lowast 12 + 1

12lowast 22 + 1

12lowast 32 + 1

12lowast 42 + 1

12lowast 52 + 7

12lowast 62 ≃ 255

Var(X ) = E[X 2] minus (E[X ])2 ≃ 255 minus 4752 ≃ 3

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 70 88

Varianza - proprieta

Sia X una variabile aleatoria e c una costante Allora valgono le seguentiproprieta

1 Var(cX ) = c2Var(X )

2 Var(X + c) = Var(X )

NOTA

Var(X +X ) ne Var(X ) +Var(X )

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 71 88

Covarianza

Siano X Y due variabili aleatorie con valore atteso rispettivamenteE[X ] = microX e E[Y ] = microY La covarianza e definita come segue

Cov(X Y ) = E[(X minus microX )(Y minus microY )] = = E[XY ] minus microXmicroY

Proprieta

1 Cov(X Y ) = Cov(Y X )2 Cov(X X ) = Var(X )3 Sia a una costante allora

Cov(aX Y ) = aCov(X Y )

4 Sia Z una variabile aleatoria allora

Cov(X + Z Y ) = Cov(X Y ) + Cov(Z Y )

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 72 88

Esercizi - 1

1 Consideriamo una variabile aleatoria X che puo assumere i valori 12o 3 Se sappiamo che

fX (1) = 1

3 fX (2) = 3

7

1 Quanto vale fX (3)2 Disegnare il grafico di questa funzione di massa3 Disegnare il grafico della relativa funzione di ripartizione

2 Dimostrare che se X1 e X2 hanno la stessa distribuzione allora

Cov(X1 +X2X1 minusX2) = 0

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 73 88

Esercizi - 2

3 La funzione di ripartizione di X e definita come segue

FX (x) =

⎧⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎨⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎩

0 per x le 0

x2 per 0 le x lt 1

23 per 1 le x lt 2

1112 per 2 le x lt 3

1 per x ge 3

Se ne tracci il graficoQuanto vale P(X gt 12)Quanto vale P(2 le X le 4)Quanto vale P(X le 3)Quanto vale P(X = 1)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 74 88

Esercizi - 3

4 Un tipo di prodotti vengono classificati a seconda dei loro difetti edella fabbrica che li ha prodotti Sia X1 il numero (1 o 2) dellafabbrica e sia X2 il numero di difetti per pezzo (che possono essere da0 a 3) di un prodotto scelto a caso tra la totalita di quelli esistentiLa tabella seguente riporta la funzione di massa di probabilitacongiunta per queste due variabili aleatorie discrete Le righe siriferiscono alla variabile X1 mentre le colonne alla variabile X2

Trova le distribuzioni marginali di X1 e X2Calcola media e varianza di X2

0 1 2 31 18 116 316 182 116 116 18 14

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 75 88

Scipy

Scipy e un modulo che permette di utilizzare varie distribuzioni diprobabilita sia di tipo discreto che continuo

La sintassi generale e la seguente Scipystatsltnome distribuzionegt

rvs(size=z) restituisce un vettore di numeri casuali estrattisecondo la distribuzione di lunghezza z

pdf(x) restituisce il vettore della densita della distribuzionevalutata nei valori del vettore di input x (pmf per le discrete)

cdf(x) restituisce il vettore della funzione di ripartizione (ocumulativa) della distribuzione valutata nei valori del vettore di inputx

ppf(q) restituisce il vettore dei quantili della distribuzione valutatanei valori del vettore di input q

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 76 88

Variabili aleatorie discrete Binomiale

gtgtgt from scipystats import binom

gtgtgt rv = binom(n p)

rvrvs(x) restituisce un vettore di x numeri estratti secondo unadistribuzione Binomiale di parametri n p

rvpmf(x) restituisce la probabilita di ottenere esattamente x

successi in un esperimento dicotomico (01) ripetuto n volte con unaprobabilita di successo p (x puo essere un vettore)

rvcdf(q) restituisce il valore della funzione di ripartizione in q (qpuo essere un vettore)

rvppf(p) restituisce il valore del quantile di ordine p

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 77 88

Variabili aleatorie discrete Ipergeometrica

Supponiamo di avere M = 20 animali di cui n = 7 cani Se vogliamosapere la probabilita di trovare un dato numero di cani se scegliamoN = 12 dei 20 animali in maniera casuale possiamo usare una distribuzioneipergeometrica in questo modo

gtgtgt from scipystats import hypergeom

gtgtgt [M n N] = [20 7 12]

gtgtgt rv = hypergeom(M n N)

rvpmf(x) restituisce la probabilita di estrarre esattamente x cani

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 78 88

Variabili aleatorie discrete Geometrica

gtgtgt from scipystats import geom

gtgtgt rv = geom(p)

rvpmf(x) restituisce la probabilita di avere un successo dopoesattamente x insuccessi in una successione di esperimenti dicotomici(esito 01) con una probabilita di successo p (x puo essere un vettore)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 79 88

Variabili aleatorie discrete Poisson

La distribuzione di Poisson viene usata spesso come modello per il numerodi volte per cui un evento avviene in un dato intervallo di tempo (ospazio) Ad esempio si puo utilizzare per misurare il numero di chiamatericevute da un call center in una mattinata

gtgtgt from scipystats import poisson

gtgtgt mu = 2

gtgtgt rv = poisson(mu)

rvpmf(x) restituisce il seguente valore

f (x) = exp(minusmicro)microx

x

In questo caso x rappresenta il numero di eventi per cui si vuole calcolarela probabilita sapendo che in media ne accadono micro

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 80 88

Variabili aleatorie continue Uniforme

In Scipy la funzione uniforme e soltanto continua Questo significa chenella generazione di numeri casuali otterro dati di tipo float Possiamotuttavia simulare una variabile discreta estraendo la parte intera delrisultato ottenuto

gtgtgt from scipystats import uniform

gtgtgt rv = uniform()

Il comando uniform() crea una distribuzione uniforme nellrsquointervallo[01] Possiamo creare una distribuzione uniforme qualsiasi usandouniform(x y - x) per lrsquointervallo [x y]

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 81 88

Variabili aleatorie continue

norm(mu sigma) variabile Gaussiana (o Normale) di media micro edeviazione standard σ

expon(scale = 1 lambda) variabile Esponenziale di parametroλ

Altre distribuzioni (con relativa documentazione) disponibili suhttpsdocsscipyorgdocscipyreferencestatshtml

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 82 88

Esercizi - 1

1 Unrsquourna contiene 10 palline di cui 4 bianche e 6 nere Si eseguono 5estrazioni con reimmissione

1 Tracciare grafico della funzione massa di probabilita della variabilecasuale X = rdquonumero di palline bianche estratterdquo

2 Calcolare la probabilita di estrarre 2 palline bianche3 Calcolare la probabilita di estrarre al piu 2 palline bianche4 Calcolare la probabilita di estrarre almeno 2 palline bianche5 Qual e il numero minimo x tale che la probabilita di estrarre al piu x

palline bianche sia almeno 08

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 83 88

Esercizi - 2

2 Si eseguono 10 estrazioni senza reimmissione da unrsquourna

1 Tracciare il grafico della funzione massa di probabilita della variabilecasuale X = rdquonumero di palline bianche estratterdquo nei seguenti casi

1 lrsquourna contiene 100 palline di cui 20 bianche e le restanti nere2 lrsquourna contiene 100 palline di cui 2 bianche e le restanti nere

2 Tracciare il grafico della funzione massa di probabilita della variabilecasuale X nel caso dellrsquourna 1 se si eseguono 25 estrazioni

3 Consideriamo lrsquourna 1 e N = 10 estrazioni Si aumenti il numero totaleM di palline nellrsquourna mantenendo uguale a 02 la frazione di pallinebianche Per ciascun valore di M confrontare graficamente ladistribuzione di probabilita del numero di palline bianche estratte nelcaso di estrazioni con e senza reimmissione Provare con 20 40 e 200palline bianche

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 84 88

Esercizi - 3

3 Calcolare la probabilita di ottenere piu teste che croci lanciando 7volte una moneta truccata con probabilita di avere croce pari a 045

4 Calcolare la probabilita di avere almeno 3 sei lanciando 5 dadi a 12facce

5 Calcolare la probabilita di estrarre 20 euro da un sacco contenente 47monete da 1 centesimo e 53 da 2 euro estraendo (uniformemente) acaso 10 monete senza reinserirle

6 Un grammo di uranio emette mediamente 2152 particelle α ognimillisecondo Qual e con buona approssimazione la probabilita che ungrammo di uranio emetta al piu 2000 particelle α in un millisecondo

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 85 88

Esercizi - 4

7 Un uomo si risveglia in mezzo al deserto senza acqua Dopo ogniminuto ha una probabilita del 3 di perdere conoscenza per via dellecondizioni estreme Calcolare la probabilita che lrsquouomo perdaconoscenza dopo almeno due ore e la probabilita che lrsquouomo perdaconoscenza dopo esattamente un quarto drsquoora

8 Sia X una variabile aleatoria normale di parametri micro = 10 e σ = 36Calcola

1 P(X gt 5)2 P(4 le X le 16)3 P(X le 8)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 86 88

Esercizi - 5

9 Il numero di errori tipografici per pagina di una certa rivista segue unadistribuzione di Poisson Sapendo che mediamente sono presenti 02errori per pagina determinare la probabilita che una pagina contenga

1 nessun refuso2 piu refusi

10 Arrivi alla fermata dellrsquoautobus alle 1000 e sei certo che ne passerauno in un momento distribuito uniformemente tra le 1000 e le 1030

1 Qual e la probabilita che tu debba aspettare piu di 10 minuti2 Se alle 1015 lrsquoautobus non e ancora arrivato qual e la probabilita che

tu debba aspettare almeno altri 10 minuti

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 87 88

Esercizi - 6

11 Il signor Jones e convinto che il tempo di vita di una automobile (inmigliaia di chilometri percorse) sia una variabile aleatoria esponenzialedi parametro 120 Il signor Smith ha una macchina usata da vendereche ha percorso circa 10 000 chilometri

1 Se il signor Jones decide di comprarla che probabilita ha di farle farealmeno altri 20 000 chilometri prima che sia da buttare

2 Il modello assunto dal signor Jones e ragionevole

12 Sia X una variabile casuale binomiale di parametri n = 100 e p = 07

1 Tracciate la funzione di ripartizione di X2 Calcolate il primo quartile il quantile di ordine 09 e la mediana di X3 Calcolare la probabilita P(X le 60)4 Calcolare la probabilita P(X le 88)5 Trovare il piu piccolo valore x tale che P(X le x) ge 09

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 88 88

  • Lezione 1
    • Script in Python
    • Numpy
    • Esercizi
    • Pandas
    • Esercizi
      • Lezione 2
        • File csv
        • DataFrame
        • Accesso ai DataFrame
        • Frequenze
        • Esercizi
          • Lezione 3
            • Matplotlib
            • Grafici a Barre
            • Istogrammi
            • Cumulativa empirica
            • Boxplot
            • QQplot
            • Diagramma di Pareto
            • Esercizi
              • Lezione 4
                • Definizioni
                • Probabilitagrave condizionata
                • Indipendenza
                • Esercizi
                  • Lezione 5
                    • Variabili Aleatorie
                    • Funzione di Ripartizione
                    • Funzione di Densitagrave
                    • Valore Atteso
                    • Varianza
                    • Covarianza
                    • Esercizi
                      • Lezione 6
                        • Scipy - Variabili Discrete
                        • Scipy - Variabili continue
                        • Esercizi

Esercizi - 1

1 Svolgere gli esercizi di combinatoria

2 Si consideri il seguente esperimento casuale rdquosi lancia tre volte unamonetardquo Qual e lo spazio degli esiti di questo esperimento casualeSi scriva esplicitamente lrsquoevento rdquosi ottengono piu teste che crocirdquo

3 Si consideri il seguente esperimento casuale rdquoSi tirano due dadirdquo Siconsiderino gli eventi E = rdquola somma dei punteggi e disparirdquo F = rdquoilprimo dado realizza un 1rdquo e G = rdquola somma dei punteggi e 5rdquo Sidescrivano gli eventi E cap F E cup F F capG E cap F c e E cap F capG

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 59 88

Esercizi - 2

4 Si consideri il seguente esperimento casuale rdquoUn sistema e compostoda 4 componenti ciascuno dei quali o funziona oppure e guasto Siosserva lo stato dei componenti ottenendo un vettore (x1 x2 x3 x4)dove xi e 1 oppure 0 a seconda che il componente i-esimo funzionioppure nordquo

1 Da quanti elementi e formato lo spazio degli esiti2 Il sistema nel suo insieme funziona fintantoche entrambi i componenti

1 e 2 oppure entrambi i componenti 3 e 4 funzionano Specifica tuttigli esiti dellrsquoevento il rdquosistema funzionardquo

3 Sia E lrsquoevento rdquoi componenti 1 e 3 sono guastirdquo Quanti esiti contiene

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 60 88

Esercizi - 3

5 Si dimostri che in uno spazio degli esiti Ω dotato di una probabilita Pper ogni evento E F sub Ω vale la disuguaglianza seguente

P(E cap F ) ge P(E) + P(F ) minus 1

6 Un gruppo di 5 bambini e 10 bambine e in fila in ordine casuale nelsenso che tutte le 15 possibili permutazioni si suppongonoequiprobabili

1 Qual e la probabilita che il quarto della fila sia un bambino2 E il dodicesimo3 Qual e la probabilita che un determinato bambino occupi la terza

posizione

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 61 88

Esercizi - 4

7 In un comune vi sono 5 alberghi Se 3 persone devono scegliere unalbergo in cui pernottare qual e la probabilita che finiscano tutte inalberghi differenti Che cosa stiamo assumendo senza dirloesplicitamente

8 La media del salario annuale di un gruppo di 100 lavoratori impiegatinellrsquoamministrazione di una grande azienda e di 130000 dollari conuna deviazione standard di 20000 dollari Se si prende una persona acaso da questo gruppo cosa possiamo dire sulla probabilita che il suosalario sia

1 tra i 90000 e i 170000 dollari2 superiore a 150000 dollari

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 62 88

Esercizi - 5

9 In una certa regione vi sono due ditte che producono forni amicroonde Quelli della fabbrica A sono difettosi con probabilita 005mentre quelli della fabbrica B con probabilita 001 Supponi di averacquistato due apparecchi prodotti dalla stessa ditta che puo essere laA o la B con probabilita del 50 Se il primo microonde e difettosoqual e la probabilita condizionata che sia difettoso anche il secondo

10 Hai chiesto ad un vicino di innaffiare una piantina delicata mentre seiin vacanza Pensi che senza acqua la piantina muoia con probabilita08 mentre se innaffiata questa probabilita si ridurrebbe a 015 Latua fiducia che il vicino si ricordi di innaffiarla e del 90

1 Qual e la probabilita che la pianta sia ancora viva al tuo ritorno2 Se fosse morta quale sarebbe la probabilita che il vicino si sia

dimenticato di innaffiarla

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 63 88

Esercizi - 6

11 Una compagnia di assicurazioni classifica i suoi clienti in tre fascebasso rischio medio rischio alto rischio Le sue statistiche indicanoche le probabilita che un cliente delle tre fasce abbia un incidenteentro un periodo di un anno sono rispettivamente 005 015 e 030Se il 20 dei clienti sono a basso rischio il 50 a medio rischio e il30 ad alto rischio che percentuale dei clienti avra mediamenteincidenti in un lasso di un anno Se un cliente non ha avuto incidentinel 1987 qual e la probabilita che appartenga a ciascuna delle trefasce

12 Se un votante scelto a caso e favorevole ad una certa riforma conprobabilita di 07 qual e la probabilita che su 10 votanti esattamente7 siano favorevoli

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 64 88

Variabili aleatorie

Una variabile aleatoria (o anche variabile aleatoria) e una variabile chepuo assumere valori diversi in dipendenza da qualche fenomeno aleatorio

fenomeno lancio di 2 dadivariabile aleatoria somma dei 2 dadi

fenomeno 3 lanci di una monetavariabile aleatoria numero di rdquotesterdquo complessivo

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 65 88

Funzione di Ripartizione

Sia X una variabile aleatoria Si chiama funzione di ripartizione di X lafunzione F che associa ad ogni numero reale a la probabilita che X siaminore o uguale ad a cioe P(X le a) = FX (a)

Nel caso della moneta (fair) lanciata 3 volte (X indica il numero di testecomplessivo)

FX (a) =

⎧⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎨⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎩

0 if a lt 0

18 per 0 le a lt 1

18 + 38 = 48 per 1 le a lt 2

48 + 38 = 78 per 2 le a lt 3

88 = 1 per a ge 3

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 66 88

Funzione di densita o di massa

Sia X una variabile aleatoria Si chiama funzione di densita di X lafunzione f che associa ad ogni numero reale a la probabilita che X siauguale ad a indicata con fX (a)

Nel caso della moneta (fair) lanciata 3 volte (X indica il numero di testecomplessivo)

fX (a) =

⎧⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎨⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎩

18 per a = 0

38 per a = 1

38 per a = 2

18 per a = 3

0 altrimenti

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 67 88

Valore Atteso

Chiamato anche media (expectation in inglese) e appunto una mediapesata dei possibili valori di una variabile aleatoria Il peso dato a ciascunvalore e la probabilita data a quello specifico valore

E[X ] =sumi

aiP(X = ai)

Esempio dado truccato

valore 6 con probabilita 712

valori da 1 a 5 con probabilita 112

La variabile aleatoria X indica la faccia risultante dal lancio di un dado

E[X ] = 1

12lowast 1 + 1

12lowast 2 + 1

12lowast 3 + 1

12lowast 4 + 1

12lowast 5 + 7

12lowast 6 = 475

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 68 88

Valore Atteso - Proprieta

Sia X una variabile aleatoria con valore atteso E[X ] Se c e una costanteallora anche cX e X + c sono variabili casuali In particolare valgono leseguenti proprieta

E[cX ] = cE[X ]E[X + c] = E[X ] + c

Sia Y una variabile aleatoria Allora

E[X +Y ] = E[X ] +E[Y ]se e solo se X e Y sono independenti

E[XY ] = E[X ]E[Y ]

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 69 88

Varianza

Ersquo il valore atteso del quadrato della differenza tra la variabile aleatoria e ilsuo valore atteso

Var(X ) = E[(X minusE[X ])2] = E[X 2] minus (E[X ])2

La radice quadrata viene detta deviazione standard di X

Esempio dado truccato

E[X 2] = 1

12lowast 12 + 1

12lowast 22 + 1

12lowast 32 + 1

12lowast 42 + 1

12lowast 52 + 7

12lowast 62 ≃ 255

Var(X ) = E[X 2] minus (E[X ])2 ≃ 255 minus 4752 ≃ 3

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 70 88

Varianza - proprieta

Sia X una variabile aleatoria e c una costante Allora valgono le seguentiproprieta

1 Var(cX ) = c2Var(X )

2 Var(X + c) = Var(X )

NOTA

Var(X +X ) ne Var(X ) +Var(X )

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 71 88

Covarianza

Siano X Y due variabili aleatorie con valore atteso rispettivamenteE[X ] = microX e E[Y ] = microY La covarianza e definita come segue

Cov(X Y ) = E[(X minus microX )(Y minus microY )] = = E[XY ] minus microXmicroY

Proprieta

1 Cov(X Y ) = Cov(Y X )2 Cov(X X ) = Var(X )3 Sia a una costante allora

Cov(aX Y ) = aCov(X Y )

4 Sia Z una variabile aleatoria allora

Cov(X + Z Y ) = Cov(X Y ) + Cov(Z Y )

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 72 88

Esercizi - 1

1 Consideriamo una variabile aleatoria X che puo assumere i valori 12o 3 Se sappiamo che

fX (1) = 1

3 fX (2) = 3

7

1 Quanto vale fX (3)2 Disegnare il grafico di questa funzione di massa3 Disegnare il grafico della relativa funzione di ripartizione

2 Dimostrare che se X1 e X2 hanno la stessa distribuzione allora

Cov(X1 +X2X1 minusX2) = 0

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 73 88

Esercizi - 2

3 La funzione di ripartizione di X e definita come segue

FX (x) =

⎧⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎨⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎩

0 per x le 0

x2 per 0 le x lt 1

23 per 1 le x lt 2

1112 per 2 le x lt 3

1 per x ge 3

Se ne tracci il graficoQuanto vale P(X gt 12)Quanto vale P(2 le X le 4)Quanto vale P(X le 3)Quanto vale P(X = 1)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 74 88

Esercizi - 3

4 Un tipo di prodotti vengono classificati a seconda dei loro difetti edella fabbrica che li ha prodotti Sia X1 il numero (1 o 2) dellafabbrica e sia X2 il numero di difetti per pezzo (che possono essere da0 a 3) di un prodotto scelto a caso tra la totalita di quelli esistentiLa tabella seguente riporta la funzione di massa di probabilitacongiunta per queste due variabili aleatorie discrete Le righe siriferiscono alla variabile X1 mentre le colonne alla variabile X2

Trova le distribuzioni marginali di X1 e X2Calcola media e varianza di X2

0 1 2 31 18 116 316 182 116 116 18 14

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 75 88

Scipy

Scipy e un modulo che permette di utilizzare varie distribuzioni diprobabilita sia di tipo discreto che continuo

La sintassi generale e la seguente Scipystatsltnome distribuzionegt

rvs(size=z) restituisce un vettore di numeri casuali estrattisecondo la distribuzione di lunghezza z

pdf(x) restituisce il vettore della densita della distribuzionevalutata nei valori del vettore di input x (pmf per le discrete)

cdf(x) restituisce il vettore della funzione di ripartizione (ocumulativa) della distribuzione valutata nei valori del vettore di inputx

ppf(q) restituisce il vettore dei quantili della distribuzione valutatanei valori del vettore di input q

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 76 88

Variabili aleatorie discrete Binomiale

gtgtgt from scipystats import binom

gtgtgt rv = binom(n p)

rvrvs(x) restituisce un vettore di x numeri estratti secondo unadistribuzione Binomiale di parametri n p

rvpmf(x) restituisce la probabilita di ottenere esattamente x

successi in un esperimento dicotomico (01) ripetuto n volte con unaprobabilita di successo p (x puo essere un vettore)

rvcdf(q) restituisce il valore della funzione di ripartizione in q (qpuo essere un vettore)

rvppf(p) restituisce il valore del quantile di ordine p

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 77 88

Variabili aleatorie discrete Ipergeometrica

Supponiamo di avere M = 20 animali di cui n = 7 cani Se vogliamosapere la probabilita di trovare un dato numero di cani se scegliamoN = 12 dei 20 animali in maniera casuale possiamo usare una distribuzioneipergeometrica in questo modo

gtgtgt from scipystats import hypergeom

gtgtgt [M n N] = [20 7 12]

gtgtgt rv = hypergeom(M n N)

rvpmf(x) restituisce la probabilita di estrarre esattamente x cani

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 78 88

Variabili aleatorie discrete Geometrica

gtgtgt from scipystats import geom

gtgtgt rv = geom(p)

rvpmf(x) restituisce la probabilita di avere un successo dopoesattamente x insuccessi in una successione di esperimenti dicotomici(esito 01) con una probabilita di successo p (x puo essere un vettore)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 79 88

Variabili aleatorie discrete Poisson

La distribuzione di Poisson viene usata spesso come modello per il numerodi volte per cui un evento avviene in un dato intervallo di tempo (ospazio) Ad esempio si puo utilizzare per misurare il numero di chiamatericevute da un call center in una mattinata

gtgtgt from scipystats import poisson

gtgtgt mu = 2

gtgtgt rv = poisson(mu)

rvpmf(x) restituisce il seguente valore

f (x) = exp(minusmicro)microx

x

In questo caso x rappresenta il numero di eventi per cui si vuole calcolarela probabilita sapendo che in media ne accadono micro

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 80 88

Variabili aleatorie continue Uniforme

In Scipy la funzione uniforme e soltanto continua Questo significa chenella generazione di numeri casuali otterro dati di tipo float Possiamotuttavia simulare una variabile discreta estraendo la parte intera delrisultato ottenuto

gtgtgt from scipystats import uniform

gtgtgt rv = uniform()

Il comando uniform() crea una distribuzione uniforme nellrsquointervallo[01] Possiamo creare una distribuzione uniforme qualsiasi usandouniform(x y - x) per lrsquointervallo [x y]

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 81 88

Variabili aleatorie continue

norm(mu sigma) variabile Gaussiana (o Normale) di media micro edeviazione standard σ

expon(scale = 1 lambda) variabile Esponenziale di parametroλ

Altre distribuzioni (con relativa documentazione) disponibili suhttpsdocsscipyorgdocscipyreferencestatshtml

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 82 88

Esercizi - 1

1 Unrsquourna contiene 10 palline di cui 4 bianche e 6 nere Si eseguono 5estrazioni con reimmissione

1 Tracciare grafico della funzione massa di probabilita della variabilecasuale X = rdquonumero di palline bianche estratterdquo

2 Calcolare la probabilita di estrarre 2 palline bianche3 Calcolare la probabilita di estrarre al piu 2 palline bianche4 Calcolare la probabilita di estrarre almeno 2 palline bianche5 Qual e il numero minimo x tale che la probabilita di estrarre al piu x

palline bianche sia almeno 08

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 83 88

Esercizi - 2

2 Si eseguono 10 estrazioni senza reimmissione da unrsquourna

1 Tracciare il grafico della funzione massa di probabilita della variabilecasuale X = rdquonumero di palline bianche estratterdquo nei seguenti casi

1 lrsquourna contiene 100 palline di cui 20 bianche e le restanti nere2 lrsquourna contiene 100 palline di cui 2 bianche e le restanti nere

2 Tracciare il grafico della funzione massa di probabilita della variabilecasuale X nel caso dellrsquourna 1 se si eseguono 25 estrazioni

3 Consideriamo lrsquourna 1 e N = 10 estrazioni Si aumenti il numero totaleM di palline nellrsquourna mantenendo uguale a 02 la frazione di pallinebianche Per ciascun valore di M confrontare graficamente ladistribuzione di probabilita del numero di palline bianche estratte nelcaso di estrazioni con e senza reimmissione Provare con 20 40 e 200palline bianche

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 84 88

Esercizi - 3

3 Calcolare la probabilita di ottenere piu teste che croci lanciando 7volte una moneta truccata con probabilita di avere croce pari a 045

4 Calcolare la probabilita di avere almeno 3 sei lanciando 5 dadi a 12facce

5 Calcolare la probabilita di estrarre 20 euro da un sacco contenente 47monete da 1 centesimo e 53 da 2 euro estraendo (uniformemente) acaso 10 monete senza reinserirle

6 Un grammo di uranio emette mediamente 2152 particelle α ognimillisecondo Qual e con buona approssimazione la probabilita che ungrammo di uranio emetta al piu 2000 particelle α in un millisecondo

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 85 88

Esercizi - 4

7 Un uomo si risveglia in mezzo al deserto senza acqua Dopo ogniminuto ha una probabilita del 3 di perdere conoscenza per via dellecondizioni estreme Calcolare la probabilita che lrsquouomo perdaconoscenza dopo almeno due ore e la probabilita che lrsquouomo perdaconoscenza dopo esattamente un quarto drsquoora

8 Sia X una variabile aleatoria normale di parametri micro = 10 e σ = 36Calcola

1 P(X gt 5)2 P(4 le X le 16)3 P(X le 8)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 86 88

Esercizi - 5

9 Il numero di errori tipografici per pagina di una certa rivista segue unadistribuzione di Poisson Sapendo che mediamente sono presenti 02errori per pagina determinare la probabilita che una pagina contenga

1 nessun refuso2 piu refusi

10 Arrivi alla fermata dellrsquoautobus alle 1000 e sei certo che ne passerauno in un momento distribuito uniformemente tra le 1000 e le 1030

1 Qual e la probabilita che tu debba aspettare piu di 10 minuti2 Se alle 1015 lrsquoautobus non e ancora arrivato qual e la probabilita che

tu debba aspettare almeno altri 10 minuti

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 87 88

Esercizi - 6

11 Il signor Jones e convinto che il tempo di vita di una automobile (inmigliaia di chilometri percorse) sia una variabile aleatoria esponenzialedi parametro 120 Il signor Smith ha una macchina usata da vendereche ha percorso circa 10 000 chilometri

1 Se il signor Jones decide di comprarla che probabilita ha di farle farealmeno altri 20 000 chilometri prima che sia da buttare

2 Il modello assunto dal signor Jones e ragionevole

12 Sia X una variabile casuale binomiale di parametri n = 100 e p = 07

1 Tracciate la funzione di ripartizione di X2 Calcolate il primo quartile il quantile di ordine 09 e la mediana di X3 Calcolare la probabilita P(X le 60)4 Calcolare la probabilita P(X le 88)5 Trovare il piu piccolo valore x tale che P(X le x) ge 09

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 88 88

  • Lezione 1
    • Script in Python
    • Numpy
    • Esercizi
    • Pandas
    • Esercizi
      • Lezione 2
        • File csv
        • DataFrame
        • Accesso ai DataFrame
        • Frequenze
        • Esercizi
          • Lezione 3
            • Matplotlib
            • Grafici a Barre
            • Istogrammi
            • Cumulativa empirica
            • Boxplot
            • QQplot
            • Diagramma di Pareto
            • Esercizi
              • Lezione 4
                • Definizioni
                • Probabilitagrave condizionata
                • Indipendenza
                • Esercizi
                  • Lezione 5
                    • Variabili Aleatorie
                    • Funzione di Ripartizione
                    • Funzione di Densitagrave
                    • Valore Atteso
                    • Varianza
                    • Covarianza
                    • Esercizi
                      • Lezione 6
                        • Scipy - Variabili Discrete
                        • Scipy - Variabili continue
                        • Esercizi

Esercizi - 2

4 Si consideri il seguente esperimento casuale rdquoUn sistema e compostoda 4 componenti ciascuno dei quali o funziona oppure e guasto Siosserva lo stato dei componenti ottenendo un vettore (x1 x2 x3 x4)dove xi e 1 oppure 0 a seconda che il componente i-esimo funzionioppure nordquo

1 Da quanti elementi e formato lo spazio degli esiti2 Il sistema nel suo insieme funziona fintantoche entrambi i componenti

1 e 2 oppure entrambi i componenti 3 e 4 funzionano Specifica tuttigli esiti dellrsquoevento il rdquosistema funzionardquo

3 Sia E lrsquoevento rdquoi componenti 1 e 3 sono guastirdquo Quanti esiti contiene

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 60 88

Esercizi - 3

5 Si dimostri che in uno spazio degli esiti Ω dotato di una probabilita Pper ogni evento E F sub Ω vale la disuguaglianza seguente

P(E cap F ) ge P(E) + P(F ) minus 1

6 Un gruppo di 5 bambini e 10 bambine e in fila in ordine casuale nelsenso che tutte le 15 possibili permutazioni si suppongonoequiprobabili

1 Qual e la probabilita che il quarto della fila sia un bambino2 E il dodicesimo3 Qual e la probabilita che un determinato bambino occupi la terza

posizione

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 61 88

Esercizi - 4

7 In un comune vi sono 5 alberghi Se 3 persone devono scegliere unalbergo in cui pernottare qual e la probabilita che finiscano tutte inalberghi differenti Che cosa stiamo assumendo senza dirloesplicitamente

8 La media del salario annuale di un gruppo di 100 lavoratori impiegatinellrsquoamministrazione di una grande azienda e di 130000 dollari conuna deviazione standard di 20000 dollari Se si prende una persona acaso da questo gruppo cosa possiamo dire sulla probabilita che il suosalario sia

1 tra i 90000 e i 170000 dollari2 superiore a 150000 dollari

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 62 88

Esercizi - 5

9 In una certa regione vi sono due ditte che producono forni amicroonde Quelli della fabbrica A sono difettosi con probabilita 005mentre quelli della fabbrica B con probabilita 001 Supponi di averacquistato due apparecchi prodotti dalla stessa ditta che puo essere laA o la B con probabilita del 50 Se il primo microonde e difettosoqual e la probabilita condizionata che sia difettoso anche il secondo

10 Hai chiesto ad un vicino di innaffiare una piantina delicata mentre seiin vacanza Pensi che senza acqua la piantina muoia con probabilita08 mentre se innaffiata questa probabilita si ridurrebbe a 015 Latua fiducia che il vicino si ricordi di innaffiarla e del 90

1 Qual e la probabilita che la pianta sia ancora viva al tuo ritorno2 Se fosse morta quale sarebbe la probabilita che il vicino si sia

dimenticato di innaffiarla

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 63 88

Esercizi - 6

11 Una compagnia di assicurazioni classifica i suoi clienti in tre fascebasso rischio medio rischio alto rischio Le sue statistiche indicanoche le probabilita che un cliente delle tre fasce abbia un incidenteentro un periodo di un anno sono rispettivamente 005 015 e 030Se il 20 dei clienti sono a basso rischio il 50 a medio rischio e il30 ad alto rischio che percentuale dei clienti avra mediamenteincidenti in un lasso di un anno Se un cliente non ha avuto incidentinel 1987 qual e la probabilita che appartenga a ciascuna delle trefasce

12 Se un votante scelto a caso e favorevole ad una certa riforma conprobabilita di 07 qual e la probabilita che su 10 votanti esattamente7 siano favorevoli

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 64 88

Variabili aleatorie

Una variabile aleatoria (o anche variabile aleatoria) e una variabile chepuo assumere valori diversi in dipendenza da qualche fenomeno aleatorio

fenomeno lancio di 2 dadivariabile aleatoria somma dei 2 dadi

fenomeno 3 lanci di una monetavariabile aleatoria numero di rdquotesterdquo complessivo

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 65 88

Funzione di Ripartizione

Sia X una variabile aleatoria Si chiama funzione di ripartizione di X lafunzione F che associa ad ogni numero reale a la probabilita che X siaminore o uguale ad a cioe P(X le a) = FX (a)

Nel caso della moneta (fair) lanciata 3 volte (X indica il numero di testecomplessivo)

FX (a) =

⎧⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎨⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎩

0 if a lt 0

18 per 0 le a lt 1

18 + 38 = 48 per 1 le a lt 2

48 + 38 = 78 per 2 le a lt 3

88 = 1 per a ge 3

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 66 88

Funzione di densita o di massa

Sia X una variabile aleatoria Si chiama funzione di densita di X lafunzione f che associa ad ogni numero reale a la probabilita che X siauguale ad a indicata con fX (a)

Nel caso della moneta (fair) lanciata 3 volte (X indica il numero di testecomplessivo)

fX (a) =

⎧⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎨⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎩

18 per a = 0

38 per a = 1

38 per a = 2

18 per a = 3

0 altrimenti

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 67 88

Valore Atteso

Chiamato anche media (expectation in inglese) e appunto una mediapesata dei possibili valori di una variabile aleatoria Il peso dato a ciascunvalore e la probabilita data a quello specifico valore

E[X ] =sumi

aiP(X = ai)

Esempio dado truccato

valore 6 con probabilita 712

valori da 1 a 5 con probabilita 112

La variabile aleatoria X indica la faccia risultante dal lancio di un dado

E[X ] = 1

12lowast 1 + 1

12lowast 2 + 1

12lowast 3 + 1

12lowast 4 + 1

12lowast 5 + 7

12lowast 6 = 475

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 68 88

Valore Atteso - Proprieta

Sia X una variabile aleatoria con valore atteso E[X ] Se c e una costanteallora anche cX e X + c sono variabili casuali In particolare valgono leseguenti proprieta

E[cX ] = cE[X ]E[X + c] = E[X ] + c

Sia Y una variabile aleatoria Allora

E[X +Y ] = E[X ] +E[Y ]se e solo se X e Y sono independenti

E[XY ] = E[X ]E[Y ]

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 69 88

Varianza

Ersquo il valore atteso del quadrato della differenza tra la variabile aleatoria e ilsuo valore atteso

Var(X ) = E[(X minusE[X ])2] = E[X 2] minus (E[X ])2

La radice quadrata viene detta deviazione standard di X

Esempio dado truccato

E[X 2] = 1

12lowast 12 + 1

12lowast 22 + 1

12lowast 32 + 1

12lowast 42 + 1

12lowast 52 + 7

12lowast 62 ≃ 255

Var(X ) = E[X 2] minus (E[X ])2 ≃ 255 minus 4752 ≃ 3

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 70 88

Varianza - proprieta

Sia X una variabile aleatoria e c una costante Allora valgono le seguentiproprieta

1 Var(cX ) = c2Var(X )

2 Var(X + c) = Var(X )

NOTA

Var(X +X ) ne Var(X ) +Var(X )

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 71 88

Covarianza

Siano X Y due variabili aleatorie con valore atteso rispettivamenteE[X ] = microX e E[Y ] = microY La covarianza e definita come segue

Cov(X Y ) = E[(X minus microX )(Y minus microY )] = = E[XY ] minus microXmicroY

Proprieta

1 Cov(X Y ) = Cov(Y X )2 Cov(X X ) = Var(X )3 Sia a una costante allora

Cov(aX Y ) = aCov(X Y )

4 Sia Z una variabile aleatoria allora

Cov(X + Z Y ) = Cov(X Y ) + Cov(Z Y )

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 72 88

Esercizi - 1

1 Consideriamo una variabile aleatoria X che puo assumere i valori 12o 3 Se sappiamo che

fX (1) = 1

3 fX (2) = 3

7

1 Quanto vale fX (3)2 Disegnare il grafico di questa funzione di massa3 Disegnare il grafico della relativa funzione di ripartizione

2 Dimostrare che se X1 e X2 hanno la stessa distribuzione allora

Cov(X1 +X2X1 minusX2) = 0

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 73 88

Esercizi - 2

3 La funzione di ripartizione di X e definita come segue

FX (x) =

⎧⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎨⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎩

0 per x le 0

x2 per 0 le x lt 1

23 per 1 le x lt 2

1112 per 2 le x lt 3

1 per x ge 3

Se ne tracci il graficoQuanto vale P(X gt 12)Quanto vale P(2 le X le 4)Quanto vale P(X le 3)Quanto vale P(X = 1)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 74 88

Esercizi - 3

4 Un tipo di prodotti vengono classificati a seconda dei loro difetti edella fabbrica che li ha prodotti Sia X1 il numero (1 o 2) dellafabbrica e sia X2 il numero di difetti per pezzo (che possono essere da0 a 3) di un prodotto scelto a caso tra la totalita di quelli esistentiLa tabella seguente riporta la funzione di massa di probabilitacongiunta per queste due variabili aleatorie discrete Le righe siriferiscono alla variabile X1 mentre le colonne alla variabile X2

Trova le distribuzioni marginali di X1 e X2Calcola media e varianza di X2

0 1 2 31 18 116 316 182 116 116 18 14

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 75 88

Scipy

Scipy e un modulo che permette di utilizzare varie distribuzioni diprobabilita sia di tipo discreto che continuo

La sintassi generale e la seguente Scipystatsltnome distribuzionegt

rvs(size=z) restituisce un vettore di numeri casuali estrattisecondo la distribuzione di lunghezza z

pdf(x) restituisce il vettore della densita della distribuzionevalutata nei valori del vettore di input x (pmf per le discrete)

cdf(x) restituisce il vettore della funzione di ripartizione (ocumulativa) della distribuzione valutata nei valori del vettore di inputx

ppf(q) restituisce il vettore dei quantili della distribuzione valutatanei valori del vettore di input q

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 76 88

Variabili aleatorie discrete Binomiale

gtgtgt from scipystats import binom

gtgtgt rv = binom(n p)

rvrvs(x) restituisce un vettore di x numeri estratti secondo unadistribuzione Binomiale di parametri n p

rvpmf(x) restituisce la probabilita di ottenere esattamente x

successi in un esperimento dicotomico (01) ripetuto n volte con unaprobabilita di successo p (x puo essere un vettore)

rvcdf(q) restituisce il valore della funzione di ripartizione in q (qpuo essere un vettore)

rvppf(p) restituisce il valore del quantile di ordine p

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 77 88

Variabili aleatorie discrete Ipergeometrica

Supponiamo di avere M = 20 animali di cui n = 7 cani Se vogliamosapere la probabilita di trovare un dato numero di cani se scegliamoN = 12 dei 20 animali in maniera casuale possiamo usare una distribuzioneipergeometrica in questo modo

gtgtgt from scipystats import hypergeom

gtgtgt [M n N] = [20 7 12]

gtgtgt rv = hypergeom(M n N)

rvpmf(x) restituisce la probabilita di estrarre esattamente x cani

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 78 88

Variabili aleatorie discrete Geometrica

gtgtgt from scipystats import geom

gtgtgt rv = geom(p)

rvpmf(x) restituisce la probabilita di avere un successo dopoesattamente x insuccessi in una successione di esperimenti dicotomici(esito 01) con una probabilita di successo p (x puo essere un vettore)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 79 88

Variabili aleatorie discrete Poisson

La distribuzione di Poisson viene usata spesso come modello per il numerodi volte per cui un evento avviene in un dato intervallo di tempo (ospazio) Ad esempio si puo utilizzare per misurare il numero di chiamatericevute da un call center in una mattinata

gtgtgt from scipystats import poisson

gtgtgt mu = 2

gtgtgt rv = poisson(mu)

rvpmf(x) restituisce il seguente valore

f (x) = exp(minusmicro)microx

x

In questo caso x rappresenta il numero di eventi per cui si vuole calcolarela probabilita sapendo che in media ne accadono micro

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 80 88

Variabili aleatorie continue Uniforme

In Scipy la funzione uniforme e soltanto continua Questo significa chenella generazione di numeri casuali otterro dati di tipo float Possiamotuttavia simulare una variabile discreta estraendo la parte intera delrisultato ottenuto

gtgtgt from scipystats import uniform

gtgtgt rv = uniform()

Il comando uniform() crea una distribuzione uniforme nellrsquointervallo[01] Possiamo creare una distribuzione uniforme qualsiasi usandouniform(x y - x) per lrsquointervallo [x y]

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 81 88

Variabili aleatorie continue

norm(mu sigma) variabile Gaussiana (o Normale) di media micro edeviazione standard σ

expon(scale = 1 lambda) variabile Esponenziale di parametroλ

Altre distribuzioni (con relativa documentazione) disponibili suhttpsdocsscipyorgdocscipyreferencestatshtml

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 82 88

Esercizi - 1

1 Unrsquourna contiene 10 palline di cui 4 bianche e 6 nere Si eseguono 5estrazioni con reimmissione

1 Tracciare grafico della funzione massa di probabilita della variabilecasuale X = rdquonumero di palline bianche estratterdquo

2 Calcolare la probabilita di estrarre 2 palline bianche3 Calcolare la probabilita di estrarre al piu 2 palline bianche4 Calcolare la probabilita di estrarre almeno 2 palline bianche5 Qual e il numero minimo x tale che la probabilita di estrarre al piu x

palline bianche sia almeno 08

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 83 88

Esercizi - 2

2 Si eseguono 10 estrazioni senza reimmissione da unrsquourna

1 Tracciare il grafico della funzione massa di probabilita della variabilecasuale X = rdquonumero di palline bianche estratterdquo nei seguenti casi

1 lrsquourna contiene 100 palline di cui 20 bianche e le restanti nere2 lrsquourna contiene 100 palline di cui 2 bianche e le restanti nere

2 Tracciare il grafico della funzione massa di probabilita della variabilecasuale X nel caso dellrsquourna 1 se si eseguono 25 estrazioni

3 Consideriamo lrsquourna 1 e N = 10 estrazioni Si aumenti il numero totaleM di palline nellrsquourna mantenendo uguale a 02 la frazione di pallinebianche Per ciascun valore di M confrontare graficamente ladistribuzione di probabilita del numero di palline bianche estratte nelcaso di estrazioni con e senza reimmissione Provare con 20 40 e 200palline bianche

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 84 88

Esercizi - 3

3 Calcolare la probabilita di ottenere piu teste che croci lanciando 7volte una moneta truccata con probabilita di avere croce pari a 045

4 Calcolare la probabilita di avere almeno 3 sei lanciando 5 dadi a 12facce

5 Calcolare la probabilita di estrarre 20 euro da un sacco contenente 47monete da 1 centesimo e 53 da 2 euro estraendo (uniformemente) acaso 10 monete senza reinserirle

6 Un grammo di uranio emette mediamente 2152 particelle α ognimillisecondo Qual e con buona approssimazione la probabilita che ungrammo di uranio emetta al piu 2000 particelle α in un millisecondo

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 85 88

Esercizi - 4

7 Un uomo si risveglia in mezzo al deserto senza acqua Dopo ogniminuto ha una probabilita del 3 di perdere conoscenza per via dellecondizioni estreme Calcolare la probabilita che lrsquouomo perdaconoscenza dopo almeno due ore e la probabilita che lrsquouomo perdaconoscenza dopo esattamente un quarto drsquoora

8 Sia X una variabile aleatoria normale di parametri micro = 10 e σ = 36Calcola

1 P(X gt 5)2 P(4 le X le 16)3 P(X le 8)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 86 88

Esercizi - 5

9 Il numero di errori tipografici per pagina di una certa rivista segue unadistribuzione di Poisson Sapendo che mediamente sono presenti 02errori per pagina determinare la probabilita che una pagina contenga

1 nessun refuso2 piu refusi

10 Arrivi alla fermata dellrsquoautobus alle 1000 e sei certo che ne passerauno in un momento distribuito uniformemente tra le 1000 e le 1030

1 Qual e la probabilita che tu debba aspettare piu di 10 minuti2 Se alle 1015 lrsquoautobus non e ancora arrivato qual e la probabilita che

tu debba aspettare almeno altri 10 minuti

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 87 88

Esercizi - 6

11 Il signor Jones e convinto che il tempo di vita di una automobile (inmigliaia di chilometri percorse) sia una variabile aleatoria esponenzialedi parametro 120 Il signor Smith ha una macchina usata da vendereche ha percorso circa 10 000 chilometri

1 Se il signor Jones decide di comprarla che probabilita ha di farle farealmeno altri 20 000 chilometri prima che sia da buttare

2 Il modello assunto dal signor Jones e ragionevole

12 Sia X una variabile casuale binomiale di parametri n = 100 e p = 07

1 Tracciate la funzione di ripartizione di X2 Calcolate il primo quartile il quantile di ordine 09 e la mediana di X3 Calcolare la probabilita P(X le 60)4 Calcolare la probabilita P(X le 88)5 Trovare il piu piccolo valore x tale che P(X le x) ge 09

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 88 88

  • Lezione 1
    • Script in Python
    • Numpy
    • Esercizi
    • Pandas
    • Esercizi
      • Lezione 2
        • File csv
        • DataFrame
        • Accesso ai DataFrame
        • Frequenze
        • Esercizi
          • Lezione 3
            • Matplotlib
            • Grafici a Barre
            • Istogrammi
            • Cumulativa empirica
            • Boxplot
            • QQplot
            • Diagramma di Pareto
            • Esercizi
              • Lezione 4
                • Definizioni
                • Probabilitagrave condizionata
                • Indipendenza
                • Esercizi
                  • Lezione 5
                    • Variabili Aleatorie
                    • Funzione di Ripartizione
                    • Funzione di Densitagrave
                    • Valore Atteso
                    • Varianza
                    • Covarianza
                    • Esercizi
                      • Lezione 6
                        • Scipy - Variabili Discrete
                        • Scipy - Variabili continue
                        • Esercizi

Esercizi - 3

5 Si dimostri che in uno spazio degli esiti Ω dotato di una probabilita Pper ogni evento E F sub Ω vale la disuguaglianza seguente

P(E cap F ) ge P(E) + P(F ) minus 1

6 Un gruppo di 5 bambini e 10 bambine e in fila in ordine casuale nelsenso che tutte le 15 possibili permutazioni si suppongonoequiprobabili

1 Qual e la probabilita che il quarto della fila sia un bambino2 E il dodicesimo3 Qual e la probabilita che un determinato bambino occupi la terza

posizione

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 61 88

Esercizi - 4

7 In un comune vi sono 5 alberghi Se 3 persone devono scegliere unalbergo in cui pernottare qual e la probabilita che finiscano tutte inalberghi differenti Che cosa stiamo assumendo senza dirloesplicitamente

8 La media del salario annuale di un gruppo di 100 lavoratori impiegatinellrsquoamministrazione di una grande azienda e di 130000 dollari conuna deviazione standard di 20000 dollari Se si prende una persona acaso da questo gruppo cosa possiamo dire sulla probabilita che il suosalario sia

1 tra i 90000 e i 170000 dollari2 superiore a 150000 dollari

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 62 88

Esercizi - 5

9 In una certa regione vi sono due ditte che producono forni amicroonde Quelli della fabbrica A sono difettosi con probabilita 005mentre quelli della fabbrica B con probabilita 001 Supponi di averacquistato due apparecchi prodotti dalla stessa ditta che puo essere laA o la B con probabilita del 50 Se il primo microonde e difettosoqual e la probabilita condizionata che sia difettoso anche il secondo

10 Hai chiesto ad un vicino di innaffiare una piantina delicata mentre seiin vacanza Pensi che senza acqua la piantina muoia con probabilita08 mentre se innaffiata questa probabilita si ridurrebbe a 015 Latua fiducia che il vicino si ricordi di innaffiarla e del 90

1 Qual e la probabilita che la pianta sia ancora viva al tuo ritorno2 Se fosse morta quale sarebbe la probabilita che il vicino si sia

dimenticato di innaffiarla

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 63 88

Esercizi - 6

11 Una compagnia di assicurazioni classifica i suoi clienti in tre fascebasso rischio medio rischio alto rischio Le sue statistiche indicanoche le probabilita che un cliente delle tre fasce abbia un incidenteentro un periodo di un anno sono rispettivamente 005 015 e 030Se il 20 dei clienti sono a basso rischio il 50 a medio rischio e il30 ad alto rischio che percentuale dei clienti avra mediamenteincidenti in un lasso di un anno Se un cliente non ha avuto incidentinel 1987 qual e la probabilita che appartenga a ciascuna delle trefasce

12 Se un votante scelto a caso e favorevole ad una certa riforma conprobabilita di 07 qual e la probabilita che su 10 votanti esattamente7 siano favorevoli

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 64 88

Variabili aleatorie

Una variabile aleatoria (o anche variabile aleatoria) e una variabile chepuo assumere valori diversi in dipendenza da qualche fenomeno aleatorio

fenomeno lancio di 2 dadivariabile aleatoria somma dei 2 dadi

fenomeno 3 lanci di una monetavariabile aleatoria numero di rdquotesterdquo complessivo

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 65 88

Funzione di Ripartizione

Sia X una variabile aleatoria Si chiama funzione di ripartizione di X lafunzione F che associa ad ogni numero reale a la probabilita che X siaminore o uguale ad a cioe P(X le a) = FX (a)

Nel caso della moneta (fair) lanciata 3 volte (X indica il numero di testecomplessivo)

FX (a) =

⎧⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎨⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎩

0 if a lt 0

18 per 0 le a lt 1

18 + 38 = 48 per 1 le a lt 2

48 + 38 = 78 per 2 le a lt 3

88 = 1 per a ge 3

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 66 88

Funzione di densita o di massa

Sia X una variabile aleatoria Si chiama funzione di densita di X lafunzione f che associa ad ogni numero reale a la probabilita che X siauguale ad a indicata con fX (a)

Nel caso della moneta (fair) lanciata 3 volte (X indica il numero di testecomplessivo)

fX (a) =

⎧⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎨⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎩

18 per a = 0

38 per a = 1

38 per a = 2

18 per a = 3

0 altrimenti

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 67 88

Valore Atteso

Chiamato anche media (expectation in inglese) e appunto una mediapesata dei possibili valori di una variabile aleatoria Il peso dato a ciascunvalore e la probabilita data a quello specifico valore

E[X ] =sumi

aiP(X = ai)

Esempio dado truccato

valore 6 con probabilita 712

valori da 1 a 5 con probabilita 112

La variabile aleatoria X indica la faccia risultante dal lancio di un dado

E[X ] = 1

12lowast 1 + 1

12lowast 2 + 1

12lowast 3 + 1

12lowast 4 + 1

12lowast 5 + 7

12lowast 6 = 475

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 68 88

Valore Atteso - Proprieta

Sia X una variabile aleatoria con valore atteso E[X ] Se c e una costanteallora anche cX e X + c sono variabili casuali In particolare valgono leseguenti proprieta

E[cX ] = cE[X ]E[X + c] = E[X ] + c

Sia Y una variabile aleatoria Allora

E[X +Y ] = E[X ] +E[Y ]se e solo se X e Y sono independenti

E[XY ] = E[X ]E[Y ]

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 69 88

Varianza

Ersquo il valore atteso del quadrato della differenza tra la variabile aleatoria e ilsuo valore atteso

Var(X ) = E[(X minusE[X ])2] = E[X 2] minus (E[X ])2

La radice quadrata viene detta deviazione standard di X

Esempio dado truccato

E[X 2] = 1

12lowast 12 + 1

12lowast 22 + 1

12lowast 32 + 1

12lowast 42 + 1

12lowast 52 + 7

12lowast 62 ≃ 255

Var(X ) = E[X 2] minus (E[X ])2 ≃ 255 minus 4752 ≃ 3

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 70 88

Varianza - proprieta

Sia X una variabile aleatoria e c una costante Allora valgono le seguentiproprieta

1 Var(cX ) = c2Var(X )

2 Var(X + c) = Var(X )

NOTA

Var(X +X ) ne Var(X ) +Var(X )

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 71 88

Covarianza

Siano X Y due variabili aleatorie con valore atteso rispettivamenteE[X ] = microX e E[Y ] = microY La covarianza e definita come segue

Cov(X Y ) = E[(X minus microX )(Y minus microY )] = = E[XY ] minus microXmicroY

Proprieta

1 Cov(X Y ) = Cov(Y X )2 Cov(X X ) = Var(X )3 Sia a una costante allora

Cov(aX Y ) = aCov(X Y )

4 Sia Z una variabile aleatoria allora

Cov(X + Z Y ) = Cov(X Y ) + Cov(Z Y )

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 72 88

Esercizi - 1

1 Consideriamo una variabile aleatoria X che puo assumere i valori 12o 3 Se sappiamo che

fX (1) = 1

3 fX (2) = 3

7

1 Quanto vale fX (3)2 Disegnare il grafico di questa funzione di massa3 Disegnare il grafico della relativa funzione di ripartizione

2 Dimostrare che se X1 e X2 hanno la stessa distribuzione allora

Cov(X1 +X2X1 minusX2) = 0

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 73 88

Esercizi - 2

3 La funzione di ripartizione di X e definita come segue

FX (x) =

⎧⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎨⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎩

0 per x le 0

x2 per 0 le x lt 1

23 per 1 le x lt 2

1112 per 2 le x lt 3

1 per x ge 3

Se ne tracci il graficoQuanto vale P(X gt 12)Quanto vale P(2 le X le 4)Quanto vale P(X le 3)Quanto vale P(X = 1)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 74 88

Esercizi - 3

4 Un tipo di prodotti vengono classificati a seconda dei loro difetti edella fabbrica che li ha prodotti Sia X1 il numero (1 o 2) dellafabbrica e sia X2 il numero di difetti per pezzo (che possono essere da0 a 3) di un prodotto scelto a caso tra la totalita di quelli esistentiLa tabella seguente riporta la funzione di massa di probabilitacongiunta per queste due variabili aleatorie discrete Le righe siriferiscono alla variabile X1 mentre le colonne alla variabile X2

Trova le distribuzioni marginali di X1 e X2Calcola media e varianza di X2

0 1 2 31 18 116 316 182 116 116 18 14

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 75 88

Scipy

Scipy e un modulo che permette di utilizzare varie distribuzioni diprobabilita sia di tipo discreto che continuo

La sintassi generale e la seguente Scipystatsltnome distribuzionegt

rvs(size=z) restituisce un vettore di numeri casuali estrattisecondo la distribuzione di lunghezza z

pdf(x) restituisce il vettore della densita della distribuzionevalutata nei valori del vettore di input x (pmf per le discrete)

cdf(x) restituisce il vettore della funzione di ripartizione (ocumulativa) della distribuzione valutata nei valori del vettore di inputx

ppf(q) restituisce il vettore dei quantili della distribuzione valutatanei valori del vettore di input q

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 76 88

Variabili aleatorie discrete Binomiale

gtgtgt from scipystats import binom

gtgtgt rv = binom(n p)

rvrvs(x) restituisce un vettore di x numeri estratti secondo unadistribuzione Binomiale di parametri n p

rvpmf(x) restituisce la probabilita di ottenere esattamente x

successi in un esperimento dicotomico (01) ripetuto n volte con unaprobabilita di successo p (x puo essere un vettore)

rvcdf(q) restituisce il valore della funzione di ripartizione in q (qpuo essere un vettore)

rvppf(p) restituisce il valore del quantile di ordine p

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 77 88

Variabili aleatorie discrete Ipergeometrica

Supponiamo di avere M = 20 animali di cui n = 7 cani Se vogliamosapere la probabilita di trovare un dato numero di cani se scegliamoN = 12 dei 20 animali in maniera casuale possiamo usare una distribuzioneipergeometrica in questo modo

gtgtgt from scipystats import hypergeom

gtgtgt [M n N] = [20 7 12]

gtgtgt rv = hypergeom(M n N)

rvpmf(x) restituisce la probabilita di estrarre esattamente x cani

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 78 88

Variabili aleatorie discrete Geometrica

gtgtgt from scipystats import geom

gtgtgt rv = geom(p)

rvpmf(x) restituisce la probabilita di avere un successo dopoesattamente x insuccessi in una successione di esperimenti dicotomici(esito 01) con una probabilita di successo p (x puo essere un vettore)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 79 88

Variabili aleatorie discrete Poisson

La distribuzione di Poisson viene usata spesso come modello per il numerodi volte per cui un evento avviene in un dato intervallo di tempo (ospazio) Ad esempio si puo utilizzare per misurare il numero di chiamatericevute da un call center in una mattinata

gtgtgt from scipystats import poisson

gtgtgt mu = 2

gtgtgt rv = poisson(mu)

rvpmf(x) restituisce il seguente valore

f (x) = exp(minusmicro)microx

x

In questo caso x rappresenta il numero di eventi per cui si vuole calcolarela probabilita sapendo che in media ne accadono micro

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 80 88

Variabili aleatorie continue Uniforme

In Scipy la funzione uniforme e soltanto continua Questo significa chenella generazione di numeri casuali otterro dati di tipo float Possiamotuttavia simulare una variabile discreta estraendo la parte intera delrisultato ottenuto

gtgtgt from scipystats import uniform

gtgtgt rv = uniform()

Il comando uniform() crea una distribuzione uniforme nellrsquointervallo[01] Possiamo creare una distribuzione uniforme qualsiasi usandouniform(x y - x) per lrsquointervallo [x y]

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 81 88

Variabili aleatorie continue

norm(mu sigma) variabile Gaussiana (o Normale) di media micro edeviazione standard σ

expon(scale = 1 lambda) variabile Esponenziale di parametroλ

Altre distribuzioni (con relativa documentazione) disponibili suhttpsdocsscipyorgdocscipyreferencestatshtml

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 82 88

Esercizi - 1

1 Unrsquourna contiene 10 palline di cui 4 bianche e 6 nere Si eseguono 5estrazioni con reimmissione

1 Tracciare grafico della funzione massa di probabilita della variabilecasuale X = rdquonumero di palline bianche estratterdquo

2 Calcolare la probabilita di estrarre 2 palline bianche3 Calcolare la probabilita di estrarre al piu 2 palline bianche4 Calcolare la probabilita di estrarre almeno 2 palline bianche5 Qual e il numero minimo x tale che la probabilita di estrarre al piu x

palline bianche sia almeno 08

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 83 88

Esercizi - 2

2 Si eseguono 10 estrazioni senza reimmissione da unrsquourna

1 Tracciare il grafico della funzione massa di probabilita della variabilecasuale X = rdquonumero di palline bianche estratterdquo nei seguenti casi

1 lrsquourna contiene 100 palline di cui 20 bianche e le restanti nere2 lrsquourna contiene 100 palline di cui 2 bianche e le restanti nere

2 Tracciare il grafico della funzione massa di probabilita della variabilecasuale X nel caso dellrsquourna 1 se si eseguono 25 estrazioni

3 Consideriamo lrsquourna 1 e N = 10 estrazioni Si aumenti il numero totaleM di palline nellrsquourna mantenendo uguale a 02 la frazione di pallinebianche Per ciascun valore di M confrontare graficamente ladistribuzione di probabilita del numero di palline bianche estratte nelcaso di estrazioni con e senza reimmissione Provare con 20 40 e 200palline bianche

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 84 88

Esercizi - 3

3 Calcolare la probabilita di ottenere piu teste che croci lanciando 7volte una moneta truccata con probabilita di avere croce pari a 045

4 Calcolare la probabilita di avere almeno 3 sei lanciando 5 dadi a 12facce

5 Calcolare la probabilita di estrarre 20 euro da un sacco contenente 47monete da 1 centesimo e 53 da 2 euro estraendo (uniformemente) acaso 10 monete senza reinserirle

6 Un grammo di uranio emette mediamente 2152 particelle α ognimillisecondo Qual e con buona approssimazione la probabilita che ungrammo di uranio emetta al piu 2000 particelle α in un millisecondo

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 85 88

Esercizi - 4

7 Un uomo si risveglia in mezzo al deserto senza acqua Dopo ogniminuto ha una probabilita del 3 di perdere conoscenza per via dellecondizioni estreme Calcolare la probabilita che lrsquouomo perdaconoscenza dopo almeno due ore e la probabilita che lrsquouomo perdaconoscenza dopo esattamente un quarto drsquoora

8 Sia X una variabile aleatoria normale di parametri micro = 10 e σ = 36Calcola

1 P(X gt 5)2 P(4 le X le 16)3 P(X le 8)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 86 88

Esercizi - 5

9 Il numero di errori tipografici per pagina di una certa rivista segue unadistribuzione di Poisson Sapendo che mediamente sono presenti 02errori per pagina determinare la probabilita che una pagina contenga

1 nessun refuso2 piu refusi

10 Arrivi alla fermata dellrsquoautobus alle 1000 e sei certo che ne passerauno in un momento distribuito uniformemente tra le 1000 e le 1030

1 Qual e la probabilita che tu debba aspettare piu di 10 minuti2 Se alle 1015 lrsquoautobus non e ancora arrivato qual e la probabilita che

tu debba aspettare almeno altri 10 minuti

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 87 88

Esercizi - 6

11 Il signor Jones e convinto che il tempo di vita di una automobile (inmigliaia di chilometri percorse) sia una variabile aleatoria esponenzialedi parametro 120 Il signor Smith ha una macchina usata da vendereche ha percorso circa 10 000 chilometri

1 Se il signor Jones decide di comprarla che probabilita ha di farle farealmeno altri 20 000 chilometri prima che sia da buttare

2 Il modello assunto dal signor Jones e ragionevole

12 Sia X una variabile casuale binomiale di parametri n = 100 e p = 07

1 Tracciate la funzione di ripartizione di X2 Calcolate il primo quartile il quantile di ordine 09 e la mediana di X3 Calcolare la probabilita P(X le 60)4 Calcolare la probabilita P(X le 88)5 Trovare il piu piccolo valore x tale che P(X le x) ge 09

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 88 88

  • Lezione 1
    • Script in Python
    • Numpy
    • Esercizi
    • Pandas
    • Esercizi
      • Lezione 2
        • File csv
        • DataFrame
        • Accesso ai DataFrame
        • Frequenze
        • Esercizi
          • Lezione 3
            • Matplotlib
            • Grafici a Barre
            • Istogrammi
            • Cumulativa empirica
            • Boxplot
            • QQplot
            • Diagramma di Pareto
            • Esercizi
              • Lezione 4
                • Definizioni
                • Probabilitagrave condizionata
                • Indipendenza
                • Esercizi
                  • Lezione 5
                    • Variabili Aleatorie
                    • Funzione di Ripartizione
                    • Funzione di Densitagrave
                    • Valore Atteso
                    • Varianza
                    • Covarianza
                    • Esercizi
                      • Lezione 6
                        • Scipy - Variabili Discrete
                        • Scipy - Variabili continue
                        • Esercizi

Esercizi - 4

7 In un comune vi sono 5 alberghi Se 3 persone devono scegliere unalbergo in cui pernottare qual e la probabilita che finiscano tutte inalberghi differenti Che cosa stiamo assumendo senza dirloesplicitamente

8 La media del salario annuale di un gruppo di 100 lavoratori impiegatinellrsquoamministrazione di una grande azienda e di 130000 dollari conuna deviazione standard di 20000 dollari Se si prende una persona acaso da questo gruppo cosa possiamo dire sulla probabilita che il suosalario sia

1 tra i 90000 e i 170000 dollari2 superiore a 150000 dollari

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 62 88

Esercizi - 5

9 In una certa regione vi sono due ditte che producono forni amicroonde Quelli della fabbrica A sono difettosi con probabilita 005mentre quelli della fabbrica B con probabilita 001 Supponi di averacquistato due apparecchi prodotti dalla stessa ditta che puo essere laA o la B con probabilita del 50 Se il primo microonde e difettosoqual e la probabilita condizionata che sia difettoso anche il secondo

10 Hai chiesto ad un vicino di innaffiare una piantina delicata mentre seiin vacanza Pensi che senza acqua la piantina muoia con probabilita08 mentre se innaffiata questa probabilita si ridurrebbe a 015 Latua fiducia che il vicino si ricordi di innaffiarla e del 90

1 Qual e la probabilita che la pianta sia ancora viva al tuo ritorno2 Se fosse morta quale sarebbe la probabilita che il vicino si sia

dimenticato di innaffiarla

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 63 88

Esercizi - 6

11 Una compagnia di assicurazioni classifica i suoi clienti in tre fascebasso rischio medio rischio alto rischio Le sue statistiche indicanoche le probabilita che un cliente delle tre fasce abbia un incidenteentro un periodo di un anno sono rispettivamente 005 015 e 030Se il 20 dei clienti sono a basso rischio il 50 a medio rischio e il30 ad alto rischio che percentuale dei clienti avra mediamenteincidenti in un lasso di un anno Se un cliente non ha avuto incidentinel 1987 qual e la probabilita che appartenga a ciascuna delle trefasce

12 Se un votante scelto a caso e favorevole ad una certa riforma conprobabilita di 07 qual e la probabilita che su 10 votanti esattamente7 siano favorevoli

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 64 88

Variabili aleatorie

Una variabile aleatoria (o anche variabile aleatoria) e una variabile chepuo assumere valori diversi in dipendenza da qualche fenomeno aleatorio

fenomeno lancio di 2 dadivariabile aleatoria somma dei 2 dadi

fenomeno 3 lanci di una monetavariabile aleatoria numero di rdquotesterdquo complessivo

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 65 88

Funzione di Ripartizione

Sia X una variabile aleatoria Si chiama funzione di ripartizione di X lafunzione F che associa ad ogni numero reale a la probabilita che X siaminore o uguale ad a cioe P(X le a) = FX (a)

Nel caso della moneta (fair) lanciata 3 volte (X indica il numero di testecomplessivo)

FX (a) =

⎧⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎨⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎩

0 if a lt 0

18 per 0 le a lt 1

18 + 38 = 48 per 1 le a lt 2

48 + 38 = 78 per 2 le a lt 3

88 = 1 per a ge 3

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 66 88

Funzione di densita o di massa

Sia X una variabile aleatoria Si chiama funzione di densita di X lafunzione f che associa ad ogni numero reale a la probabilita che X siauguale ad a indicata con fX (a)

Nel caso della moneta (fair) lanciata 3 volte (X indica il numero di testecomplessivo)

fX (a) =

⎧⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎨⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎩

18 per a = 0

38 per a = 1

38 per a = 2

18 per a = 3

0 altrimenti

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 67 88

Valore Atteso

Chiamato anche media (expectation in inglese) e appunto una mediapesata dei possibili valori di una variabile aleatoria Il peso dato a ciascunvalore e la probabilita data a quello specifico valore

E[X ] =sumi

aiP(X = ai)

Esempio dado truccato

valore 6 con probabilita 712

valori da 1 a 5 con probabilita 112

La variabile aleatoria X indica la faccia risultante dal lancio di un dado

E[X ] = 1

12lowast 1 + 1

12lowast 2 + 1

12lowast 3 + 1

12lowast 4 + 1

12lowast 5 + 7

12lowast 6 = 475

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 68 88

Valore Atteso - Proprieta

Sia X una variabile aleatoria con valore atteso E[X ] Se c e una costanteallora anche cX e X + c sono variabili casuali In particolare valgono leseguenti proprieta

E[cX ] = cE[X ]E[X + c] = E[X ] + c

Sia Y una variabile aleatoria Allora

E[X +Y ] = E[X ] +E[Y ]se e solo se X e Y sono independenti

E[XY ] = E[X ]E[Y ]

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 69 88

Varianza

Ersquo il valore atteso del quadrato della differenza tra la variabile aleatoria e ilsuo valore atteso

Var(X ) = E[(X minusE[X ])2] = E[X 2] minus (E[X ])2

La radice quadrata viene detta deviazione standard di X

Esempio dado truccato

E[X 2] = 1

12lowast 12 + 1

12lowast 22 + 1

12lowast 32 + 1

12lowast 42 + 1

12lowast 52 + 7

12lowast 62 ≃ 255

Var(X ) = E[X 2] minus (E[X ])2 ≃ 255 minus 4752 ≃ 3

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 70 88

Varianza - proprieta

Sia X una variabile aleatoria e c una costante Allora valgono le seguentiproprieta

1 Var(cX ) = c2Var(X )

2 Var(X + c) = Var(X )

NOTA

Var(X +X ) ne Var(X ) +Var(X )

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 71 88

Covarianza

Siano X Y due variabili aleatorie con valore atteso rispettivamenteE[X ] = microX e E[Y ] = microY La covarianza e definita come segue

Cov(X Y ) = E[(X minus microX )(Y minus microY )] = = E[XY ] minus microXmicroY

Proprieta

1 Cov(X Y ) = Cov(Y X )2 Cov(X X ) = Var(X )3 Sia a una costante allora

Cov(aX Y ) = aCov(X Y )

4 Sia Z una variabile aleatoria allora

Cov(X + Z Y ) = Cov(X Y ) + Cov(Z Y )

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 72 88

Esercizi - 1

1 Consideriamo una variabile aleatoria X che puo assumere i valori 12o 3 Se sappiamo che

fX (1) = 1

3 fX (2) = 3

7

1 Quanto vale fX (3)2 Disegnare il grafico di questa funzione di massa3 Disegnare il grafico della relativa funzione di ripartizione

2 Dimostrare che se X1 e X2 hanno la stessa distribuzione allora

Cov(X1 +X2X1 minusX2) = 0

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 73 88

Esercizi - 2

3 La funzione di ripartizione di X e definita come segue

FX (x) =

⎧⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎨⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎩

0 per x le 0

x2 per 0 le x lt 1

23 per 1 le x lt 2

1112 per 2 le x lt 3

1 per x ge 3

Se ne tracci il graficoQuanto vale P(X gt 12)Quanto vale P(2 le X le 4)Quanto vale P(X le 3)Quanto vale P(X = 1)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 74 88

Esercizi - 3

4 Un tipo di prodotti vengono classificati a seconda dei loro difetti edella fabbrica che li ha prodotti Sia X1 il numero (1 o 2) dellafabbrica e sia X2 il numero di difetti per pezzo (che possono essere da0 a 3) di un prodotto scelto a caso tra la totalita di quelli esistentiLa tabella seguente riporta la funzione di massa di probabilitacongiunta per queste due variabili aleatorie discrete Le righe siriferiscono alla variabile X1 mentre le colonne alla variabile X2

Trova le distribuzioni marginali di X1 e X2Calcola media e varianza di X2

0 1 2 31 18 116 316 182 116 116 18 14

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 75 88

Scipy

Scipy e un modulo che permette di utilizzare varie distribuzioni diprobabilita sia di tipo discreto che continuo

La sintassi generale e la seguente Scipystatsltnome distribuzionegt

rvs(size=z) restituisce un vettore di numeri casuali estrattisecondo la distribuzione di lunghezza z

pdf(x) restituisce il vettore della densita della distribuzionevalutata nei valori del vettore di input x (pmf per le discrete)

cdf(x) restituisce il vettore della funzione di ripartizione (ocumulativa) della distribuzione valutata nei valori del vettore di inputx

ppf(q) restituisce il vettore dei quantili della distribuzione valutatanei valori del vettore di input q

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 76 88

Variabili aleatorie discrete Binomiale

gtgtgt from scipystats import binom

gtgtgt rv = binom(n p)

rvrvs(x) restituisce un vettore di x numeri estratti secondo unadistribuzione Binomiale di parametri n p

rvpmf(x) restituisce la probabilita di ottenere esattamente x

successi in un esperimento dicotomico (01) ripetuto n volte con unaprobabilita di successo p (x puo essere un vettore)

rvcdf(q) restituisce il valore della funzione di ripartizione in q (qpuo essere un vettore)

rvppf(p) restituisce il valore del quantile di ordine p

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 77 88

Variabili aleatorie discrete Ipergeometrica

Supponiamo di avere M = 20 animali di cui n = 7 cani Se vogliamosapere la probabilita di trovare un dato numero di cani se scegliamoN = 12 dei 20 animali in maniera casuale possiamo usare una distribuzioneipergeometrica in questo modo

gtgtgt from scipystats import hypergeom

gtgtgt [M n N] = [20 7 12]

gtgtgt rv = hypergeom(M n N)

rvpmf(x) restituisce la probabilita di estrarre esattamente x cani

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 78 88

Variabili aleatorie discrete Geometrica

gtgtgt from scipystats import geom

gtgtgt rv = geom(p)

rvpmf(x) restituisce la probabilita di avere un successo dopoesattamente x insuccessi in una successione di esperimenti dicotomici(esito 01) con una probabilita di successo p (x puo essere un vettore)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 79 88

Variabili aleatorie discrete Poisson

La distribuzione di Poisson viene usata spesso come modello per il numerodi volte per cui un evento avviene in un dato intervallo di tempo (ospazio) Ad esempio si puo utilizzare per misurare il numero di chiamatericevute da un call center in una mattinata

gtgtgt from scipystats import poisson

gtgtgt mu = 2

gtgtgt rv = poisson(mu)

rvpmf(x) restituisce il seguente valore

f (x) = exp(minusmicro)microx

x

In questo caso x rappresenta il numero di eventi per cui si vuole calcolarela probabilita sapendo che in media ne accadono micro

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 80 88

Variabili aleatorie continue Uniforme

In Scipy la funzione uniforme e soltanto continua Questo significa chenella generazione di numeri casuali otterro dati di tipo float Possiamotuttavia simulare una variabile discreta estraendo la parte intera delrisultato ottenuto

gtgtgt from scipystats import uniform

gtgtgt rv = uniform()

Il comando uniform() crea una distribuzione uniforme nellrsquointervallo[01] Possiamo creare una distribuzione uniforme qualsiasi usandouniform(x y - x) per lrsquointervallo [x y]

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 81 88

Variabili aleatorie continue

norm(mu sigma) variabile Gaussiana (o Normale) di media micro edeviazione standard σ

expon(scale = 1 lambda) variabile Esponenziale di parametroλ

Altre distribuzioni (con relativa documentazione) disponibili suhttpsdocsscipyorgdocscipyreferencestatshtml

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 82 88

Esercizi - 1

1 Unrsquourna contiene 10 palline di cui 4 bianche e 6 nere Si eseguono 5estrazioni con reimmissione

1 Tracciare grafico della funzione massa di probabilita della variabilecasuale X = rdquonumero di palline bianche estratterdquo

2 Calcolare la probabilita di estrarre 2 palline bianche3 Calcolare la probabilita di estrarre al piu 2 palline bianche4 Calcolare la probabilita di estrarre almeno 2 palline bianche5 Qual e il numero minimo x tale che la probabilita di estrarre al piu x

palline bianche sia almeno 08

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 83 88

Esercizi - 2

2 Si eseguono 10 estrazioni senza reimmissione da unrsquourna

1 Tracciare il grafico della funzione massa di probabilita della variabilecasuale X = rdquonumero di palline bianche estratterdquo nei seguenti casi

1 lrsquourna contiene 100 palline di cui 20 bianche e le restanti nere2 lrsquourna contiene 100 palline di cui 2 bianche e le restanti nere

2 Tracciare il grafico della funzione massa di probabilita della variabilecasuale X nel caso dellrsquourna 1 se si eseguono 25 estrazioni

3 Consideriamo lrsquourna 1 e N = 10 estrazioni Si aumenti il numero totaleM di palline nellrsquourna mantenendo uguale a 02 la frazione di pallinebianche Per ciascun valore di M confrontare graficamente ladistribuzione di probabilita del numero di palline bianche estratte nelcaso di estrazioni con e senza reimmissione Provare con 20 40 e 200palline bianche

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 84 88

Esercizi - 3

3 Calcolare la probabilita di ottenere piu teste che croci lanciando 7volte una moneta truccata con probabilita di avere croce pari a 045

4 Calcolare la probabilita di avere almeno 3 sei lanciando 5 dadi a 12facce

5 Calcolare la probabilita di estrarre 20 euro da un sacco contenente 47monete da 1 centesimo e 53 da 2 euro estraendo (uniformemente) acaso 10 monete senza reinserirle

6 Un grammo di uranio emette mediamente 2152 particelle α ognimillisecondo Qual e con buona approssimazione la probabilita che ungrammo di uranio emetta al piu 2000 particelle α in un millisecondo

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 85 88

Esercizi - 4

7 Un uomo si risveglia in mezzo al deserto senza acqua Dopo ogniminuto ha una probabilita del 3 di perdere conoscenza per via dellecondizioni estreme Calcolare la probabilita che lrsquouomo perdaconoscenza dopo almeno due ore e la probabilita che lrsquouomo perdaconoscenza dopo esattamente un quarto drsquoora

8 Sia X una variabile aleatoria normale di parametri micro = 10 e σ = 36Calcola

1 P(X gt 5)2 P(4 le X le 16)3 P(X le 8)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 86 88

Esercizi - 5

9 Il numero di errori tipografici per pagina di una certa rivista segue unadistribuzione di Poisson Sapendo che mediamente sono presenti 02errori per pagina determinare la probabilita che una pagina contenga

1 nessun refuso2 piu refusi

10 Arrivi alla fermata dellrsquoautobus alle 1000 e sei certo che ne passerauno in un momento distribuito uniformemente tra le 1000 e le 1030

1 Qual e la probabilita che tu debba aspettare piu di 10 minuti2 Se alle 1015 lrsquoautobus non e ancora arrivato qual e la probabilita che

tu debba aspettare almeno altri 10 minuti

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 87 88

Esercizi - 6

11 Il signor Jones e convinto che il tempo di vita di una automobile (inmigliaia di chilometri percorse) sia una variabile aleatoria esponenzialedi parametro 120 Il signor Smith ha una macchina usata da vendereche ha percorso circa 10 000 chilometri

1 Se il signor Jones decide di comprarla che probabilita ha di farle farealmeno altri 20 000 chilometri prima che sia da buttare

2 Il modello assunto dal signor Jones e ragionevole

12 Sia X una variabile casuale binomiale di parametri n = 100 e p = 07

1 Tracciate la funzione di ripartizione di X2 Calcolate il primo quartile il quantile di ordine 09 e la mediana di X3 Calcolare la probabilita P(X le 60)4 Calcolare la probabilita P(X le 88)5 Trovare il piu piccolo valore x tale che P(X le x) ge 09

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 88 88

  • Lezione 1
    • Script in Python
    • Numpy
    • Esercizi
    • Pandas
    • Esercizi
      • Lezione 2
        • File csv
        • DataFrame
        • Accesso ai DataFrame
        • Frequenze
        • Esercizi
          • Lezione 3
            • Matplotlib
            • Grafici a Barre
            • Istogrammi
            • Cumulativa empirica
            • Boxplot
            • QQplot
            • Diagramma di Pareto
            • Esercizi
              • Lezione 4
                • Definizioni
                • Probabilitagrave condizionata
                • Indipendenza
                • Esercizi
                  • Lezione 5
                    • Variabili Aleatorie
                    • Funzione di Ripartizione
                    • Funzione di Densitagrave
                    • Valore Atteso
                    • Varianza
                    • Covarianza
                    • Esercizi
                      • Lezione 6
                        • Scipy - Variabili Discrete
                        • Scipy - Variabili continue
                        • Esercizi

Esercizi - 5

9 In una certa regione vi sono due ditte che producono forni amicroonde Quelli della fabbrica A sono difettosi con probabilita 005mentre quelli della fabbrica B con probabilita 001 Supponi di averacquistato due apparecchi prodotti dalla stessa ditta che puo essere laA o la B con probabilita del 50 Se il primo microonde e difettosoqual e la probabilita condizionata che sia difettoso anche il secondo

10 Hai chiesto ad un vicino di innaffiare una piantina delicata mentre seiin vacanza Pensi che senza acqua la piantina muoia con probabilita08 mentre se innaffiata questa probabilita si ridurrebbe a 015 Latua fiducia che il vicino si ricordi di innaffiarla e del 90

1 Qual e la probabilita che la pianta sia ancora viva al tuo ritorno2 Se fosse morta quale sarebbe la probabilita che il vicino si sia

dimenticato di innaffiarla

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 63 88

Esercizi - 6

11 Una compagnia di assicurazioni classifica i suoi clienti in tre fascebasso rischio medio rischio alto rischio Le sue statistiche indicanoche le probabilita che un cliente delle tre fasce abbia un incidenteentro un periodo di un anno sono rispettivamente 005 015 e 030Se il 20 dei clienti sono a basso rischio il 50 a medio rischio e il30 ad alto rischio che percentuale dei clienti avra mediamenteincidenti in un lasso di un anno Se un cliente non ha avuto incidentinel 1987 qual e la probabilita che appartenga a ciascuna delle trefasce

12 Se un votante scelto a caso e favorevole ad una certa riforma conprobabilita di 07 qual e la probabilita che su 10 votanti esattamente7 siano favorevoli

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 64 88

Variabili aleatorie

Una variabile aleatoria (o anche variabile aleatoria) e una variabile chepuo assumere valori diversi in dipendenza da qualche fenomeno aleatorio

fenomeno lancio di 2 dadivariabile aleatoria somma dei 2 dadi

fenomeno 3 lanci di una monetavariabile aleatoria numero di rdquotesterdquo complessivo

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 65 88

Funzione di Ripartizione

Sia X una variabile aleatoria Si chiama funzione di ripartizione di X lafunzione F che associa ad ogni numero reale a la probabilita che X siaminore o uguale ad a cioe P(X le a) = FX (a)

Nel caso della moneta (fair) lanciata 3 volte (X indica il numero di testecomplessivo)

FX (a) =

⎧⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎨⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎩

0 if a lt 0

18 per 0 le a lt 1

18 + 38 = 48 per 1 le a lt 2

48 + 38 = 78 per 2 le a lt 3

88 = 1 per a ge 3

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 66 88

Funzione di densita o di massa

Sia X una variabile aleatoria Si chiama funzione di densita di X lafunzione f che associa ad ogni numero reale a la probabilita che X siauguale ad a indicata con fX (a)

Nel caso della moneta (fair) lanciata 3 volte (X indica il numero di testecomplessivo)

fX (a) =

⎧⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎨⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎩

18 per a = 0

38 per a = 1

38 per a = 2

18 per a = 3

0 altrimenti

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 67 88

Valore Atteso

Chiamato anche media (expectation in inglese) e appunto una mediapesata dei possibili valori di una variabile aleatoria Il peso dato a ciascunvalore e la probabilita data a quello specifico valore

E[X ] =sumi

aiP(X = ai)

Esempio dado truccato

valore 6 con probabilita 712

valori da 1 a 5 con probabilita 112

La variabile aleatoria X indica la faccia risultante dal lancio di un dado

E[X ] = 1

12lowast 1 + 1

12lowast 2 + 1

12lowast 3 + 1

12lowast 4 + 1

12lowast 5 + 7

12lowast 6 = 475

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 68 88

Valore Atteso - Proprieta

Sia X una variabile aleatoria con valore atteso E[X ] Se c e una costanteallora anche cX e X + c sono variabili casuali In particolare valgono leseguenti proprieta

E[cX ] = cE[X ]E[X + c] = E[X ] + c

Sia Y una variabile aleatoria Allora

E[X +Y ] = E[X ] +E[Y ]se e solo se X e Y sono independenti

E[XY ] = E[X ]E[Y ]

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 69 88

Varianza

Ersquo il valore atteso del quadrato della differenza tra la variabile aleatoria e ilsuo valore atteso

Var(X ) = E[(X minusE[X ])2] = E[X 2] minus (E[X ])2

La radice quadrata viene detta deviazione standard di X

Esempio dado truccato

E[X 2] = 1

12lowast 12 + 1

12lowast 22 + 1

12lowast 32 + 1

12lowast 42 + 1

12lowast 52 + 7

12lowast 62 ≃ 255

Var(X ) = E[X 2] minus (E[X ])2 ≃ 255 minus 4752 ≃ 3

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 70 88

Varianza - proprieta

Sia X una variabile aleatoria e c una costante Allora valgono le seguentiproprieta

1 Var(cX ) = c2Var(X )

2 Var(X + c) = Var(X )

NOTA

Var(X +X ) ne Var(X ) +Var(X )

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 71 88

Covarianza

Siano X Y due variabili aleatorie con valore atteso rispettivamenteE[X ] = microX e E[Y ] = microY La covarianza e definita come segue

Cov(X Y ) = E[(X minus microX )(Y minus microY )] = = E[XY ] minus microXmicroY

Proprieta

1 Cov(X Y ) = Cov(Y X )2 Cov(X X ) = Var(X )3 Sia a una costante allora

Cov(aX Y ) = aCov(X Y )

4 Sia Z una variabile aleatoria allora

Cov(X + Z Y ) = Cov(X Y ) + Cov(Z Y )

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 72 88

Esercizi - 1

1 Consideriamo una variabile aleatoria X che puo assumere i valori 12o 3 Se sappiamo che

fX (1) = 1

3 fX (2) = 3

7

1 Quanto vale fX (3)2 Disegnare il grafico di questa funzione di massa3 Disegnare il grafico della relativa funzione di ripartizione

2 Dimostrare che se X1 e X2 hanno la stessa distribuzione allora

Cov(X1 +X2X1 minusX2) = 0

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 73 88

Esercizi - 2

3 La funzione di ripartizione di X e definita come segue

FX (x) =

⎧⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎨⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎩

0 per x le 0

x2 per 0 le x lt 1

23 per 1 le x lt 2

1112 per 2 le x lt 3

1 per x ge 3

Se ne tracci il graficoQuanto vale P(X gt 12)Quanto vale P(2 le X le 4)Quanto vale P(X le 3)Quanto vale P(X = 1)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 74 88

Esercizi - 3

4 Un tipo di prodotti vengono classificati a seconda dei loro difetti edella fabbrica che li ha prodotti Sia X1 il numero (1 o 2) dellafabbrica e sia X2 il numero di difetti per pezzo (che possono essere da0 a 3) di un prodotto scelto a caso tra la totalita di quelli esistentiLa tabella seguente riporta la funzione di massa di probabilitacongiunta per queste due variabili aleatorie discrete Le righe siriferiscono alla variabile X1 mentre le colonne alla variabile X2

Trova le distribuzioni marginali di X1 e X2Calcola media e varianza di X2

0 1 2 31 18 116 316 182 116 116 18 14

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 75 88

Scipy

Scipy e un modulo che permette di utilizzare varie distribuzioni diprobabilita sia di tipo discreto che continuo

La sintassi generale e la seguente Scipystatsltnome distribuzionegt

rvs(size=z) restituisce un vettore di numeri casuali estrattisecondo la distribuzione di lunghezza z

pdf(x) restituisce il vettore della densita della distribuzionevalutata nei valori del vettore di input x (pmf per le discrete)

cdf(x) restituisce il vettore della funzione di ripartizione (ocumulativa) della distribuzione valutata nei valori del vettore di inputx

ppf(q) restituisce il vettore dei quantili della distribuzione valutatanei valori del vettore di input q

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 76 88

Variabili aleatorie discrete Binomiale

gtgtgt from scipystats import binom

gtgtgt rv = binom(n p)

rvrvs(x) restituisce un vettore di x numeri estratti secondo unadistribuzione Binomiale di parametri n p

rvpmf(x) restituisce la probabilita di ottenere esattamente x

successi in un esperimento dicotomico (01) ripetuto n volte con unaprobabilita di successo p (x puo essere un vettore)

rvcdf(q) restituisce il valore della funzione di ripartizione in q (qpuo essere un vettore)

rvppf(p) restituisce il valore del quantile di ordine p

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 77 88

Variabili aleatorie discrete Ipergeometrica

Supponiamo di avere M = 20 animali di cui n = 7 cani Se vogliamosapere la probabilita di trovare un dato numero di cani se scegliamoN = 12 dei 20 animali in maniera casuale possiamo usare una distribuzioneipergeometrica in questo modo

gtgtgt from scipystats import hypergeom

gtgtgt [M n N] = [20 7 12]

gtgtgt rv = hypergeom(M n N)

rvpmf(x) restituisce la probabilita di estrarre esattamente x cani

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 78 88

Variabili aleatorie discrete Geometrica

gtgtgt from scipystats import geom

gtgtgt rv = geom(p)

rvpmf(x) restituisce la probabilita di avere un successo dopoesattamente x insuccessi in una successione di esperimenti dicotomici(esito 01) con una probabilita di successo p (x puo essere un vettore)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 79 88

Variabili aleatorie discrete Poisson

La distribuzione di Poisson viene usata spesso come modello per il numerodi volte per cui un evento avviene in un dato intervallo di tempo (ospazio) Ad esempio si puo utilizzare per misurare il numero di chiamatericevute da un call center in una mattinata

gtgtgt from scipystats import poisson

gtgtgt mu = 2

gtgtgt rv = poisson(mu)

rvpmf(x) restituisce il seguente valore

f (x) = exp(minusmicro)microx

x

In questo caso x rappresenta il numero di eventi per cui si vuole calcolarela probabilita sapendo che in media ne accadono micro

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 80 88

Variabili aleatorie continue Uniforme

In Scipy la funzione uniforme e soltanto continua Questo significa chenella generazione di numeri casuali otterro dati di tipo float Possiamotuttavia simulare una variabile discreta estraendo la parte intera delrisultato ottenuto

gtgtgt from scipystats import uniform

gtgtgt rv = uniform()

Il comando uniform() crea una distribuzione uniforme nellrsquointervallo[01] Possiamo creare una distribuzione uniforme qualsiasi usandouniform(x y - x) per lrsquointervallo [x y]

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 81 88

Variabili aleatorie continue

norm(mu sigma) variabile Gaussiana (o Normale) di media micro edeviazione standard σ

expon(scale = 1 lambda) variabile Esponenziale di parametroλ

Altre distribuzioni (con relativa documentazione) disponibili suhttpsdocsscipyorgdocscipyreferencestatshtml

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 82 88

Esercizi - 1

1 Unrsquourna contiene 10 palline di cui 4 bianche e 6 nere Si eseguono 5estrazioni con reimmissione

1 Tracciare grafico della funzione massa di probabilita della variabilecasuale X = rdquonumero di palline bianche estratterdquo

2 Calcolare la probabilita di estrarre 2 palline bianche3 Calcolare la probabilita di estrarre al piu 2 palline bianche4 Calcolare la probabilita di estrarre almeno 2 palline bianche5 Qual e il numero minimo x tale che la probabilita di estrarre al piu x

palline bianche sia almeno 08

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 83 88

Esercizi - 2

2 Si eseguono 10 estrazioni senza reimmissione da unrsquourna

1 Tracciare il grafico della funzione massa di probabilita della variabilecasuale X = rdquonumero di palline bianche estratterdquo nei seguenti casi

1 lrsquourna contiene 100 palline di cui 20 bianche e le restanti nere2 lrsquourna contiene 100 palline di cui 2 bianche e le restanti nere

2 Tracciare il grafico della funzione massa di probabilita della variabilecasuale X nel caso dellrsquourna 1 se si eseguono 25 estrazioni

3 Consideriamo lrsquourna 1 e N = 10 estrazioni Si aumenti il numero totaleM di palline nellrsquourna mantenendo uguale a 02 la frazione di pallinebianche Per ciascun valore di M confrontare graficamente ladistribuzione di probabilita del numero di palline bianche estratte nelcaso di estrazioni con e senza reimmissione Provare con 20 40 e 200palline bianche

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 84 88

Esercizi - 3

3 Calcolare la probabilita di ottenere piu teste che croci lanciando 7volte una moneta truccata con probabilita di avere croce pari a 045

4 Calcolare la probabilita di avere almeno 3 sei lanciando 5 dadi a 12facce

5 Calcolare la probabilita di estrarre 20 euro da un sacco contenente 47monete da 1 centesimo e 53 da 2 euro estraendo (uniformemente) acaso 10 monete senza reinserirle

6 Un grammo di uranio emette mediamente 2152 particelle α ognimillisecondo Qual e con buona approssimazione la probabilita che ungrammo di uranio emetta al piu 2000 particelle α in un millisecondo

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 85 88

Esercizi - 4

7 Un uomo si risveglia in mezzo al deserto senza acqua Dopo ogniminuto ha una probabilita del 3 di perdere conoscenza per via dellecondizioni estreme Calcolare la probabilita che lrsquouomo perdaconoscenza dopo almeno due ore e la probabilita che lrsquouomo perdaconoscenza dopo esattamente un quarto drsquoora

8 Sia X una variabile aleatoria normale di parametri micro = 10 e σ = 36Calcola

1 P(X gt 5)2 P(4 le X le 16)3 P(X le 8)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 86 88

Esercizi - 5

9 Il numero di errori tipografici per pagina di una certa rivista segue unadistribuzione di Poisson Sapendo che mediamente sono presenti 02errori per pagina determinare la probabilita che una pagina contenga

1 nessun refuso2 piu refusi

10 Arrivi alla fermata dellrsquoautobus alle 1000 e sei certo che ne passerauno in un momento distribuito uniformemente tra le 1000 e le 1030

1 Qual e la probabilita che tu debba aspettare piu di 10 minuti2 Se alle 1015 lrsquoautobus non e ancora arrivato qual e la probabilita che

tu debba aspettare almeno altri 10 minuti

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 87 88

Esercizi - 6

11 Il signor Jones e convinto che il tempo di vita di una automobile (inmigliaia di chilometri percorse) sia una variabile aleatoria esponenzialedi parametro 120 Il signor Smith ha una macchina usata da vendereche ha percorso circa 10 000 chilometri

1 Se il signor Jones decide di comprarla che probabilita ha di farle farealmeno altri 20 000 chilometri prima che sia da buttare

2 Il modello assunto dal signor Jones e ragionevole

12 Sia X una variabile casuale binomiale di parametri n = 100 e p = 07

1 Tracciate la funzione di ripartizione di X2 Calcolate il primo quartile il quantile di ordine 09 e la mediana di X3 Calcolare la probabilita P(X le 60)4 Calcolare la probabilita P(X le 88)5 Trovare il piu piccolo valore x tale che P(X le x) ge 09

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 88 88

  • Lezione 1
    • Script in Python
    • Numpy
    • Esercizi
    • Pandas
    • Esercizi
      • Lezione 2
        • File csv
        • DataFrame
        • Accesso ai DataFrame
        • Frequenze
        • Esercizi
          • Lezione 3
            • Matplotlib
            • Grafici a Barre
            • Istogrammi
            • Cumulativa empirica
            • Boxplot
            • QQplot
            • Diagramma di Pareto
            • Esercizi
              • Lezione 4
                • Definizioni
                • Probabilitagrave condizionata
                • Indipendenza
                • Esercizi
                  • Lezione 5
                    • Variabili Aleatorie
                    • Funzione di Ripartizione
                    • Funzione di Densitagrave
                    • Valore Atteso
                    • Varianza
                    • Covarianza
                    • Esercizi
                      • Lezione 6
                        • Scipy - Variabili Discrete
                        • Scipy - Variabili continue
                        • Esercizi

Esercizi - 6

11 Una compagnia di assicurazioni classifica i suoi clienti in tre fascebasso rischio medio rischio alto rischio Le sue statistiche indicanoche le probabilita che un cliente delle tre fasce abbia un incidenteentro un periodo di un anno sono rispettivamente 005 015 e 030Se il 20 dei clienti sono a basso rischio il 50 a medio rischio e il30 ad alto rischio che percentuale dei clienti avra mediamenteincidenti in un lasso di un anno Se un cliente non ha avuto incidentinel 1987 qual e la probabilita che appartenga a ciascuna delle trefasce

12 Se un votante scelto a caso e favorevole ad una certa riforma conprobabilita di 07 qual e la probabilita che su 10 votanti esattamente7 siano favorevoli

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 64 88

Variabili aleatorie

Una variabile aleatoria (o anche variabile aleatoria) e una variabile chepuo assumere valori diversi in dipendenza da qualche fenomeno aleatorio

fenomeno lancio di 2 dadivariabile aleatoria somma dei 2 dadi

fenomeno 3 lanci di una monetavariabile aleatoria numero di rdquotesterdquo complessivo

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 65 88

Funzione di Ripartizione

Sia X una variabile aleatoria Si chiama funzione di ripartizione di X lafunzione F che associa ad ogni numero reale a la probabilita che X siaminore o uguale ad a cioe P(X le a) = FX (a)

Nel caso della moneta (fair) lanciata 3 volte (X indica il numero di testecomplessivo)

FX (a) =

⎧⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎨⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎩

0 if a lt 0

18 per 0 le a lt 1

18 + 38 = 48 per 1 le a lt 2

48 + 38 = 78 per 2 le a lt 3

88 = 1 per a ge 3

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 66 88

Funzione di densita o di massa

Sia X una variabile aleatoria Si chiama funzione di densita di X lafunzione f che associa ad ogni numero reale a la probabilita che X siauguale ad a indicata con fX (a)

Nel caso della moneta (fair) lanciata 3 volte (X indica il numero di testecomplessivo)

fX (a) =

⎧⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎨⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎩

18 per a = 0

38 per a = 1

38 per a = 2

18 per a = 3

0 altrimenti

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 67 88

Valore Atteso

Chiamato anche media (expectation in inglese) e appunto una mediapesata dei possibili valori di una variabile aleatoria Il peso dato a ciascunvalore e la probabilita data a quello specifico valore

E[X ] =sumi

aiP(X = ai)

Esempio dado truccato

valore 6 con probabilita 712

valori da 1 a 5 con probabilita 112

La variabile aleatoria X indica la faccia risultante dal lancio di un dado

E[X ] = 1

12lowast 1 + 1

12lowast 2 + 1

12lowast 3 + 1

12lowast 4 + 1

12lowast 5 + 7

12lowast 6 = 475

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 68 88

Valore Atteso - Proprieta

Sia X una variabile aleatoria con valore atteso E[X ] Se c e una costanteallora anche cX e X + c sono variabili casuali In particolare valgono leseguenti proprieta

E[cX ] = cE[X ]E[X + c] = E[X ] + c

Sia Y una variabile aleatoria Allora

E[X +Y ] = E[X ] +E[Y ]se e solo se X e Y sono independenti

E[XY ] = E[X ]E[Y ]

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 69 88

Varianza

Ersquo il valore atteso del quadrato della differenza tra la variabile aleatoria e ilsuo valore atteso

Var(X ) = E[(X minusE[X ])2] = E[X 2] minus (E[X ])2

La radice quadrata viene detta deviazione standard di X

Esempio dado truccato

E[X 2] = 1

12lowast 12 + 1

12lowast 22 + 1

12lowast 32 + 1

12lowast 42 + 1

12lowast 52 + 7

12lowast 62 ≃ 255

Var(X ) = E[X 2] minus (E[X ])2 ≃ 255 minus 4752 ≃ 3

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 70 88

Varianza - proprieta

Sia X una variabile aleatoria e c una costante Allora valgono le seguentiproprieta

1 Var(cX ) = c2Var(X )

2 Var(X + c) = Var(X )

NOTA

Var(X +X ) ne Var(X ) +Var(X )

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 71 88

Covarianza

Siano X Y due variabili aleatorie con valore atteso rispettivamenteE[X ] = microX e E[Y ] = microY La covarianza e definita come segue

Cov(X Y ) = E[(X minus microX )(Y minus microY )] = = E[XY ] minus microXmicroY

Proprieta

1 Cov(X Y ) = Cov(Y X )2 Cov(X X ) = Var(X )3 Sia a una costante allora

Cov(aX Y ) = aCov(X Y )

4 Sia Z una variabile aleatoria allora

Cov(X + Z Y ) = Cov(X Y ) + Cov(Z Y )

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 72 88

Esercizi - 1

1 Consideriamo una variabile aleatoria X che puo assumere i valori 12o 3 Se sappiamo che

fX (1) = 1

3 fX (2) = 3

7

1 Quanto vale fX (3)2 Disegnare il grafico di questa funzione di massa3 Disegnare il grafico della relativa funzione di ripartizione

2 Dimostrare che se X1 e X2 hanno la stessa distribuzione allora

Cov(X1 +X2X1 minusX2) = 0

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 73 88

Esercizi - 2

3 La funzione di ripartizione di X e definita come segue

FX (x) =

⎧⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎨⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎩

0 per x le 0

x2 per 0 le x lt 1

23 per 1 le x lt 2

1112 per 2 le x lt 3

1 per x ge 3

Se ne tracci il graficoQuanto vale P(X gt 12)Quanto vale P(2 le X le 4)Quanto vale P(X le 3)Quanto vale P(X = 1)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 74 88

Esercizi - 3

4 Un tipo di prodotti vengono classificati a seconda dei loro difetti edella fabbrica che li ha prodotti Sia X1 il numero (1 o 2) dellafabbrica e sia X2 il numero di difetti per pezzo (che possono essere da0 a 3) di un prodotto scelto a caso tra la totalita di quelli esistentiLa tabella seguente riporta la funzione di massa di probabilitacongiunta per queste due variabili aleatorie discrete Le righe siriferiscono alla variabile X1 mentre le colonne alla variabile X2

Trova le distribuzioni marginali di X1 e X2Calcola media e varianza di X2

0 1 2 31 18 116 316 182 116 116 18 14

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 75 88

Scipy

Scipy e un modulo che permette di utilizzare varie distribuzioni diprobabilita sia di tipo discreto che continuo

La sintassi generale e la seguente Scipystatsltnome distribuzionegt

rvs(size=z) restituisce un vettore di numeri casuali estrattisecondo la distribuzione di lunghezza z

pdf(x) restituisce il vettore della densita della distribuzionevalutata nei valori del vettore di input x (pmf per le discrete)

cdf(x) restituisce il vettore della funzione di ripartizione (ocumulativa) della distribuzione valutata nei valori del vettore di inputx

ppf(q) restituisce il vettore dei quantili della distribuzione valutatanei valori del vettore di input q

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 76 88

Variabili aleatorie discrete Binomiale

gtgtgt from scipystats import binom

gtgtgt rv = binom(n p)

rvrvs(x) restituisce un vettore di x numeri estratti secondo unadistribuzione Binomiale di parametri n p

rvpmf(x) restituisce la probabilita di ottenere esattamente x

successi in un esperimento dicotomico (01) ripetuto n volte con unaprobabilita di successo p (x puo essere un vettore)

rvcdf(q) restituisce il valore della funzione di ripartizione in q (qpuo essere un vettore)

rvppf(p) restituisce il valore del quantile di ordine p

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 77 88

Variabili aleatorie discrete Ipergeometrica

Supponiamo di avere M = 20 animali di cui n = 7 cani Se vogliamosapere la probabilita di trovare un dato numero di cani se scegliamoN = 12 dei 20 animali in maniera casuale possiamo usare una distribuzioneipergeometrica in questo modo

gtgtgt from scipystats import hypergeom

gtgtgt [M n N] = [20 7 12]

gtgtgt rv = hypergeom(M n N)

rvpmf(x) restituisce la probabilita di estrarre esattamente x cani

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 78 88

Variabili aleatorie discrete Geometrica

gtgtgt from scipystats import geom

gtgtgt rv = geom(p)

rvpmf(x) restituisce la probabilita di avere un successo dopoesattamente x insuccessi in una successione di esperimenti dicotomici(esito 01) con una probabilita di successo p (x puo essere un vettore)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 79 88

Variabili aleatorie discrete Poisson

La distribuzione di Poisson viene usata spesso come modello per il numerodi volte per cui un evento avviene in un dato intervallo di tempo (ospazio) Ad esempio si puo utilizzare per misurare il numero di chiamatericevute da un call center in una mattinata

gtgtgt from scipystats import poisson

gtgtgt mu = 2

gtgtgt rv = poisson(mu)

rvpmf(x) restituisce il seguente valore

f (x) = exp(minusmicro)microx

x

In questo caso x rappresenta il numero di eventi per cui si vuole calcolarela probabilita sapendo che in media ne accadono micro

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 80 88

Variabili aleatorie continue Uniforme

In Scipy la funzione uniforme e soltanto continua Questo significa chenella generazione di numeri casuali otterro dati di tipo float Possiamotuttavia simulare una variabile discreta estraendo la parte intera delrisultato ottenuto

gtgtgt from scipystats import uniform

gtgtgt rv = uniform()

Il comando uniform() crea una distribuzione uniforme nellrsquointervallo[01] Possiamo creare una distribuzione uniforme qualsiasi usandouniform(x y - x) per lrsquointervallo [x y]

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 81 88

Variabili aleatorie continue

norm(mu sigma) variabile Gaussiana (o Normale) di media micro edeviazione standard σ

expon(scale = 1 lambda) variabile Esponenziale di parametroλ

Altre distribuzioni (con relativa documentazione) disponibili suhttpsdocsscipyorgdocscipyreferencestatshtml

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 82 88

Esercizi - 1

1 Unrsquourna contiene 10 palline di cui 4 bianche e 6 nere Si eseguono 5estrazioni con reimmissione

1 Tracciare grafico della funzione massa di probabilita della variabilecasuale X = rdquonumero di palline bianche estratterdquo

2 Calcolare la probabilita di estrarre 2 palline bianche3 Calcolare la probabilita di estrarre al piu 2 palline bianche4 Calcolare la probabilita di estrarre almeno 2 palline bianche5 Qual e il numero minimo x tale che la probabilita di estrarre al piu x

palline bianche sia almeno 08

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 83 88

Esercizi - 2

2 Si eseguono 10 estrazioni senza reimmissione da unrsquourna

1 Tracciare il grafico della funzione massa di probabilita della variabilecasuale X = rdquonumero di palline bianche estratterdquo nei seguenti casi

1 lrsquourna contiene 100 palline di cui 20 bianche e le restanti nere2 lrsquourna contiene 100 palline di cui 2 bianche e le restanti nere

2 Tracciare il grafico della funzione massa di probabilita della variabilecasuale X nel caso dellrsquourna 1 se si eseguono 25 estrazioni

3 Consideriamo lrsquourna 1 e N = 10 estrazioni Si aumenti il numero totaleM di palline nellrsquourna mantenendo uguale a 02 la frazione di pallinebianche Per ciascun valore di M confrontare graficamente ladistribuzione di probabilita del numero di palline bianche estratte nelcaso di estrazioni con e senza reimmissione Provare con 20 40 e 200palline bianche

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 84 88

Esercizi - 3

3 Calcolare la probabilita di ottenere piu teste che croci lanciando 7volte una moneta truccata con probabilita di avere croce pari a 045

4 Calcolare la probabilita di avere almeno 3 sei lanciando 5 dadi a 12facce

5 Calcolare la probabilita di estrarre 20 euro da un sacco contenente 47monete da 1 centesimo e 53 da 2 euro estraendo (uniformemente) acaso 10 monete senza reinserirle

6 Un grammo di uranio emette mediamente 2152 particelle α ognimillisecondo Qual e con buona approssimazione la probabilita che ungrammo di uranio emetta al piu 2000 particelle α in un millisecondo

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 85 88

Esercizi - 4

7 Un uomo si risveglia in mezzo al deserto senza acqua Dopo ogniminuto ha una probabilita del 3 di perdere conoscenza per via dellecondizioni estreme Calcolare la probabilita che lrsquouomo perdaconoscenza dopo almeno due ore e la probabilita che lrsquouomo perdaconoscenza dopo esattamente un quarto drsquoora

8 Sia X una variabile aleatoria normale di parametri micro = 10 e σ = 36Calcola

1 P(X gt 5)2 P(4 le X le 16)3 P(X le 8)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 86 88

Esercizi - 5

9 Il numero di errori tipografici per pagina di una certa rivista segue unadistribuzione di Poisson Sapendo che mediamente sono presenti 02errori per pagina determinare la probabilita che una pagina contenga

1 nessun refuso2 piu refusi

10 Arrivi alla fermata dellrsquoautobus alle 1000 e sei certo che ne passerauno in un momento distribuito uniformemente tra le 1000 e le 1030

1 Qual e la probabilita che tu debba aspettare piu di 10 minuti2 Se alle 1015 lrsquoautobus non e ancora arrivato qual e la probabilita che

tu debba aspettare almeno altri 10 minuti

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 87 88

Esercizi - 6

11 Il signor Jones e convinto che il tempo di vita di una automobile (inmigliaia di chilometri percorse) sia una variabile aleatoria esponenzialedi parametro 120 Il signor Smith ha una macchina usata da vendereche ha percorso circa 10 000 chilometri

1 Se il signor Jones decide di comprarla che probabilita ha di farle farealmeno altri 20 000 chilometri prima che sia da buttare

2 Il modello assunto dal signor Jones e ragionevole

12 Sia X una variabile casuale binomiale di parametri n = 100 e p = 07

1 Tracciate la funzione di ripartizione di X2 Calcolate il primo quartile il quantile di ordine 09 e la mediana di X3 Calcolare la probabilita P(X le 60)4 Calcolare la probabilita P(X le 88)5 Trovare il piu piccolo valore x tale che P(X le x) ge 09

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 88 88

  • Lezione 1
    • Script in Python
    • Numpy
    • Esercizi
    • Pandas
    • Esercizi
      • Lezione 2
        • File csv
        • DataFrame
        • Accesso ai DataFrame
        • Frequenze
        • Esercizi
          • Lezione 3
            • Matplotlib
            • Grafici a Barre
            • Istogrammi
            • Cumulativa empirica
            • Boxplot
            • QQplot
            • Diagramma di Pareto
            • Esercizi
              • Lezione 4
                • Definizioni
                • Probabilitagrave condizionata
                • Indipendenza
                • Esercizi
                  • Lezione 5
                    • Variabili Aleatorie
                    • Funzione di Ripartizione
                    • Funzione di Densitagrave
                    • Valore Atteso
                    • Varianza
                    • Covarianza
                    • Esercizi
                      • Lezione 6
                        • Scipy - Variabili Discrete
                        • Scipy - Variabili continue
                        • Esercizi

Variabili aleatorie

Una variabile aleatoria (o anche variabile aleatoria) e una variabile chepuo assumere valori diversi in dipendenza da qualche fenomeno aleatorio

fenomeno lancio di 2 dadivariabile aleatoria somma dei 2 dadi

fenomeno 3 lanci di una monetavariabile aleatoria numero di rdquotesterdquo complessivo

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 65 88

Funzione di Ripartizione

Sia X una variabile aleatoria Si chiama funzione di ripartizione di X lafunzione F che associa ad ogni numero reale a la probabilita che X siaminore o uguale ad a cioe P(X le a) = FX (a)

Nel caso della moneta (fair) lanciata 3 volte (X indica il numero di testecomplessivo)

FX (a) =

⎧⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎨⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎩

0 if a lt 0

18 per 0 le a lt 1

18 + 38 = 48 per 1 le a lt 2

48 + 38 = 78 per 2 le a lt 3

88 = 1 per a ge 3

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 66 88

Funzione di densita o di massa

Sia X una variabile aleatoria Si chiama funzione di densita di X lafunzione f che associa ad ogni numero reale a la probabilita che X siauguale ad a indicata con fX (a)

Nel caso della moneta (fair) lanciata 3 volte (X indica il numero di testecomplessivo)

fX (a) =

⎧⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎨⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎩

18 per a = 0

38 per a = 1

38 per a = 2

18 per a = 3

0 altrimenti

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 67 88

Valore Atteso

Chiamato anche media (expectation in inglese) e appunto una mediapesata dei possibili valori di una variabile aleatoria Il peso dato a ciascunvalore e la probabilita data a quello specifico valore

E[X ] =sumi

aiP(X = ai)

Esempio dado truccato

valore 6 con probabilita 712

valori da 1 a 5 con probabilita 112

La variabile aleatoria X indica la faccia risultante dal lancio di un dado

E[X ] = 1

12lowast 1 + 1

12lowast 2 + 1

12lowast 3 + 1

12lowast 4 + 1

12lowast 5 + 7

12lowast 6 = 475

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 68 88

Valore Atteso - Proprieta

Sia X una variabile aleatoria con valore atteso E[X ] Se c e una costanteallora anche cX e X + c sono variabili casuali In particolare valgono leseguenti proprieta

E[cX ] = cE[X ]E[X + c] = E[X ] + c

Sia Y una variabile aleatoria Allora

E[X +Y ] = E[X ] +E[Y ]se e solo se X e Y sono independenti

E[XY ] = E[X ]E[Y ]

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 69 88

Varianza

Ersquo il valore atteso del quadrato della differenza tra la variabile aleatoria e ilsuo valore atteso

Var(X ) = E[(X minusE[X ])2] = E[X 2] minus (E[X ])2

La radice quadrata viene detta deviazione standard di X

Esempio dado truccato

E[X 2] = 1

12lowast 12 + 1

12lowast 22 + 1

12lowast 32 + 1

12lowast 42 + 1

12lowast 52 + 7

12lowast 62 ≃ 255

Var(X ) = E[X 2] minus (E[X ])2 ≃ 255 minus 4752 ≃ 3

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 70 88

Varianza - proprieta

Sia X una variabile aleatoria e c una costante Allora valgono le seguentiproprieta

1 Var(cX ) = c2Var(X )

2 Var(X + c) = Var(X )

NOTA

Var(X +X ) ne Var(X ) +Var(X )

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 71 88

Covarianza

Siano X Y due variabili aleatorie con valore atteso rispettivamenteE[X ] = microX e E[Y ] = microY La covarianza e definita come segue

Cov(X Y ) = E[(X minus microX )(Y minus microY )] = = E[XY ] minus microXmicroY

Proprieta

1 Cov(X Y ) = Cov(Y X )2 Cov(X X ) = Var(X )3 Sia a una costante allora

Cov(aX Y ) = aCov(X Y )

4 Sia Z una variabile aleatoria allora

Cov(X + Z Y ) = Cov(X Y ) + Cov(Z Y )

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 72 88

Esercizi - 1

1 Consideriamo una variabile aleatoria X che puo assumere i valori 12o 3 Se sappiamo che

fX (1) = 1

3 fX (2) = 3

7

1 Quanto vale fX (3)2 Disegnare il grafico di questa funzione di massa3 Disegnare il grafico della relativa funzione di ripartizione

2 Dimostrare che se X1 e X2 hanno la stessa distribuzione allora

Cov(X1 +X2X1 minusX2) = 0

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 73 88

Esercizi - 2

3 La funzione di ripartizione di X e definita come segue

FX (x) =

⎧⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎨⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎩

0 per x le 0

x2 per 0 le x lt 1

23 per 1 le x lt 2

1112 per 2 le x lt 3

1 per x ge 3

Se ne tracci il graficoQuanto vale P(X gt 12)Quanto vale P(2 le X le 4)Quanto vale P(X le 3)Quanto vale P(X = 1)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 74 88

Esercizi - 3

4 Un tipo di prodotti vengono classificati a seconda dei loro difetti edella fabbrica che li ha prodotti Sia X1 il numero (1 o 2) dellafabbrica e sia X2 il numero di difetti per pezzo (che possono essere da0 a 3) di un prodotto scelto a caso tra la totalita di quelli esistentiLa tabella seguente riporta la funzione di massa di probabilitacongiunta per queste due variabili aleatorie discrete Le righe siriferiscono alla variabile X1 mentre le colonne alla variabile X2

Trova le distribuzioni marginali di X1 e X2Calcola media e varianza di X2

0 1 2 31 18 116 316 182 116 116 18 14

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 75 88

Scipy

Scipy e un modulo che permette di utilizzare varie distribuzioni diprobabilita sia di tipo discreto che continuo

La sintassi generale e la seguente Scipystatsltnome distribuzionegt

rvs(size=z) restituisce un vettore di numeri casuali estrattisecondo la distribuzione di lunghezza z

pdf(x) restituisce il vettore della densita della distribuzionevalutata nei valori del vettore di input x (pmf per le discrete)

cdf(x) restituisce il vettore della funzione di ripartizione (ocumulativa) della distribuzione valutata nei valori del vettore di inputx

ppf(q) restituisce il vettore dei quantili della distribuzione valutatanei valori del vettore di input q

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 76 88

Variabili aleatorie discrete Binomiale

gtgtgt from scipystats import binom

gtgtgt rv = binom(n p)

rvrvs(x) restituisce un vettore di x numeri estratti secondo unadistribuzione Binomiale di parametri n p

rvpmf(x) restituisce la probabilita di ottenere esattamente x

successi in un esperimento dicotomico (01) ripetuto n volte con unaprobabilita di successo p (x puo essere un vettore)

rvcdf(q) restituisce il valore della funzione di ripartizione in q (qpuo essere un vettore)

rvppf(p) restituisce il valore del quantile di ordine p

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 77 88

Variabili aleatorie discrete Ipergeometrica

Supponiamo di avere M = 20 animali di cui n = 7 cani Se vogliamosapere la probabilita di trovare un dato numero di cani se scegliamoN = 12 dei 20 animali in maniera casuale possiamo usare una distribuzioneipergeometrica in questo modo

gtgtgt from scipystats import hypergeom

gtgtgt [M n N] = [20 7 12]

gtgtgt rv = hypergeom(M n N)

rvpmf(x) restituisce la probabilita di estrarre esattamente x cani

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 78 88

Variabili aleatorie discrete Geometrica

gtgtgt from scipystats import geom

gtgtgt rv = geom(p)

rvpmf(x) restituisce la probabilita di avere un successo dopoesattamente x insuccessi in una successione di esperimenti dicotomici(esito 01) con una probabilita di successo p (x puo essere un vettore)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 79 88

Variabili aleatorie discrete Poisson

La distribuzione di Poisson viene usata spesso come modello per il numerodi volte per cui un evento avviene in un dato intervallo di tempo (ospazio) Ad esempio si puo utilizzare per misurare il numero di chiamatericevute da un call center in una mattinata

gtgtgt from scipystats import poisson

gtgtgt mu = 2

gtgtgt rv = poisson(mu)

rvpmf(x) restituisce il seguente valore

f (x) = exp(minusmicro)microx

x

In questo caso x rappresenta il numero di eventi per cui si vuole calcolarela probabilita sapendo che in media ne accadono micro

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 80 88

Variabili aleatorie continue Uniforme

In Scipy la funzione uniforme e soltanto continua Questo significa chenella generazione di numeri casuali otterro dati di tipo float Possiamotuttavia simulare una variabile discreta estraendo la parte intera delrisultato ottenuto

gtgtgt from scipystats import uniform

gtgtgt rv = uniform()

Il comando uniform() crea una distribuzione uniforme nellrsquointervallo[01] Possiamo creare una distribuzione uniforme qualsiasi usandouniform(x y - x) per lrsquointervallo [x y]

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 81 88

Variabili aleatorie continue

norm(mu sigma) variabile Gaussiana (o Normale) di media micro edeviazione standard σ

expon(scale = 1 lambda) variabile Esponenziale di parametroλ

Altre distribuzioni (con relativa documentazione) disponibili suhttpsdocsscipyorgdocscipyreferencestatshtml

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 82 88

Esercizi - 1

1 Unrsquourna contiene 10 palline di cui 4 bianche e 6 nere Si eseguono 5estrazioni con reimmissione

1 Tracciare grafico della funzione massa di probabilita della variabilecasuale X = rdquonumero di palline bianche estratterdquo

2 Calcolare la probabilita di estrarre 2 palline bianche3 Calcolare la probabilita di estrarre al piu 2 palline bianche4 Calcolare la probabilita di estrarre almeno 2 palline bianche5 Qual e il numero minimo x tale che la probabilita di estrarre al piu x

palline bianche sia almeno 08

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 83 88

Esercizi - 2

2 Si eseguono 10 estrazioni senza reimmissione da unrsquourna

1 Tracciare il grafico della funzione massa di probabilita della variabilecasuale X = rdquonumero di palline bianche estratterdquo nei seguenti casi

1 lrsquourna contiene 100 palline di cui 20 bianche e le restanti nere2 lrsquourna contiene 100 palline di cui 2 bianche e le restanti nere

2 Tracciare il grafico della funzione massa di probabilita della variabilecasuale X nel caso dellrsquourna 1 se si eseguono 25 estrazioni

3 Consideriamo lrsquourna 1 e N = 10 estrazioni Si aumenti il numero totaleM di palline nellrsquourna mantenendo uguale a 02 la frazione di pallinebianche Per ciascun valore di M confrontare graficamente ladistribuzione di probabilita del numero di palline bianche estratte nelcaso di estrazioni con e senza reimmissione Provare con 20 40 e 200palline bianche

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 84 88

Esercizi - 3

3 Calcolare la probabilita di ottenere piu teste che croci lanciando 7volte una moneta truccata con probabilita di avere croce pari a 045

4 Calcolare la probabilita di avere almeno 3 sei lanciando 5 dadi a 12facce

5 Calcolare la probabilita di estrarre 20 euro da un sacco contenente 47monete da 1 centesimo e 53 da 2 euro estraendo (uniformemente) acaso 10 monete senza reinserirle

6 Un grammo di uranio emette mediamente 2152 particelle α ognimillisecondo Qual e con buona approssimazione la probabilita che ungrammo di uranio emetta al piu 2000 particelle α in un millisecondo

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 85 88

Esercizi - 4

7 Un uomo si risveglia in mezzo al deserto senza acqua Dopo ogniminuto ha una probabilita del 3 di perdere conoscenza per via dellecondizioni estreme Calcolare la probabilita che lrsquouomo perdaconoscenza dopo almeno due ore e la probabilita che lrsquouomo perdaconoscenza dopo esattamente un quarto drsquoora

8 Sia X una variabile aleatoria normale di parametri micro = 10 e σ = 36Calcola

1 P(X gt 5)2 P(4 le X le 16)3 P(X le 8)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 86 88

Esercizi - 5

9 Il numero di errori tipografici per pagina di una certa rivista segue unadistribuzione di Poisson Sapendo che mediamente sono presenti 02errori per pagina determinare la probabilita che una pagina contenga

1 nessun refuso2 piu refusi

10 Arrivi alla fermata dellrsquoautobus alle 1000 e sei certo che ne passerauno in un momento distribuito uniformemente tra le 1000 e le 1030

1 Qual e la probabilita che tu debba aspettare piu di 10 minuti2 Se alle 1015 lrsquoautobus non e ancora arrivato qual e la probabilita che

tu debba aspettare almeno altri 10 minuti

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 87 88

Esercizi - 6

11 Il signor Jones e convinto che il tempo di vita di una automobile (inmigliaia di chilometri percorse) sia una variabile aleatoria esponenzialedi parametro 120 Il signor Smith ha una macchina usata da vendereche ha percorso circa 10 000 chilometri

1 Se il signor Jones decide di comprarla che probabilita ha di farle farealmeno altri 20 000 chilometri prima che sia da buttare

2 Il modello assunto dal signor Jones e ragionevole

12 Sia X una variabile casuale binomiale di parametri n = 100 e p = 07

1 Tracciate la funzione di ripartizione di X2 Calcolate il primo quartile il quantile di ordine 09 e la mediana di X3 Calcolare la probabilita P(X le 60)4 Calcolare la probabilita P(X le 88)5 Trovare il piu piccolo valore x tale che P(X le x) ge 09

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 88 88

  • Lezione 1
    • Script in Python
    • Numpy
    • Esercizi
    • Pandas
    • Esercizi
      • Lezione 2
        • File csv
        • DataFrame
        • Accesso ai DataFrame
        • Frequenze
        • Esercizi
          • Lezione 3
            • Matplotlib
            • Grafici a Barre
            • Istogrammi
            • Cumulativa empirica
            • Boxplot
            • QQplot
            • Diagramma di Pareto
            • Esercizi
              • Lezione 4
                • Definizioni
                • Probabilitagrave condizionata
                • Indipendenza
                • Esercizi
                  • Lezione 5
                    • Variabili Aleatorie
                    • Funzione di Ripartizione
                    • Funzione di Densitagrave
                    • Valore Atteso
                    • Varianza
                    • Covarianza
                    • Esercizi
                      • Lezione 6
                        • Scipy - Variabili Discrete
                        • Scipy - Variabili continue
                        • Esercizi

Funzione di Ripartizione

Sia X una variabile aleatoria Si chiama funzione di ripartizione di X lafunzione F che associa ad ogni numero reale a la probabilita che X siaminore o uguale ad a cioe P(X le a) = FX (a)

Nel caso della moneta (fair) lanciata 3 volte (X indica il numero di testecomplessivo)

FX (a) =

⎧⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎨⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎩

0 if a lt 0

18 per 0 le a lt 1

18 + 38 = 48 per 1 le a lt 2

48 + 38 = 78 per 2 le a lt 3

88 = 1 per a ge 3

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 66 88

Funzione di densita o di massa

Sia X una variabile aleatoria Si chiama funzione di densita di X lafunzione f che associa ad ogni numero reale a la probabilita che X siauguale ad a indicata con fX (a)

Nel caso della moneta (fair) lanciata 3 volte (X indica il numero di testecomplessivo)

fX (a) =

⎧⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎨⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎩

18 per a = 0

38 per a = 1

38 per a = 2

18 per a = 3

0 altrimenti

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 67 88

Valore Atteso

Chiamato anche media (expectation in inglese) e appunto una mediapesata dei possibili valori di una variabile aleatoria Il peso dato a ciascunvalore e la probabilita data a quello specifico valore

E[X ] =sumi

aiP(X = ai)

Esempio dado truccato

valore 6 con probabilita 712

valori da 1 a 5 con probabilita 112

La variabile aleatoria X indica la faccia risultante dal lancio di un dado

E[X ] = 1

12lowast 1 + 1

12lowast 2 + 1

12lowast 3 + 1

12lowast 4 + 1

12lowast 5 + 7

12lowast 6 = 475

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 68 88

Valore Atteso - Proprieta

Sia X una variabile aleatoria con valore atteso E[X ] Se c e una costanteallora anche cX e X + c sono variabili casuali In particolare valgono leseguenti proprieta

E[cX ] = cE[X ]E[X + c] = E[X ] + c

Sia Y una variabile aleatoria Allora

E[X +Y ] = E[X ] +E[Y ]se e solo se X e Y sono independenti

E[XY ] = E[X ]E[Y ]

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 69 88

Varianza

Ersquo il valore atteso del quadrato della differenza tra la variabile aleatoria e ilsuo valore atteso

Var(X ) = E[(X minusE[X ])2] = E[X 2] minus (E[X ])2

La radice quadrata viene detta deviazione standard di X

Esempio dado truccato

E[X 2] = 1

12lowast 12 + 1

12lowast 22 + 1

12lowast 32 + 1

12lowast 42 + 1

12lowast 52 + 7

12lowast 62 ≃ 255

Var(X ) = E[X 2] minus (E[X ])2 ≃ 255 minus 4752 ≃ 3

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 70 88

Varianza - proprieta

Sia X una variabile aleatoria e c una costante Allora valgono le seguentiproprieta

1 Var(cX ) = c2Var(X )

2 Var(X + c) = Var(X )

NOTA

Var(X +X ) ne Var(X ) +Var(X )

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 71 88

Covarianza

Siano X Y due variabili aleatorie con valore atteso rispettivamenteE[X ] = microX e E[Y ] = microY La covarianza e definita come segue

Cov(X Y ) = E[(X minus microX )(Y minus microY )] = = E[XY ] minus microXmicroY

Proprieta

1 Cov(X Y ) = Cov(Y X )2 Cov(X X ) = Var(X )3 Sia a una costante allora

Cov(aX Y ) = aCov(X Y )

4 Sia Z una variabile aleatoria allora

Cov(X + Z Y ) = Cov(X Y ) + Cov(Z Y )

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 72 88

Esercizi - 1

1 Consideriamo una variabile aleatoria X che puo assumere i valori 12o 3 Se sappiamo che

fX (1) = 1

3 fX (2) = 3

7

1 Quanto vale fX (3)2 Disegnare il grafico di questa funzione di massa3 Disegnare il grafico della relativa funzione di ripartizione

2 Dimostrare che se X1 e X2 hanno la stessa distribuzione allora

Cov(X1 +X2X1 minusX2) = 0

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 73 88

Esercizi - 2

3 La funzione di ripartizione di X e definita come segue

FX (x) =

⎧⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎨⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎩

0 per x le 0

x2 per 0 le x lt 1

23 per 1 le x lt 2

1112 per 2 le x lt 3

1 per x ge 3

Se ne tracci il graficoQuanto vale P(X gt 12)Quanto vale P(2 le X le 4)Quanto vale P(X le 3)Quanto vale P(X = 1)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 74 88

Esercizi - 3

4 Un tipo di prodotti vengono classificati a seconda dei loro difetti edella fabbrica che li ha prodotti Sia X1 il numero (1 o 2) dellafabbrica e sia X2 il numero di difetti per pezzo (che possono essere da0 a 3) di un prodotto scelto a caso tra la totalita di quelli esistentiLa tabella seguente riporta la funzione di massa di probabilitacongiunta per queste due variabili aleatorie discrete Le righe siriferiscono alla variabile X1 mentre le colonne alla variabile X2

Trova le distribuzioni marginali di X1 e X2Calcola media e varianza di X2

0 1 2 31 18 116 316 182 116 116 18 14

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 75 88

Scipy

Scipy e un modulo che permette di utilizzare varie distribuzioni diprobabilita sia di tipo discreto che continuo

La sintassi generale e la seguente Scipystatsltnome distribuzionegt

rvs(size=z) restituisce un vettore di numeri casuali estrattisecondo la distribuzione di lunghezza z

pdf(x) restituisce il vettore della densita della distribuzionevalutata nei valori del vettore di input x (pmf per le discrete)

cdf(x) restituisce il vettore della funzione di ripartizione (ocumulativa) della distribuzione valutata nei valori del vettore di inputx

ppf(q) restituisce il vettore dei quantili della distribuzione valutatanei valori del vettore di input q

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 76 88

Variabili aleatorie discrete Binomiale

gtgtgt from scipystats import binom

gtgtgt rv = binom(n p)

rvrvs(x) restituisce un vettore di x numeri estratti secondo unadistribuzione Binomiale di parametri n p

rvpmf(x) restituisce la probabilita di ottenere esattamente x

successi in un esperimento dicotomico (01) ripetuto n volte con unaprobabilita di successo p (x puo essere un vettore)

rvcdf(q) restituisce il valore della funzione di ripartizione in q (qpuo essere un vettore)

rvppf(p) restituisce il valore del quantile di ordine p

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 77 88

Variabili aleatorie discrete Ipergeometrica

Supponiamo di avere M = 20 animali di cui n = 7 cani Se vogliamosapere la probabilita di trovare un dato numero di cani se scegliamoN = 12 dei 20 animali in maniera casuale possiamo usare una distribuzioneipergeometrica in questo modo

gtgtgt from scipystats import hypergeom

gtgtgt [M n N] = [20 7 12]

gtgtgt rv = hypergeom(M n N)

rvpmf(x) restituisce la probabilita di estrarre esattamente x cani

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 78 88

Variabili aleatorie discrete Geometrica

gtgtgt from scipystats import geom

gtgtgt rv = geom(p)

rvpmf(x) restituisce la probabilita di avere un successo dopoesattamente x insuccessi in una successione di esperimenti dicotomici(esito 01) con una probabilita di successo p (x puo essere un vettore)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 79 88

Variabili aleatorie discrete Poisson

La distribuzione di Poisson viene usata spesso come modello per il numerodi volte per cui un evento avviene in un dato intervallo di tempo (ospazio) Ad esempio si puo utilizzare per misurare il numero di chiamatericevute da un call center in una mattinata

gtgtgt from scipystats import poisson

gtgtgt mu = 2

gtgtgt rv = poisson(mu)

rvpmf(x) restituisce il seguente valore

f (x) = exp(minusmicro)microx

x

In questo caso x rappresenta il numero di eventi per cui si vuole calcolarela probabilita sapendo che in media ne accadono micro

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 80 88

Variabili aleatorie continue Uniforme

In Scipy la funzione uniforme e soltanto continua Questo significa chenella generazione di numeri casuali otterro dati di tipo float Possiamotuttavia simulare una variabile discreta estraendo la parte intera delrisultato ottenuto

gtgtgt from scipystats import uniform

gtgtgt rv = uniform()

Il comando uniform() crea una distribuzione uniforme nellrsquointervallo[01] Possiamo creare una distribuzione uniforme qualsiasi usandouniform(x y - x) per lrsquointervallo [x y]

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 81 88

Variabili aleatorie continue

norm(mu sigma) variabile Gaussiana (o Normale) di media micro edeviazione standard σ

expon(scale = 1 lambda) variabile Esponenziale di parametroλ

Altre distribuzioni (con relativa documentazione) disponibili suhttpsdocsscipyorgdocscipyreferencestatshtml

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 82 88

Esercizi - 1

1 Unrsquourna contiene 10 palline di cui 4 bianche e 6 nere Si eseguono 5estrazioni con reimmissione

1 Tracciare grafico della funzione massa di probabilita della variabilecasuale X = rdquonumero di palline bianche estratterdquo

2 Calcolare la probabilita di estrarre 2 palline bianche3 Calcolare la probabilita di estrarre al piu 2 palline bianche4 Calcolare la probabilita di estrarre almeno 2 palline bianche5 Qual e il numero minimo x tale che la probabilita di estrarre al piu x

palline bianche sia almeno 08

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 83 88

Esercizi - 2

2 Si eseguono 10 estrazioni senza reimmissione da unrsquourna

1 Tracciare il grafico della funzione massa di probabilita della variabilecasuale X = rdquonumero di palline bianche estratterdquo nei seguenti casi

1 lrsquourna contiene 100 palline di cui 20 bianche e le restanti nere2 lrsquourna contiene 100 palline di cui 2 bianche e le restanti nere

2 Tracciare il grafico della funzione massa di probabilita della variabilecasuale X nel caso dellrsquourna 1 se si eseguono 25 estrazioni

3 Consideriamo lrsquourna 1 e N = 10 estrazioni Si aumenti il numero totaleM di palline nellrsquourna mantenendo uguale a 02 la frazione di pallinebianche Per ciascun valore di M confrontare graficamente ladistribuzione di probabilita del numero di palline bianche estratte nelcaso di estrazioni con e senza reimmissione Provare con 20 40 e 200palline bianche

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 84 88

Esercizi - 3

3 Calcolare la probabilita di ottenere piu teste che croci lanciando 7volte una moneta truccata con probabilita di avere croce pari a 045

4 Calcolare la probabilita di avere almeno 3 sei lanciando 5 dadi a 12facce

5 Calcolare la probabilita di estrarre 20 euro da un sacco contenente 47monete da 1 centesimo e 53 da 2 euro estraendo (uniformemente) acaso 10 monete senza reinserirle

6 Un grammo di uranio emette mediamente 2152 particelle α ognimillisecondo Qual e con buona approssimazione la probabilita che ungrammo di uranio emetta al piu 2000 particelle α in un millisecondo

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 85 88

Esercizi - 4

7 Un uomo si risveglia in mezzo al deserto senza acqua Dopo ogniminuto ha una probabilita del 3 di perdere conoscenza per via dellecondizioni estreme Calcolare la probabilita che lrsquouomo perdaconoscenza dopo almeno due ore e la probabilita che lrsquouomo perdaconoscenza dopo esattamente un quarto drsquoora

8 Sia X una variabile aleatoria normale di parametri micro = 10 e σ = 36Calcola

1 P(X gt 5)2 P(4 le X le 16)3 P(X le 8)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 86 88

Esercizi - 5

9 Il numero di errori tipografici per pagina di una certa rivista segue unadistribuzione di Poisson Sapendo che mediamente sono presenti 02errori per pagina determinare la probabilita che una pagina contenga

1 nessun refuso2 piu refusi

10 Arrivi alla fermata dellrsquoautobus alle 1000 e sei certo che ne passerauno in un momento distribuito uniformemente tra le 1000 e le 1030

1 Qual e la probabilita che tu debba aspettare piu di 10 minuti2 Se alle 1015 lrsquoautobus non e ancora arrivato qual e la probabilita che

tu debba aspettare almeno altri 10 minuti

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 87 88

Esercizi - 6

11 Il signor Jones e convinto che il tempo di vita di una automobile (inmigliaia di chilometri percorse) sia una variabile aleatoria esponenzialedi parametro 120 Il signor Smith ha una macchina usata da vendereche ha percorso circa 10 000 chilometri

1 Se il signor Jones decide di comprarla che probabilita ha di farle farealmeno altri 20 000 chilometri prima che sia da buttare

2 Il modello assunto dal signor Jones e ragionevole

12 Sia X una variabile casuale binomiale di parametri n = 100 e p = 07

1 Tracciate la funzione di ripartizione di X2 Calcolate il primo quartile il quantile di ordine 09 e la mediana di X3 Calcolare la probabilita P(X le 60)4 Calcolare la probabilita P(X le 88)5 Trovare il piu piccolo valore x tale che P(X le x) ge 09

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 88 88

  • Lezione 1
    • Script in Python
    • Numpy
    • Esercizi
    • Pandas
    • Esercizi
      • Lezione 2
        • File csv
        • DataFrame
        • Accesso ai DataFrame
        • Frequenze
        • Esercizi
          • Lezione 3
            • Matplotlib
            • Grafici a Barre
            • Istogrammi
            • Cumulativa empirica
            • Boxplot
            • QQplot
            • Diagramma di Pareto
            • Esercizi
              • Lezione 4
                • Definizioni
                • Probabilitagrave condizionata
                • Indipendenza
                • Esercizi
                  • Lezione 5
                    • Variabili Aleatorie
                    • Funzione di Ripartizione
                    • Funzione di Densitagrave
                    • Valore Atteso
                    • Varianza
                    • Covarianza
                    • Esercizi
                      • Lezione 6
                        • Scipy - Variabili Discrete
                        • Scipy - Variabili continue
                        • Esercizi

Funzione di densita o di massa

Sia X una variabile aleatoria Si chiama funzione di densita di X lafunzione f che associa ad ogni numero reale a la probabilita che X siauguale ad a indicata con fX (a)

Nel caso della moneta (fair) lanciata 3 volte (X indica il numero di testecomplessivo)

fX (a) =

⎧⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎨⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎩

18 per a = 0

38 per a = 1

38 per a = 2

18 per a = 3

0 altrimenti

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 67 88

Valore Atteso

Chiamato anche media (expectation in inglese) e appunto una mediapesata dei possibili valori di una variabile aleatoria Il peso dato a ciascunvalore e la probabilita data a quello specifico valore

E[X ] =sumi

aiP(X = ai)

Esempio dado truccato

valore 6 con probabilita 712

valori da 1 a 5 con probabilita 112

La variabile aleatoria X indica la faccia risultante dal lancio di un dado

E[X ] = 1

12lowast 1 + 1

12lowast 2 + 1

12lowast 3 + 1

12lowast 4 + 1

12lowast 5 + 7

12lowast 6 = 475

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 68 88

Valore Atteso - Proprieta

Sia X una variabile aleatoria con valore atteso E[X ] Se c e una costanteallora anche cX e X + c sono variabili casuali In particolare valgono leseguenti proprieta

E[cX ] = cE[X ]E[X + c] = E[X ] + c

Sia Y una variabile aleatoria Allora

E[X +Y ] = E[X ] +E[Y ]se e solo se X e Y sono independenti

E[XY ] = E[X ]E[Y ]

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 69 88

Varianza

Ersquo il valore atteso del quadrato della differenza tra la variabile aleatoria e ilsuo valore atteso

Var(X ) = E[(X minusE[X ])2] = E[X 2] minus (E[X ])2

La radice quadrata viene detta deviazione standard di X

Esempio dado truccato

E[X 2] = 1

12lowast 12 + 1

12lowast 22 + 1

12lowast 32 + 1

12lowast 42 + 1

12lowast 52 + 7

12lowast 62 ≃ 255

Var(X ) = E[X 2] minus (E[X ])2 ≃ 255 minus 4752 ≃ 3

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 70 88

Varianza - proprieta

Sia X una variabile aleatoria e c una costante Allora valgono le seguentiproprieta

1 Var(cX ) = c2Var(X )

2 Var(X + c) = Var(X )

NOTA

Var(X +X ) ne Var(X ) +Var(X )

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 71 88

Covarianza

Siano X Y due variabili aleatorie con valore atteso rispettivamenteE[X ] = microX e E[Y ] = microY La covarianza e definita come segue

Cov(X Y ) = E[(X minus microX )(Y minus microY )] = = E[XY ] minus microXmicroY

Proprieta

1 Cov(X Y ) = Cov(Y X )2 Cov(X X ) = Var(X )3 Sia a una costante allora

Cov(aX Y ) = aCov(X Y )

4 Sia Z una variabile aleatoria allora

Cov(X + Z Y ) = Cov(X Y ) + Cov(Z Y )

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 72 88

Esercizi - 1

1 Consideriamo una variabile aleatoria X che puo assumere i valori 12o 3 Se sappiamo che

fX (1) = 1

3 fX (2) = 3

7

1 Quanto vale fX (3)2 Disegnare il grafico di questa funzione di massa3 Disegnare il grafico della relativa funzione di ripartizione

2 Dimostrare che se X1 e X2 hanno la stessa distribuzione allora

Cov(X1 +X2X1 minusX2) = 0

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 73 88

Esercizi - 2

3 La funzione di ripartizione di X e definita come segue

FX (x) =

⎧⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎨⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎩

0 per x le 0

x2 per 0 le x lt 1

23 per 1 le x lt 2

1112 per 2 le x lt 3

1 per x ge 3

Se ne tracci il graficoQuanto vale P(X gt 12)Quanto vale P(2 le X le 4)Quanto vale P(X le 3)Quanto vale P(X = 1)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 74 88

Esercizi - 3

4 Un tipo di prodotti vengono classificati a seconda dei loro difetti edella fabbrica che li ha prodotti Sia X1 il numero (1 o 2) dellafabbrica e sia X2 il numero di difetti per pezzo (che possono essere da0 a 3) di un prodotto scelto a caso tra la totalita di quelli esistentiLa tabella seguente riporta la funzione di massa di probabilitacongiunta per queste due variabili aleatorie discrete Le righe siriferiscono alla variabile X1 mentre le colonne alla variabile X2

Trova le distribuzioni marginali di X1 e X2Calcola media e varianza di X2

0 1 2 31 18 116 316 182 116 116 18 14

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 75 88

Scipy

Scipy e un modulo che permette di utilizzare varie distribuzioni diprobabilita sia di tipo discreto che continuo

La sintassi generale e la seguente Scipystatsltnome distribuzionegt

rvs(size=z) restituisce un vettore di numeri casuali estrattisecondo la distribuzione di lunghezza z

pdf(x) restituisce il vettore della densita della distribuzionevalutata nei valori del vettore di input x (pmf per le discrete)

cdf(x) restituisce il vettore della funzione di ripartizione (ocumulativa) della distribuzione valutata nei valori del vettore di inputx

ppf(q) restituisce il vettore dei quantili della distribuzione valutatanei valori del vettore di input q

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 76 88

Variabili aleatorie discrete Binomiale

gtgtgt from scipystats import binom

gtgtgt rv = binom(n p)

rvrvs(x) restituisce un vettore di x numeri estratti secondo unadistribuzione Binomiale di parametri n p

rvpmf(x) restituisce la probabilita di ottenere esattamente x

successi in un esperimento dicotomico (01) ripetuto n volte con unaprobabilita di successo p (x puo essere un vettore)

rvcdf(q) restituisce il valore della funzione di ripartizione in q (qpuo essere un vettore)

rvppf(p) restituisce il valore del quantile di ordine p

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 77 88

Variabili aleatorie discrete Ipergeometrica

Supponiamo di avere M = 20 animali di cui n = 7 cani Se vogliamosapere la probabilita di trovare un dato numero di cani se scegliamoN = 12 dei 20 animali in maniera casuale possiamo usare una distribuzioneipergeometrica in questo modo

gtgtgt from scipystats import hypergeom

gtgtgt [M n N] = [20 7 12]

gtgtgt rv = hypergeom(M n N)

rvpmf(x) restituisce la probabilita di estrarre esattamente x cani

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 78 88

Variabili aleatorie discrete Geometrica

gtgtgt from scipystats import geom

gtgtgt rv = geom(p)

rvpmf(x) restituisce la probabilita di avere un successo dopoesattamente x insuccessi in una successione di esperimenti dicotomici(esito 01) con una probabilita di successo p (x puo essere un vettore)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 79 88

Variabili aleatorie discrete Poisson

La distribuzione di Poisson viene usata spesso come modello per il numerodi volte per cui un evento avviene in un dato intervallo di tempo (ospazio) Ad esempio si puo utilizzare per misurare il numero di chiamatericevute da un call center in una mattinata

gtgtgt from scipystats import poisson

gtgtgt mu = 2

gtgtgt rv = poisson(mu)

rvpmf(x) restituisce il seguente valore

f (x) = exp(minusmicro)microx

x

In questo caso x rappresenta il numero di eventi per cui si vuole calcolarela probabilita sapendo che in media ne accadono micro

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 80 88

Variabili aleatorie continue Uniforme

In Scipy la funzione uniforme e soltanto continua Questo significa chenella generazione di numeri casuali otterro dati di tipo float Possiamotuttavia simulare una variabile discreta estraendo la parte intera delrisultato ottenuto

gtgtgt from scipystats import uniform

gtgtgt rv = uniform()

Il comando uniform() crea una distribuzione uniforme nellrsquointervallo[01] Possiamo creare una distribuzione uniforme qualsiasi usandouniform(x y - x) per lrsquointervallo [x y]

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 81 88

Variabili aleatorie continue

norm(mu sigma) variabile Gaussiana (o Normale) di media micro edeviazione standard σ

expon(scale = 1 lambda) variabile Esponenziale di parametroλ

Altre distribuzioni (con relativa documentazione) disponibili suhttpsdocsscipyorgdocscipyreferencestatshtml

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 82 88

Esercizi - 1

1 Unrsquourna contiene 10 palline di cui 4 bianche e 6 nere Si eseguono 5estrazioni con reimmissione

1 Tracciare grafico della funzione massa di probabilita della variabilecasuale X = rdquonumero di palline bianche estratterdquo

2 Calcolare la probabilita di estrarre 2 palline bianche3 Calcolare la probabilita di estrarre al piu 2 palline bianche4 Calcolare la probabilita di estrarre almeno 2 palline bianche5 Qual e il numero minimo x tale che la probabilita di estrarre al piu x

palline bianche sia almeno 08

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 83 88

Esercizi - 2

2 Si eseguono 10 estrazioni senza reimmissione da unrsquourna

1 Tracciare il grafico della funzione massa di probabilita della variabilecasuale X = rdquonumero di palline bianche estratterdquo nei seguenti casi

1 lrsquourna contiene 100 palline di cui 20 bianche e le restanti nere2 lrsquourna contiene 100 palline di cui 2 bianche e le restanti nere

2 Tracciare il grafico della funzione massa di probabilita della variabilecasuale X nel caso dellrsquourna 1 se si eseguono 25 estrazioni

3 Consideriamo lrsquourna 1 e N = 10 estrazioni Si aumenti il numero totaleM di palline nellrsquourna mantenendo uguale a 02 la frazione di pallinebianche Per ciascun valore di M confrontare graficamente ladistribuzione di probabilita del numero di palline bianche estratte nelcaso di estrazioni con e senza reimmissione Provare con 20 40 e 200palline bianche

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 84 88

Esercizi - 3

3 Calcolare la probabilita di ottenere piu teste che croci lanciando 7volte una moneta truccata con probabilita di avere croce pari a 045

4 Calcolare la probabilita di avere almeno 3 sei lanciando 5 dadi a 12facce

5 Calcolare la probabilita di estrarre 20 euro da un sacco contenente 47monete da 1 centesimo e 53 da 2 euro estraendo (uniformemente) acaso 10 monete senza reinserirle

6 Un grammo di uranio emette mediamente 2152 particelle α ognimillisecondo Qual e con buona approssimazione la probabilita che ungrammo di uranio emetta al piu 2000 particelle α in un millisecondo

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 85 88

Esercizi - 4

7 Un uomo si risveglia in mezzo al deserto senza acqua Dopo ogniminuto ha una probabilita del 3 di perdere conoscenza per via dellecondizioni estreme Calcolare la probabilita che lrsquouomo perdaconoscenza dopo almeno due ore e la probabilita che lrsquouomo perdaconoscenza dopo esattamente un quarto drsquoora

8 Sia X una variabile aleatoria normale di parametri micro = 10 e σ = 36Calcola

1 P(X gt 5)2 P(4 le X le 16)3 P(X le 8)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 86 88

Esercizi - 5

9 Il numero di errori tipografici per pagina di una certa rivista segue unadistribuzione di Poisson Sapendo che mediamente sono presenti 02errori per pagina determinare la probabilita che una pagina contenga

1 nessun refuso2 piu refusi

10 Arrivi alla fermata dellrsquoautobus alle 1000 e sei certo che ne passerauno in un momento distribuito uniformemente tra le 1000 e le 1030

1 Qual e la probabilita che tu debba aspettare piu di 10 minuti2 Se alle 1015 lrsquoautobus non e ancora arrivato qual e la probabilita che

tu debba aspettare almeno altri 10 minuti

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 87 88

Esercizi - 6

11 Il signor Jones e convinto che il tempo di vita di una automobile (inmigliaia di chilometri percorse) sia una variabile aleatoria esponenzialedi parametro 120 Il signor Smith ha una macchina usata da vendereche ha percorso circa 10 000 chilometri

1 Se il signor Jones decide di comprarla che probabilita ha di farle farealmeno altri 20 000 chilometri prima che sia da buttare

2 Il modello assunto dal signor Jones e ragionevole

12 Sia X una variabile casuale binomiale di parametri n = 100 e p = 07

1 Tracciate la funzione di ripartizione di X2 Calcolate il primo quartile il quantile di ordine 09 e la mediana di X3 Calcolare la probabilita P(X le 60)4 Calcolare la probabilita P(X le 88)5 Trovare il piu piccolo valore x tale che P(X le x) ge 09

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 88 88

  • Lezione 1
    • Script in Python
    • Numpy
    • Esercizi
    • Pandas
    • Esercizi
      • Lezione 2
        • File csv
        • DataFrame
        • Accesso ai DataFrame
        • Frequenze
        • Esercizi
          • Lezione 3
            • Matplotlib
            • Grafici a Barre
            • Istogrammi
            • Cumulativa empirica
            • Boxplot
            • QQplot
            • Diagramma di Pareto
            • Esercizi
              • Lezione 4
                • Definizioni
                • Probabilitagrave condizionata
                • Indipendenza
                • Esercizi
                  • Lezione 5
                    • Variabili Aleatorie
                    • Funzione di Ripartizione
                    • Funzione di Densitagrave
                    • Valore Atteso
                    • Varianza
                    • Covarianza
                    • Esercizi
                      • Lezione 6
                        • Scipy - Variabili Discrete
                        • Scipy - Variabili continue
                        • Esercizi

Valore Atteso

Chiamato anche media (expectation in inglese) e appunto una mediapesata dei possibili valori di una variabile aleatoria Il peso dato a ciascunvalore e la probabilita data a quello specifico valore

E[X ] =sumi

aiP(X = ai)

Esempio dado truccato

valore 6 con probabilita 712

valori da 1 a 5 con probabilita 112

La variabile aleatoria X indica la faccia risultante dal lancio di un dado

E[X ] = 1

12lowast 1 + 1

12lowast 2 + 1

12lowast 3 + 1

12lowast 4 + 1

12lowast 5 + 7

12lowast 6 = 475

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 68 88

Valore Atteso - Proprieta

Sia X una variabile aleatoria con valore atteso E[X ] Se c e una costanteallora anche cX e X + c sono variabili casuali In particolare valgono leseguenti proprieta

E[cX ] = cE[X ]E[X + c] = E[X ] + c

Sia Y una variabile aleatoria Allora

E[X +Y ] = E[X ] +E[Y ]se e solo se X e Y sono independenti

E[XY ] = E[X ]E[Y ]

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 69 88

Varianza

Ersquo il valore atteso del quadrato della differenza tra la variabile aleatoria e ilsuo valore atteso

Var(X ) = E[(X minusE[X ])2] = E[X 2] minus (E[X ])2

La radice quadrata viene detta deviazione standard di X

Esempio dado truccato

E[X 2] = 1

12lowast 12 + 1

12lowast 22 + 1

12lowast 32 + 1

12lowast 42 + 1

12lowast 52 + 7

12lowast 62 ≃ 255

Var(X ) = E[X 2] minus (E[X ])2 ≃ 255 minus 4752 ≃ 3

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 70 88

Varianza - proprieta

Sia X una variabile aleatoria e c una costante Allora valgono le seguentiproprieta

1 Var(cX ) = c2Var(X )

2 Var(X + c) = Var(X )

NOTA

Var(X +X ) ne Var(X ) +Var(X )

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 71 88

Covarianza

Siano X Y due variabili aleatorie con valore atteso rispettivamenteE[X ] = microX e E[Y ] = microY La covarianza e definita come segue

Cov(X Y ) = E[(X minus microX )(Y minus microY )] = = E[XY ] minus microXmicroY

Proprieta

1 Cov(X Y ) = Cov(Y X )2 Cov(X X ) = Var(X )3 Sia a una costante allora

Cov(aX Y ) = aCov(X Y )

4 Sia Z una variabile aleatoria allora

Cov(X + Z Y ) = Cov(X Y ) + Cov(Z Y )

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 72 88

Esercizi - 1

1 Consideriamo una variabile aleatoria X che puo assumere i valori 12o 3 Se sappiamo che

fX (1) = 1

3 fX (2) = 3

7

1 Quanto vale fX (3)2 Disegnare il grafico di questa funzione di massa3 Disegnare il grafico della relativa funzione di ripartizione

2 Dimostrare che se X1 e X2 hanno la stessa distribuzione allora

Cov(X1 +X2X1 minusX2) = 0

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 73 88

Esercizi - 2

3 La funzione di ripartizione di X e definita come segue

FX (x) =

⎧⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎨⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎩

0 per x le 0

x2 per 0 le x lt 1

23 per 1 le x lt 2

1112 per 2 le x lt 3

1 per x ge 3

Se ne tracci il graficoQuanto vale P(X gt 12)Quanto vale P(2 le X le 4)Quanto vale P(X le 3)Quanto vale P(X = 1)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 74 88

Esercizi - 3

4 Un tipo di prodotti vengono classificati a seconda dei loro difetti edella fabbrica che li ha prodotti Sia X1 il numero (1 o 2) dellafabbrica e sia X2 il numero di difetti per pezzo (che possono essere da0 a 3) di un prodotto scelto a caso tra la totalita di quelli esistentiLa tabella seguente riporta la funzione di massa di probabilitacongiunta per queste due variabili aleatorie discrete Le righe siriferiscono alla variabile X1 mentre le colonne alla variabile X2

Trova le distribuzioni marginali di X1 e X2Calcola media e varianza di X2

0 1 2 31 18 116 316 182 116 116 18 14

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 75 88

Scipy

Scipy e un modulo che permette di utilizzare varie distribuzioni diprobabilita sia di tipo discreto che continuo

La sintassi generale e la seguente Scipystatsltnome distribuzionegt

rvs(size=z) restituisce un vettore di numeri casuali estrattisecondo la distribuzione di lunghezza z

pdf(x) restituisce il vettore della densita della distribuzionevalutata nei valori del vettore di input x (pmf per le discrete)

cdf(x) restituisce il vettore della funzione di ripartizione (ocumulativa) della distribuzione valutata nei valori del vettore di inputx

ppf(q) restituisce il vettore dei quantili della distribuzione valutatanei valori del vettore di input q

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 76 88

Variabili aleatorie discrete Binomiale

gtgtgt from scipystats import binom

gtgtgt rv = binom(n p)

rvrvs(x) restituisce un vettore di x numeri estratti secondo unadistribuzione Binomiale di parametri n p

rvpmf(x) restituisce la probabilita di ottenere esattamente x

successi in un esperimento dicotomico (01) ripetuto n volte con unaprobabilita di successo p (x puo essere un vettore)

rvcdf(q) restituisce il valore della funzione di ripartizione in q (qpuo essere un vettore)

rvppf(p) restituisce il valore del quantile di ordine p

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 77 88

Variabili aleatorie discrete Ipergeometrica

Supponiamo di avere M = 20 animali di cui n = 7 cani Se vogliamosapere la probabilita di trovare un dato numero di cani se scegliamoN = 12 dei 20 animali in maniera casuale possiamo usare una distribuzioneipergeometrica in questo modo

gtgtgt from scipystats import hypergeom

gtgtgt [M n N] = [20 7 12]

gtgtgt rv = hypergeom(M n N)

rvpmf(x) restituisce la probabilita di estrarre esattamente x cani

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 78 88

Variabili aleatorie discrete Geometrica

gtgtgt from scipystats import geom

gtgtgt rv = geom(p)

rvpmf(x) restituisce la probabilita di avere un successo dopoesattamente x insuccessi in una successione di esperimenti dicotomici(esito 01) con una probabilita di successo p (x puo essere un vettore)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 79 88

Variabili aleatorie discrete Poisson

La distribuzione di Poisson viene usata spesso come modello per il numerodi volte per cui un evento avviene in un dato intervallo di tempo (ospazio) Ad esempio si puo utilizzare per misurare il numero di chiamatericevute da un call center in una mattinata

gtgtgt from scipystats import poisson

gtgtgt mu = 2

gtgtgt rv = poisson(mu)

rvpmf(x) restituisce il seguente valore

f (x) = exp(minusmicro)microx

x

In questo caso x rappresenta il numero di eventi per cui si vuole calcolarela probabilita sapendo che in media ne accadono micro

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 80 88

Variabili aleatorie continue Uniforme

In Scipy la funzione uniforme e soltanto continua Questo significa chenella generazione di numeri casuali otterro dati di tipo float Possiamotuttavia simulare una variabile discreta estraendo la parte intera delrisultato ottenuto

gtgtgt from scipystats import uniform

gtgtgt rv = uniform()

Il comando uniform() crea una distribuzione uniforme nellrsquointervallo[01] Possiamo creare una distribuzione uniforme qualsiasi usandouniform(x y - x) per lrsquointervallo [x y]

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 81 88

Variabili aleatorie continue

norm(mu sigma) variabile Gaussiana (o Normale) di media micro edeviazione standard σ

expon(scale = 1 lambda) variabile Esponenziale di parametroλ

Altre distribuzioni (con relativa documentazione) disponibili suhttpsdocsscipyorgdocscipyreferencestatshtml

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 82 88

Esercizi - 1

1 Unrsquourna contiene 10 palline di cui 4 bianche e 6 nere Si eseguono 5estrazioni con reimmissione

1 Tracciare grafico della funzione massa di probabilita della variabilecasuale X = rdquonumero di palline bianche estratterdquo

2 Calcolare la probabilita di estrarre 2 palline bianche3 Calcolare la probabilita di estrarre al piu 2 palline bianche4 Calcolare la probabilita di estrarre almeno 2 palline bianche5 Qual e il numero minimo x tale che la probabilita di estrarre al piu x

palline bianche sia almeno 08

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 83 88

Esercizi - 2

2 Si eseguono 10 estrazioni senza reimmissione da unrsquourna

1 Tracciare il grafico della funzione massa di probabilita della variabilecasuale X = rdquonumero di palline bianche estratterdquo nei seguenti casi

1 lrsquourna contiene 100 palline di cui 20 bianche e le restanti nere2 lrsquourna contiene 100 palline di cui 2 bianche e le restanti nere

2 Tracciare il grafico della funzione massa di probabilita della variabilecasuale X nel caso dellrsquourna 1 se si eseguono 25 estrazioni

3 Consideriamo lrsquourna 1 e N = 10 estrazioni Si aumenti il numero totaleM di palline nellrsquourna mantenendo uguale a 02 la frazione di pallinebianche Per ciascun valore di M confrontare graficamente ladistribuzione di probabilita del numero di palline bianche estratte nelcaso di estrazioni con e senza reimmissione Provare con 20 40 e 200palline bianche

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 84 88

Esercizi - 3

3 Calcolare la probabilita di ottenere piu teste che croci lanciando 7volte una moneta truccata con probabilita di avere croce pari a 045

4 Calcolare la probabilita di avere almeno 3 sei lanciando 5 dadi a 12facce

5 Calcolare la probabilita di estrarre 20 euro da un sacco contenente 47monete da 1 centesimo e 53 da 2 euro estraendo (uniformemente) acaso 10 monete senza reinserirle

6 Un grammo di uranio emette mediamente 2152 particelle α ognimillisecondo Qual e con buona approssimazione la probabilita che ungrammo di uranio emetta al piu 2000 particelle α in un millisecondo

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 85 88

Esercizi - 4

7 Un uomo si risveglia in mezzo al deserto senza acqua Dopo ogniminuto ha una probabilita del 3 di perdere conoscenza per via dellecondizioni estreme Calcolare la probabilita che lrsquouomo perdaconoscenza dopo almeno due ore e la probabilita che lrsquouomo perdaconoscenza dopo esattamente un quarto drsquoora

8 Sia X una variabile aleatoria normale di parametri micro = 10 e σ = 36Calcola

1 P(X gt 5)2 P(4 le X le 16)3 P(X le 8)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 86 88

Esercizi - 5

9 Il numero di errori tipografici per pagina di una certa rivista segue unadistribuzione di Poisson Sapendo che mediamente sono presenti 02errori per pagina determinare la probabilita che una pagina contenga

1 nessun refuso2 piu refusi

10 Arrivi alla fermata dellrsquoautobus alle 1000 e sei certo che ne passerauno in un momento distribuito uniformemente tra le 1000 e le 1030

1 Qual e la probabilita che tu debba aspettare piu di 10 minuti2 Se alle 1015 lrsquoautobus non e ancora arrivato qual e la probabilita che

tu debba aspettare almeno altri 10 minuti

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 87 88

Esercizi - 6

11 Il signor Jones e convinto che il tempo di vita di una automobile (inmigliaia di chilometri percorse) sia una variabile aleatoria esponenzialedi parametro 120 Il signor Smith ha una macchina usata da vendereche ha percorso circa 10 000 chilometri

1 Se il signor Jones decide di comprarla che probabilita ha di farle farealmeno altri 20 000 chilometri prima che sia da buttare

2 Il modello assunto dal signor Jones e ragionevole

12 Sia X una variabile casuale binomiale di parametri n = 100 e p = 07

1 Tracciate la funzione di ripartizione di X2 Calcolate il primo quartile il quantile di ordine 09 e la mediana di X3 Calcolare la probabilita P(X le 60)4 Calcolare la probabilita P(X le 88)5 Trovare il piu piccolo valore x tale che P(X le x) ge 09

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 88 88

  • Lezione 1
    • Script in Python
    • Numpy
    • Esercizi
    • Pandas
    • Esercizi
      • Lezione 2
        • File csv
        • DataFrame
        • Accesso ai DataFrame
        • Frequenze
        • Esercizi
          • Lezione 3
            • Matplotlib
            • Grafici a Barre
            • Istogrammi
            • Cumulativa empirica
            • Boxplot
            • QQplot
            • Diagramma di Pareto
            • Esercizi
              • Lezione 4
                • Definizioni
                • Probabilitagrave condizionata
                • Indipendenza
                • Esercizi
                  • Lezione 5
                    • Variabili Aleatorie
                    • Funzione di Ripartizione
                    • Funzione di Densitagrave
                    • Valore Atteso
                    • Varianza
                    • Covarianza
                    • Esercizi
                      • Lezione 6
                        • Scipy - Variabili Discrete
                        • Scipy - Variabili continue
                        • Esercizi

Valore Atteso - Proprieta

Sia X una variabile aleatoria con valore atteso E[X ] Se c e una costanteallora anche cX e X + c sono variabili casuali In particolare valgono leseguenti proprieta

E[cX ] = cE[X ]E[X + c] = E[X ] + c

Sia Y una variabile aleatoria Allora

E[X +Y ] = E[X ] +E[Y ]se e solo se X e Y sono independenti

E[XY ] = E[X ]E[Y ]

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 69 88

Varianza

Ersquo il valore atteso del quadrato della differenza tra la variabile aleatoria e ilsuo valore atteso

Var(X ) = E[(X minusE[X ])2] = E[X 2] minus (E[X ])2

La radice quadrata viene detta deviazione standard di X

Esempio dado truccato

E[X 2] = 1

12lowast 12 + 1

12lowast 22 + 1

12lowast 32 + 1

12lowast 42 + 1

12lowast 52 + 7

12lowast 62 ≃ 255

Var(X ) = E[X 2] minus (E[X ])2 ≃ 255 minus 4752 ≃ 3

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 70 88

Varianza - proprieta

Sia X una variabile aleatoria e c una costante Allora valgono le seguentiproprieta

1 Var(cX ) = c2Var(X )

2 Var(X + c) = Var(X )

NOTA

Var(X +X ) ne Var(X ) +Var(X )

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 71 88

Covarianza

Siano X Y due variabili aleatorie con valore atteso rispettivamenteE[X ] = microX e E[Y ] = microY La covarianza e definita come segue

Cov(X Y ) = E[(X minus microX )(Y minus microY )] = = E[XY ] minus microXmicroY

Proprieta

1 Cov(X Y ) = Cov(Y X )2 Cov(X X ) = Var(X )3 Sia a una costante allora

Cov(aX Y ) = aCov(X Y )

4 Sia Z una variabile aleatoria allora

Cov(X + Z Y ) = Cov(X Y ) + Cov(Z Y )

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 72 88

Esercizi - 1

1 Consideriamo una variabile aleatoria X che puo assumere i valori 12o 3 Se sappiamo che

fX (1) = 1

3 fX (2) = 3

7

1 Quanto vale fX (3)2 Disegnare il grafico di questa funzione di massa3 Disegnare il grafico della relativa funzione di ripartizione

2 Dimostrare che se X1 e X2 hanno la stessa distribuzione allora

Cov(X1 +X2X1 minusX2) = 0

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 73 88

Esercizi - 2

3 La funzione di ripartizione di X e definita come segue

FX (x) =

⎧⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎨⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎩

0 per x le 0

x2 per 0 le x lt 1

23 per 1 le x lt 2

1112 per 2 le x lt 3

1 per x ge 3

Se ne tracci il graficoQuanto vale P(X gt 12)Quanto vale P(2 le X le 4)Quanto vale P(X le 3)Quanto vale P(X = 1)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 74 88

Esercizi - 3

4 Un tipo di prodotti vengono classificati a seconda dei loro difetti edella fabbrica che li ha prodotti Sia X1 il numero (1 o 2) dellafabbrica e sia X2 il numero di difetti per pezzo (che possono essere da0 a 3) di un prodotto scelto a caso tra la totalita di quelli esistentiLa tabella seguente riporta la funzione di massa di probabilitacongiunta per queste due variabili aleatorie discrete Le righe siriferiscono alla variabile X1 mentre le colonne alla variabile X2

Trova le distribuzioni marginali di X1 e X2Calcola media e varianza di X2

0 1 2 31 18 116 316 182 116 116 18 14

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 75 88

Scipy

Scipy e un modulo che permette di utilizzare varie distribuzioni diprobabilita sia di tipo discreto che continuo

La sintassi generale e la seguente Scipystatsltnome distribuzionegt

rvs(size=z) restituisce un vettore di numeri casuali estrattisecondo la distribuzione di lunghezza z

pdf(x) restituisce il vettore della densita della distribuzionevalutata nei valori del vettore di input x (pmf per le discrete)

cdf(x) restituisce il vettore della funzione di ripartizione (ocumulativa) della distribuzione valutata nei valori del vettore di inputx

ppf(q) restituisce il vettore dei quantili della distribuzione valutatanei valori del vettore di input q

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 76 88

Variabili aleatorie discrete Binomiale

gtgtgt from scipystats import binom

gtgtgt rv = binom(n p)

rvrvs(x) restituisce un vettore di x numeri estratti secondo unadistribuzione Binomiale di parametri n p

rvpmf(x) restituisce la probabilita di ottenere esattamente x

successi in un esperimento dicotomico (01) ripetuto n volte con unaprobabilita di successo p (x puo essere un vettore)

rvcdf(q) restituisce il valore della funzione di ripartizione in q (qpuo essere un vettore)

rvppf(p) restituisce il valore del quantile di ordine p

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 77 88

Variabili aleatorie discrete Ipergeometrica

Supponiamo di avere M = 20 animali di cui n = 7 cani Se vogliamosapere la probabilita di trovare un dato numero di cani se scegliamoN = 12 dei 20 animali in maniera casuale possiamo usare una distribuzioneipergeometrica in questo modo

gtgtgt from scipystats import hypergeom

gtgtgt [M n N] = [20 7 12]

gtgtgt rv = hypergeom(M n N)

rvpmf(x) restituisce la probabilita di estrarre esattamente x cani

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 78 88

Variabili aleatorie discrete Geometrica

gtgtgt from scipystats import geom

gtgtgt rv = geom(p)

rvpmf(x) restituisce la probabilita di avere un successo dopoesattamente x insuccessi in una successione di esperimenti dicotomici(esito 01) con una probabilita di successo p (x puo essere un vettore)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 79 88

Variabili aleatorie discrete Poisson

La distribuzione di Poisson viene usata spesso come modello per il numerodi volte per cui un evento avviene in un dato intervallo di tempo (ospazio) Ad esempio si puo utilizzare per misurare il numero di chiamatericevute da un call center in una mattinata

gtgtgt from scipystats import poisson

gtgtgt mu = 2

gtgtgt rv = poisson(mu)

rvpmf(x) restituisce il seguente valore

f (x) = exp(minusmicro)microx

x

In questo caso x rappresenta il numero di eventi per cui si vuole calcolarela probabilita sapendo che in media ne accadono micro

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 80 88

Variabili aleatorie continue Uniforme

In Scipy la funzione uniforme e soltanto continua Questo significa chenella generazione di numeri casuali otterro dati di tipo float Possiamotuttavia simulare una variabile discreta estraendo la parte intera delrisultato ottenuto

gtgtgt from scipystats import uniform

gtgtgt rv = uniform()

Il comando uniform() crea una distribuzione uniforme nellrsquointervallo[01] Possiamo creare una distribuzione uniforme qualsiasi usandouniform(x y - x) per lrsquointervallo [x y]

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 81 88

Variabili aleatorie continue

norm(mu sigma) variabile Gaussiana (o Normale) di media micro edeviazione standard σ

expon(scale = 1 lambda) variabile Esponenziale di parametroλ

Altre distribuzioni (con relativa documentazione) disponibili suhttpsdocsscipyorgdocscipyreferencestatshtml

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 82 88

Esercizi - 1

1 Unrsquourna contiene 10 palline di cui 4 bianche e 6 nere Si eseguono 5estrazioni con reimmissione

1 Tracciare grafico della funzione massa di probabilita della variabilecasuale X = rdquonumero di palline bianche estratterdquo

2 Calcolare la probabilita di estrarre 2 palline bianche3 Calcolare la probabilita di estrarre al piu 2 palline bianche4 Calcolare la probabilita di estrarre almeno 2 palline bianche5 Qual e il numero minimo x tale che la probabilita di estrarre al piu x

palline bianche sia almeno 08

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 83 88

Esercizi - 2

2 Si eseguono 10 estrazioni senza reimmissione da unrsquourna

1 Tracciare il grafico della funzione massa di probabilita della variabilecasuale X = rdquonumero di palline bianche estratterdquo nei seguenti casi

1 lrsquourna contiene 100 palline di cui 20 bianche e le restanti nere2 lrsquourna contiene 100 palline di cui 2 bianche e le restanti nere

2 Tracciare il grafico della funzione massa di probabilita della variabilecasuale X nel caso dellrsquourna 1 se si eseguono 25 estrazioni

3 Consideriamo lrsquourna 1 e N = 10 estrazioni Si aumenti il numero totaleM di palline nellrsquourna mantenendo uguale a 02 la frazione di pallinebianche Per ciascun valore di M confrontare graficamente ladistribuzione di probabilita del numero di palline bianche estratte nelcaso di estrazioni con e senza reimmissione Provare con 20 40 e 200palline bianche

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 84 88

Esercizi - 3

3 Calcolare la probabilita di ottenere piu teste che croci lanciando 7volte una moneta truccata con probabilita di avere croce pari a 045

4 Calcolare la probabilita di avere almeno 3 sei lanciando 5 dadi a 12facce

5 Calcolare la probabilita di estrarre 20 euro da un sacco contenente 47monete da 1 centesimo e 53 da 2 euro estraendo (uniformemente) acaso 10 monete senza reinserirle

6 Un grammo di uranio emette mediamente 2152 particelle α ognimillisecondo Qual e con buona approssimazione la probabilita che ungrammo di uranio emetta al piu 2000 particelle α in un millisecondo

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 85 88

Esercizi - 4

7 Un uomo si risveglia in mezzo al deserto senza acqua Dopo ogniminuto ha una probabilita del 3 di perdere conoscenza per via dellecondizioni estreme Calcolare la probabilita che lrsquouomo perdaconoscenza dopo almeno due ore e la probabilita che lrsquouomo perdaconoscenza dopo esattamente un quarto drsquoora

8 Sia X una variabile aleatoria normale di parametri micro = 10 e σ = 36Calcola

1 P(X gt 5)2 P(4 le X le 16)3 P(X le 8)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 86 88

Esercizi - 5

9 Il numero di errori tipografici per pagina di una certa rivista segue unadistribuzione di Poisson Sapendo che mediamente sono presenti 02errori per pagina determinare la probabilita che una pagina contenga

1 nessun refuso2 piu refusi

10 Arrivi alla fermata dellrsquoautobus alle 1000 e sei certo che ne passerauno in un momento distribuito uniformemente tra le 1000 e le 1030

1 Qual e la probabilita che tu debba aspettare piu di 10 minuti2 Se alle 1015 lrsquoautobus non e ancora arrivato qual e la probabilita che

tu debba aspettare almeno altri 10 minuti

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 87 88

Esercizi - 6

11 Il signor Jones e convinto che il tempo di vita di una automobile (inmigliaia di chilometri percorse) sia una variabile aleatoria esponenzialedi parametro 120 Il signor Smith ha una macchina usata da vendereche ha percorso circa 10 000 chilometri

1 Se il signor Jones decide di comprarla che probabilita ha di farle farealmeno altri 20 000 chilometri prima che sia da buttare

2 Il modello assunto dal signor Jones e ragionevole

12 Sia X una variabile casuale binomiale di parametri n = 100 e p = 07

1 Tracciate la funzione di ripartizione di X2 Calcolate il primo quartile il quantile di ordine 09 e la mediana di X3 Calcolare la probabilita P(X le 60)4 Calcolare la probabilita P(X le 88)5 Trovare il piu piccolo valore x tale che P(X le x) ge 09

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 88 88

  • Lezione 1
    • Script in Python
    • Numpy
    • Esercizi
    • Pandas
    • Esercizi
      • Lezione 2
        • File csv
        • DataFrame
        • Accesso ai DataFrame
        • Frequenze
        • Esercizi
          • Lezione 3
            • Matplotlib
            • Grafici a Barre
            • Istogrammi
            • Cumulativa empirica
            • Boxplot
            • QQplot
            • Diagramma di Pareto
            • Esercizi
              • Lezione 4
                • Definizioni
                • Probabilitagrave condizionata
                • Indipendenza
                • Esercizi
                  • Lezione 5
                    • Variabili Aleatorie
                    • Funzione di Ripartizione
                    • Funzione di Densitagrave
                    • Valore Atteso
                    • Varianza
                    • Covarianza
                    • Esercizi
                      • Lezione 6
                        • Scipy - Variabili Discrete
                        • Scipy - Variabili continue
                        • Esercizi

Varianza

Ersquo il valore atteso del quadrato della differenza tra la variabile aleatoria e ilsuo valore atteso

Var(X ) = E[(X minusE[X ])2] = E[X 2] minus (E[X ])2

La radice quadrata viene detta deviazione standard di X

Esempio dado truccato

E[X 2] = 1

12lowast 12 + 1

12lowast 22 + 1

12lowast 32 + 1

12lowast 42 + 1

12lowast 52 + 7

12lowast 62 ≃ 255

Var(X ) = E[X 2] minus (E[X ])2 ≃ 255 minus 4752 ≃ 3

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 70 88

Varianza - proprieta

Sia X una variabile aleatoria e c una costante Allora valgono le seguentiproprieta

1 Var(cX ) = c2Var(X )

2 Var(X + c) = Var(X )

NOTA

Var(X +X ) ne Var(X ) +Var(X )

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 71 88

Covarianza

Siano X Y due variabili aleatorie con valore atteso rispettivamenteE[X ] = microX e E[Y ] = microY La covarianza e definita come segue

Cov(X Y ) = E[(X minus microX )(Y minus microY )] = = E[XY ] minus microXmicroY

Proprieta

1 Cov(X Y ) = Cov(Y X )2 Cov(X X ) = Var(X )3 Sia a una costante allora

Cov(aX Y ) = aCov(X Y )

4 Sia Z una variabile aleatoria allora

Cov(X + Z Y ) = Cov(X Y ) + Cov(Z Y )

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 72 88

Esercizi - 1

1 Consideriamo una variabile aleatoria X che puo assumere i valori 12o 3 Se sappiamo che

fX (1) = 1

3 fX (2) = 3

7

1 Quanto vale fX (3)2 Disegnare il grafico di questa funzione di massa3 Disegnare il grafico della relativa funzione di ripartizione

2 Dimostrare che se X1 e X2 hanno la stessa distribuzione allora

Cov(X1 +X2X1 minusX2) = 0

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 73 88

Esercizi - 2

3 La funzione di ripartizione di X e definita come segue

FX (x) =

⎧⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎨⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎩

0 per x le 0

x2 per 0 le x lt 1

23 per 1 le x lt 2

1112 per 2 le x lt 3

1 per x ge 3

Se ne tracci il graficoQuanto vale P(X gt 12)Quanto vale P(2 le X le 4)Quanto vale P(X le 3)Quanto vale P(X = 1)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 74 88

Esercizi - 3

4 Un tipo di prodotti vengono classificati a seconda dei loro difetti edella fabbrica che li ha prodotti Sia X1 il numero (1 o 2) dellafabbrica e sia X2 il numero di difetti per pezzo (che possono essere da0 a 3) di un prodotto scelto a caso tra la totalita di quelli esistentiLa tabella seguente riporta la funzione di massa di probabilitacongiunta per queste due variabili aleatorie discrete Le righe siriferiscono alla variabile X1 mentre le colonne alla variabile X2

Trova le distribuzioni marginali di X1 e X2Calcola media e varianza di X2

0 1 2 31 18 116 316 182 116 116 18 14

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 75 88

Scipy

Scipy e un modulo che permette di utilizzare varie distribuzioni diprobabilita sia di tipo discreto che continuo

La sintassi generale e la seguente Scipystatsltnome distribuzionegt

rvs(size=z) restituisce un vettore di numeri casuali estrattisecondo la distribuzione di lunghezza z

pdf(x) restituisce il vettore della densita della distribuzionevalutata nei valori del vettore di input x (pmf per le discrete)

cdf(x) restituisce il vettore della funzione di ripartizione (ocumulativa) della distribuzione valutata nei valori del vettore di inputx

ppf(q) restituisce il vettore dei quantili della distribuzione valutatanei valori del vettore di input q

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 76 88

Variabili aleatorie discrete Binomiale

gtgtgt from scipystats import binom

gtgtgt rv = binom(n p)

rvrvs(x) restituisce un vettore di x numeri estratti secondo unadistribuzione Binomiale di parametri n p

rvpmf(x) restituisce la probabilita di ottenere esattamente x

successi in un esperimento dicotomico (01) ripetuto n volte con unaprobabilita di successo p (x puo essere un vettore)

rvcdf(q) restituisce il valore della funzione di ripartizione in q (qpuo essere un vettore)

rvppf(p) restituisce il valore del quantile di ordine p

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 77 88

Variabili aleatorie discrete Ipergeometrica

Supponiamo di avere M = 20 animali di cui n = 7 cani Se vogliamosapere la probabilita di trovare un dato numero di cani se scegliamoN = 12 dei 20 animali in maniera casuale possiamo usare una distribuzioneipergeometrica in questo modo

gtgtgt from scipystats import hypergeom

gtgtgt [M n N] = [20 7 12]

gtgtgt rv = hypergeom(M n N)

rvpmf(x) restituisce la probabilita di estrarre esattamente x cani

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 78 88

Variabili aleatorie discrete Geometrica

gtgtgt from scipystats import geom

gtgtgt rv = geom(p)

rvpmf(x) restituisce la probabilita di avere un successo dopoesattamente x insuccessi in una successione di esperimenti dicotomici(esito 01) con una probabilita di successo p (x puo essere un vettore)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 79 88

Variabili aleatorie discrete Poisson

La distribuzione di Poisson viene usata spesso come modello per il numerodi volte per cui un evento avviene in un dato intervallo di tempo (ospazio) Ad esempio si puo utilizzare per misurare il numero di chiamatericevute da un call center in una mattinata

gtgtgt from scipystats import poisson

gtgtgt mu = 2

gtgtgt rv = poisson(mu)

rvpmf(x) restituisce il seguente valore

f (x) = exp(minusmicro)microx

x

In questo caso x rappresenta il numero di eventi per cui si vuole calcolarela probabilita sapendo che in media ne accadono micro

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 80 88

Variabili aleatorie continue Uniforme

In Scipy la funzione uniforme e soltanto continua Questo significa chenella generazione di numeri casuali otterro dati di tipo float Possiamotuttavia simulare una variabile discreta estraendo la parte intera delrisultato ottenuto

gtgtgt from scipystats import uniform

gtgtgt rv = uniform()

Il comando uniform() crea una distribuzione uniforme nellrsquointervallo[01] Possiamo creare una distribuzione uniforme qualsiasi usandouniform(x y - x) per lrsquointervallo [x y]

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 81 88

Variabili aleatorie continue

norm(mu sigma) variabile Gaussiana (o Normale) di media micro edeviazione standard σ

expon(scale = 1 lambda) variabile Esponenziale di parametroλ

Altre distribuzioni (con relativa documentazione) disponibili suhttpsdocsscipyorgdocscipyreferencestatshtml

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 82 88

Esercizi - 1

1 Unrsquourna contiene 10 palline di cui 4 bianche e 6 nere Si eseguono 5estrazioni con reimmissione

1 Tracciare grafico della funzione massa di probabilita della variabilecasuale X = rdquonumero di palline bianche estratterdquo

2 Calcolare la probabilita di estrarre 2 palline bianche3 Calcolare la probabilita di estrarre al piu 2 palline bianche4 Calcolare la probabilita di estrarre almeno 2 palline bianche5 Qual e il numero minimo x tale che la probabilita di estrarre al piu x

palline bianche sia almeno 08

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 83 88

Esercizi - 2

2 Si eseguono 10 estrazioni senza reimmissione da unrsquourna

1 Tracciare il grafico della funzione massa di probabilita della variabilecasuale X = rdquonumero di palline bianche estratterdquo nei seguenti casi

1 lrsquourna contiene 100 palline di cui 20 bianche e le restanti nere2 lrsquourna contiene 100 palline di cui 2 bianche e le restanti nere

2 Tracciare il grafico della funzione massa di probabilita della variabilecasuale X nel caso dellrsquourna 1 se si eseguono 25 estrazioni

3 Consideriamo lrsquourna 1 e N = 10 estrazioni Si aumenti il numero totaleM di palline nellrsquourna mantenendo uguale a 02 la frazione di pallinebianche Per ciascun valore di M confrontare graficamente ladistribuzione di probabilita del numero di palline bianche estratte nelcaso di estrazioni con e senza reimmissione Provare con 20 40 e 200palline bianche

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 84 88

Esercizi - 3

3 Calcolare la probabilita di ottenere piu teste che croci lanciando 7volte una moneta truccata con probabilita di avere croce pari a 045

4 Calcolare la probabilita di avere almeno 3 sei lanciando 5 dadi a 12facce

5 Calcolare la probabilita di estrarre 20 euro da un sacco contenente 47monete da 1 centesimo e 53 da 2 euro estraendo (uniformemente) acaso 10 monete senza reinserirle

6 Un grammo di uranio emette mediamente 2152 particelle α ognimillisecondo Qual e con buona approssimazione la probabilita che ungrammo di uranio emetta al piu 2000 particelle α in un millisecondo

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 85 88

Esercizi - 4

7 Un uomo si risveglia in mezzo al deserto senza acqua Dopo ogniminuto ha una probabilita del 3 di perdere conoscenza per via dellecondizioni estreme Calcolare la probabilita che lrsquouomo perdaconoscenza dopo almeno due ore e la probabilita che lrsquouomo perdaconoscenza dopo esattamente un quarto drsquoora

8 Sia X una variabile aleatoria normale di parametri micro = 10 e σ = 36Calcola

1 P(X gt 5)2 P(4 le X le 16)3 P(X le 8)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 86 88

Esercizi - 5

9 Il numero di errori tipografici per pagina di una certa rivista segue unadistribuzione di Poisson Sapendo che mediamente sono presenti 02errori per pagina determinare la probabilita che una pagina contenga

1 nessun refuso2 piu refusi

10 Arrivi alla fermata dellrsquoautobus alle 1000 e sei certo che ne passerauno in un momento distribuito uniformemente tra le 1000 e le 1030

1 Qual e la probabilita che tu debba aspettare piu di 10 minuti2 Se alle 1015 lrsquoautobus non e ancora arrivato qual e la probabilita che

tu debba aspettare almeno altri 10 minuti

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 87 88

Esercizi - 6

11 Il signor Jones e convinto che il tempo di vita di una automobile (inmigliaia di chilometri percorse) sia una variabile aleatoria esponenzialedi parametro 120 Il signor Smith ha una macchina usata da vendereche ha percorso circa 10 000 chilometri

1 Se il signor Jones decide di comprarla che probabilita ha di farle farealmeno altri 20 000 chilometri prima che sia da buttare

2 Il modello assunto dal signor Jones e ragionevole

12 Sia X una variabile casuale binomiale di parametri n = 100 e p = 07

1 Tracciate la funzione di ripartizione di X2 Calcolate il primo quartile il quantile di ordine 09 e la mediana di X3 Calcolare la probabilita P(X le 60)4 Calcolare la probabilita P(X le 88)5 Trovare il piu piccolo valore x tale che P(X le x) ge 09

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 88 88

  • Lezione 1
    • Script in Python
    • Numpy
    • Esercizi
    • Pandas
    • Esercizi
      • Lezione 2
        • File csv
        • DataFrame
        • Accesso ai DataFrame
        • Frequenze
        • Esercizi
          • Lezione 3
            • Matplotlib
            • Grafici a Barre
            • Istogrammi
            • Cumulativa empirica
            • Boxplot
            • QQplot
            • Diagramma di Pareto
            • Esercizi
              • Lezione 4
                • Definizioni
                • Probabilitagrave condizionata
                • Indipendenza
                • Esercizi
                  • Lezione 5
                    • Variabili Aleatorie
                    • Funzione di Ripartizione
                    • Funzione di Densitagrave
                    • Valore Atteso
                    • Varianza
                    • Covarianza
                    • Esercizi
                      • Lezione 6
                        • Scipy - Variabili Discrete
                        • Scipy - Variabili continue
                        • Esercizi

Varianza - proprieta

Sia X una variabile aleatoria e c una costante Allora valgono le seguentiproprieta

1 Var(cX ) = c2Var(X )

2 Var(X + c) = Var(X )

NOTA

Var(X +X ) ne Var(X ) +Var(X )

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 71 88

Covarianza

Siano X Y due variabili aleatorie con valore atteso rispettivamenteE[X ] = microX e E[Y ] = microY La covarianza e definita come segue

Cov(X Y ) = E[(X minus microX )(Y minus microY )] = = E[XY ] minus microXmicroY

Proprieta

1 Cov(X Y ) = Cov(Y X )2 Cov(X X ) = Var(X )3 Sia a una costante allora

Cov(aX Y ) = aCov(X Y )

4 Sia Z una variabile aleatoria allora

Cov(X + Z Y ) = Cov(X Y ) + Cov(Z Y )

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 72 88

Esercizi - 1

1 Consideriamo una variabile aleatoria X che puo assumere i valori 12o 3 Se sappiamo che

fX (1) = 1

3 fX (2) = 3

7

1 Quanto vale fX (3)2 Disegnare il grafico di questa funzione di massa3 Disegnare il grafico della relativa funzione di ripartizione

2 Dimostrare che se X1 e X2 hanno la stessa distribuzione allora

Cov(X1 +X2X1 minusX2) = 0

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 73 88

Esercizi - 2

3 La funzione di ripartizione di X e definita come segue

FX (x) =

⎧⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎨⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎩

0 per x le 0

x2 per 0 le x lt 1

23 per 1 le x lt 2

1112 per 2 le x lt 3

1 per x ge 3

Se ne tracci il graficoQuanto vale P(X gt 12)Quanto vale P(2 le X le 4)Quanto vale P(X le 3)Quanto vale P(X = 1)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 74 88

Esercizi - 3

4 Un tipo di prodotti vengono classificati a seconda dei loro difetti edella fabbrica che li ha prodotti Sia X1 il numero (1 o 2) dellafabbrica e sia X2 il numero di difetti per pezzo (che possono essere da0 a 3) di un prodotto scelto a caso tra la totalita di quelli esistentiLa tabella seguente riporta la funzione di massa di probabilitacongiunta per queste due variabili aleatorie discrete Le righe siriferiscono alla variabile X1 mentre le colonne alla variabile X2

Trova le distribuzioni marginali di X1 e X2Calcola media e varianza di X2

0 1 2 31 18 116 316 182 116 116 18 14

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 75 88

Scipy

Scipy e un modulo che permette di utilizzare varie distribuzioni diprobabilita sia di tipo discreto che continuo

La sintassi generale e la seguente Scipystatsltnome distribuzionegt

rvs(size=z) restituisce un vettore di numeri casuali estrattisecondo la distribuzione di lunghezza z

pdf(x) restituisce il vettore della densita della distribuzionevalutata nei valori del vettore di input x (pmf per le discrete)

cdf(x) restituisce il vettore della funzione di ripartizione (ocumulativa) della distribuzione valutata nei valori del vettore di inputx

ppf(q) restituisce il vettore dei quantili della distribuzione valutatanei valori del vettore di input q

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 76 88

Variabili aleatorie discrete Binomiale

gtgtgt from scipystats import binom

gtgtgt rv = binom(n p)

rvrvs(x) restituisce un vettore di x numeri estratti secondo unadistribuzione Binomiale di parametri n p

rvpmf(x) restituisce la probabilita di ottenere esattamente x

successi in un esperimento dicotomico (01) ripetuto n volte con unaprobabilita di successo p (x puo essere un vettore)

rvcdf(q) restituisce il valore della funzione di ripartizione in q (qpuo essere un vettore)

rvppf(p) restituisce il valore del quantile di ordine p

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 77 88

Variabili aleatorie discrete Ipergeometrica

Supponiamo di avere M = 20 animali di cui n = 7 cani Se vogliamosapere la probabilita di trovare un dato numero di cani se scegliamoN = 12 dei 20 animali in maniera casuale possiamo usare una distribuzioneipergeometrica in questo modo

gtgtgt from scipystats import hypergeom

gtgtgt [M n N] = [20 7 12]

gtgtgt rv = hypergeom(M n N)

rvpmf(x) restituisce la probabilita di estrarre esattamente x cani

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 78 88

Variabili aleatorie discrete Geometrica

gtgtgt from scipystats import geom

gtgtgt rv = geom(p)

rvpmf(x) restituisce la probabilita di avere un successo dopoesattamente x insuccessi in una successione di esperimenti dicotomici(esito 01) con una probabilita di successo p (x puo essere un vettore)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 79 88

Variabili aleatorie discrete Poisson

La distribuzione di Poisson viene usata spesso come modello per il numerodi volte per cui un evento avviene in un dato intervallo di tempo (ospazio) Ad esempio si puo utilizzare per misurare il numero di chiamatericevute da un call center in una mattinata

gtgtgt from scipystats import poisson

gtgtgt mu = 2

gtgtgt rv = poisson(mu)

rvpmf(x) restituisce il seguente valore

f (x) = exp(minusmicro)microx

x

In questo caso x rappresenta il numero di eventi per cui si vuole calcolarela probabilita sapendo che in media ne accadono micro

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 80 88

Variabili aleatorie continue Uniforme

In Scipy la funzione uniforme e soltanto continua Questo significa chenella generazione di numeri casuali otterro dati di tipo float Possiamotuttavia simulare una variabile discreta estraendo la parte intera delrisultato ottenuto

gtgtgt from scipystats import uniform

gtgtgt rv = uniform()

Il comando uniform() crea una distribuzione uniforme nellrsquointervallo[01] Possiamo creare una distribuzione uniforme qualsiasi usandouniform(x y - x) per lrsquointervallo [x y]

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 81 88

Variabili aleatorie continue

norm(mu sigma) variabile Gaussiana (o Normale) di media micro edeviazione standard σ

expon(scale = 1 lambda) variabile Esponenziale di parametroλ

Altre distribuzioni (con relativa documentazione) disponibili suhttpsdocsscipyorgdocscipyreferencestatshtml

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 82 88

Esercizi - 1

1 Unrsquourna contiene 10 palline di cui 4 bianche e 6 nere Si eseguono 5estrazioni con reimmissione

1 Tracciare grafico della funzione massa di probabilita della variabilecasuale X = rdquonumero di palline bianche estratterdquo

2 Calcolare la probabilita di estrarre 2 palline bianche3 Calcolare la probabilita di estrarre al piu 2 palline bianche4 Calcolare la probabilita di estrarre almeno 2 palline bianche5 Qual e il numero minimo x tale che la probabilita di estrarre al piu x

palline bianche sia almeno 08

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 83 88

Esercizi - 2

2 Si eseguono 10 estrazioni senza reimmissione da unrsquourna

1 Tracciare il grafico della funzione massa di probabilita della variabilecasuale X = rdquonumero di palline bianche estratterdquo nei seguenti casi

1 lrsquourna contiene 100 palline di cui 20 bianche e le restanti nere2 lrsquourna contiene 100 palline di cui 2 bianche e le restanti nere

2 Tracciare il grafico della funzione massa di probabilita della variabilecasuale X nel caso dellrsquourna 1 se si eseguono 25 estrazioni

3 Consideriamo lrsquourna 1 e N = 10 estrazioni Si aumenti il numero totaleM di palline nellrsquourna mantenendo uguale a 02 la frazione di pallinebianche Per ciascun valore di M confrontare graficamente ladistribuzione di probabilita del numero di palline bianche estratte nelcaso di estrazioni con e senza reimmissione Provare con 20 40 e 200palline bianche

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 84 88

Esercizi - 3

3 Calcolare la probabilita di ottenere piu teste che croci lanciando 7volte una moneta truccata con probabilita di avere croce pari a 045

4 Calcolare la probabilita di avere almeno 3 sei lanciando 5 dadi a 12facce

5 Calcolare la probabilita di estrarre 20 euro da un sacco contenente 47monete da 1 centesimo e 53 da 2 euro estraendo (uniformemente) acaso 10 monete senza reinserirle

6 Un grammo di uranio emette mediamente 2152 particelle α ognimillisecondo Qual e con buona approssimazione la probabilita che ungrammo di uranio emetta al piu 2000 particelle α in un millisecondo

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 85 88

Esercizi - 4

7 Un uomo si risveglia in mezzo al deserto senza acqua Dopo ogniminuto ha una probabilita del 3 di perdere conoscenza per via dellecondizioni estreme Calcolare la probabilita che lrsquouomo perdaconoscenza dopo almeno due ore e la probabilita che lrsquouomo perdaconoscenza dopo esattamente un quarto drsquoora

8 Sia X una variabile aleatoria normale di parametri micro = 10 e σ = 36Calcola

1 P(X gt 5)2 P(4 le X le 16)3 P(X le 8)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 86 88

Esercizi - 5

9 Il numero di errori tipografici per pagina di una certa rivista segue unadistribuzione di Poisson Sapendo che mediamente sono presenti 02errori per pagina determinare la probabilita che una pagina contenga

1 nessun refuso2 piu refusi

10 Arrivi alla fermata dellrsquoautobus alle 1000 e sei certo che ne passerauno in un momento distribuito uniformemente tra le 1000 e le 1030

1 Qual e la probabilita che tu debba aspettare piu di 10 minuti2 Se alle 1015 lrsquoautobus non e ancora arrivato qual e la probabilita che

tu debba aspettare almeno altri 10 minuti

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 87 88

Esercizi - 6

11 Il signor Jones e convinto che il tempo di vita di una automobile (inmigliaia di chilometri percorse) sia una variabile aleatoria esponenzialedi parametro 120 Il signor Smith ha una macchina usata da vendereche ha percorso circa 10 000 chilometri

1 Se il signor Jones decide di comprarla che probabilita ha di farle farealmeno altri 20 000 chilometri prima che sia da buttare

2 Il modello assunto dal signor Jones e ragionevole

12 Sia X una variabile casuale binomiale di parametri n = 100 e p = 07

1 Tracciate la funzione di ripartizione di X2 Calcolate il primo quartile il quantile di ordine 09 e la mediana di X3 Calcolare la probabilita P(X le 60)4 Calcolare la probabilita P(X le 88)5 Trovare il piu piccolo valore x tale che P(X le x) ge 09

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 88 88

  • Lezione 1
    • Script in Python
    • Numpy
    • Esercizi
    • Pandas
    • Esercizi
      • Lezione 2
        • File csv
        • DataFrame
        • Accesso ai DataFrame
        • Frequenze
        • Esercizi
          • Lezione 3
            • Matplotlib
            • Grafici a Barre
            • Istogrammi
            • Cumulativa empirica
            • Boxplot
            • QQplot
            • Diagramma di Pareto
            • Esercizi
              • Lezione 4
                • Definizioni
                • Probabilitagrave condizionata
                • Indipendenza
                • Esercizi
                  • Lezione 5
                    • Variabili Aleatorie
                    • Funzione di Ripartizione
                    • Funzione di Densitagrave
                    • Valore Atteso
                    • Varianza
                    • Covarianza
                    • Esercizi
                      • Lezione 6
                        • Scipy - Variabili Discrete
                        • Scipy - Variabili continue
                        • Esercizi

Covarianza

Siano X Y due variabili aleatorie con valore atteso rispettivamenteE[X ] = microX e E[Y ] = microY La covarianza e definita come segue

Cov(X Y ) = E[(X minus microX )(Y minus microY )] = = E[XY ] minus microXmicroY

Proprieta

1 Cov(X Y ) = Cov(Y X )2 Cov(X X ) = Var(X )3 Sia a una costante allora

Cov(aX Y ) = aCov(X Y )

4 Sia Z una variabile aleatoria allora

Cov(X + Z Y ) = Cov(X Y ) + Cov(Z Y )

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 72 88

Esercizi - 1

1 Consideriamo una variabile aleatoria X che puo assumere i valori 12o 3 Se sappiamo che

fX (1) = 1

3 fX (2) = 3

7

1 Quanto vale fX (3)2 Disegnare il grafico di questa funzione di massa3 Disegnare il grafico della relativa funzione di ripartizione

2 Dimostrare che se X1 e X2 hanno la stessa distribuzione allora

Cov(X1 +X2X1 minusX2) = 0

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 73 88

Esercizi - 2

3 La funzione di ripartizione di X e definita come segue

FX (x) =

⎧⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎨⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎩

0 per x le 0

x2 per 0 le x lt 1

23 per 1 le x lt 2

1112 per 2 le x lt 3

1 per x ge 3

Se ne tracci il graficoQuanto vale P(X gt 12)Quanto vale P(2 le X le 4)Quanto vale P(X le 3)Quanto vale P(X = 1)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 74 88

Esercizi - 3

4 Un tipo di prodotti vengono classificati a seconda dei loro difetti edella fabbrica che li ha prodotti Sia X1 il numero (1 o 2) dellafabbrica e sia X2 il numero di difetti per pezzo (che possono essere da0 a 3) di un prodotto scelto a caso tra la totalita di quelli esistentiLa tabella seguente riporta la funzione di massa di probabilitacongiunta per queste due variabili aleatorie discrete Le righe siriferiscono alla variabile X1 mentre le colonne alla variabile X2

Trova le distribuzioni marginali di X1 e X2Calcola media e varianza di X2

0 1 2 31 18 116 316 182 116 116 18 14

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 75 88

Scipy

Scipy e un modulo che permette di utilizzare varie distribuzioni diprobabilita sia di tipo discreto che continuo

La sintassi generale e la seguente Scipystatsltnome distribuzionegt

rvs(size=z) restituisce un vettore di numeri casuali estrattisecondo la distribuzione di lunghezza z

pdf(x) restituisce il vettore della densita della distribuzionevalutata nei valori del vettore di input x (pmf per le discrete)

cdf(x) restituisce il vettore della funzione di ripartizione (ocumulativa) della distribuzione valutata nei valori del vettore di inputx

ppf(q) restituisce il vettore dei quantili della distribuzione valutatanei valori del vettore di input q

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 76 88

Variabili aleatorie discrete Binomiale

gtgtgt from scipystats import binom

gtgtgt rv = binom(n p)

rvrvs(x) restituisce un vettore di x numeri estratti secondo unadistribuzione Binomiale di parametri n p

rvpmf(x) restituisce la probabilita di ottenere esattamente x

successi in un esperimento dicotomico (01) ripetuto n volte con unaprobabilita di successo p (x puo essere un vettore)

rvcdf(q) restituisce il valore della funzione di ripartizione in q (qpuo essere un vettore)

rvppf(p) restituisce il valore del quantile di ordine p

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 77 88

Variabili aleatorie discrete Ipergeometrica

Supponiamo di avere M = 20 animali di cui n = 7 cani Se vogliamosapere la probabilita di trovare un dato numero di cani se scegliamoN = 12 dei 20 animali in maniera casuale possiamo usare una distribuzioneipergeometrica in questo modo

gtgtgt from scipystats import hypergeom

gtgtgt [M n N] = [20 7 12]

gtgtgt rv = hypergeom(M n N)

rvpmf(x) restituisce la probabilita di estrarre esattamente x cani

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 78 88

Variabili aleatorie discrete Geometrica

gtgtgt from scipystats import geom

gtgtgt rv = geom(p)

rvpmf(x) restituisce la probabilita di avere un successo dopoesattamente x insuccessi in una successione di esperimenti dicotomici(esito 01) con una probabilita di successo p (x puo essere un vettore)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 79 88

Variabili aleatorie discrete Poisson

La distribuzione di Poisson viene usata spesso come modello per il numerodi volte per cui un evento avviene in un dato intervallo di tempo (ospazio) Ad esempio si puo utilizzare per misurare il numero di chiamatericevute da un call center in una mattinata

gtgtgt from scipystats import poisson

gtgtgt mu = 2

gtgtgt rv = poisson(mu)

rvpmf(x) restituisce il seguente valore

f (x) = exp(minusmicro)microx

x

In questo caso x rappresenta il numero di eventi per cui si vuole calcolarela probabilita sapendo che in media ne accadono micro

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 80 88

Variabili aleatorie continue Uniforme

In Scipy la funzione uniforme e soltanto continua Questo significa chenella generazione di numeri casuali otterro dati di tipo float Possiamotuttavia simulare una variabile discreta estraendo la parte intera delrisultato ottenuto

gtgtgt from scipystats import uniform

gtgtgt rv = uniform()

Il comando uniform() crea una distribuzione uniforme nellrsquointervallo[01] Possiamo creare una distribuzione uniforme qualsiasi usandouniform(x y - x) per lrsquointervallo [x y]

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 81 88

Variabili aleatorie continue

norm(mu sigma) variabile Gaussiana (o Normale) di media micro edeviazione standard σ

expon(scale = 1 lambda) variabile Esponenziale di parametroλ

Altre distribuzioni (con relativa documentazione) disponibili suhttpsdocsscipyorgdocscipyreferencestatshtml

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 82 88

Esercizi - 1

1 Unrsquourna contiene 10 palline di cui 4 bianche e 6 nere Si eseguono 5estrazioni con reimmissione

1 Tracciare grafico della funzione massa di probabilita della variabilecasuale X = rdquonumero di palline bianche estratterdquo

2 Calcolare la probabilita di estrarre 2 palline bianche3 Calcolare la probabilita di estrarre al piu 2 palline bianche4 Calcolare la probabilita di estrarre almeno 2 palline bianche5 Qual e il numero minimo x tale che la probabilita di estrarre al piu x

palline bianche sia almeno 08

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 83 88

Esercizi - 2

2 Si eseguono 10 estrazioni senza reimmissione da unrsquourna

1 Tracciare il grafico della funzione massa di probabilita della variabilecasuale X = rdquonumero di palline bianche estratterdquo nei seguenti casi

1 lrsquourna contiene 100 palline di cui 20 bianche e le restanti nere2 lrsquourna contiene 100 palline di cui 2 bianche e le restanti nere

2 Tracciare il grafico della funzione massa di probabilita della variabilecasuale X nel caso dellrsquourna 1 se si eseguono 25 estrazioni

3 Consideriamo lrsquourna 1 e N = 10 estrazioni Si aumenti il numero totaleM di palline nellrsquourna mantenendo uguale a 02 la frazione di pallinebianche Per ciascun valore di M confrontare graficamente ladistribuzione di probabilita del numero di palline bianche estratte nelcaso di estrazioni con e senza reimmissione Provare con 20 40 e 200palline bianche

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 84 88

Esercizi - 3

3 Calcolare la probabilita di ottenere piu teste che croci lanciando 7volte una moneta truccata con probabilita di avere croce pari a 045

4 Calcolare la probabilita di avere almeno 3 sei lanciando 5 dadi a 12facce

5 Calcolare la probabilita di estrarre 20 euro da un sacco contenente 47monete da 1 centesimo e 53 da 2 euro estraendo (uniformemente) acaso 10 monete senza reinserirle

6 Un grammo di uranio emette mediamente 2152 particelle α ognimillisecondo Qual e con buona approssimazione la probabilita che ungrammo di uranio emetta al piu 2000 particelle α in un millisecondo

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 85 88

Esercizi - 4

7 Un uomo si risveglia in mezzo al deserto senza acqua Dopo ogniminuto ha una probabilita del 3 di perdere conoscenza per via dellecondizioni estreme Calcolare la probabilita che lrsquouomo perdaconoscenza dopo almeno due ore e la probabilita che lrsquouomo perdaconoscenza dopo esattamente un quarto drsquoora

8 Sia X una variabile aleatoria normale di parametri micro = 10 e σ = 36Calcola

1 P(X gt 5)2 P(4 le X le 16)3 P(X le 8)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 86 88

Esercizi - 5

9 Il numero di errori tipografici per pagina di una certa rivista segue unadistribuzione di Poisson Sapendo che mediamente sono presenti 02errori per pagina determinare la probabilita che una pagina contenga

1 nessun refuso2 piu refusi

10 Arrivi alla fermata dellrsquoautobus alle 1000 e sei certo che ne passerauno in un momento distribuito uniformemente tra le 1000 e le 1030

1 Qual e la probabilita che tu debba aspettare piu di 10 minuti2 Se alle 1015 lrsquoautobus non e ancora arrivato qual e la probabilita che

tu debba aspettare almeno altri 10 minuti

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 87 88

Esercizi - 6

11 Il signor Jones e convinto che il tempo di vita di una automobile (inmigliaia di chilometri percorse) sia una variabile aleatoria esponenzialedi parametro 120 Il signor Smith ha una macchina usata da vendereche ha percorso circa 10 000 chilometri

1 Se il signor Jones decide di comprarla che probabilita ha di farle farealmeno altri 20 000 chilometri prima che sia da buttare

2 Il modello assunto dal signor Jones e ragionevole

12 Sia X una variabile casuale binomiale di parametri n = 100 e p = 07

1 Tracciate la funzione di ripartizione di X2 Calcolate il primo quartile il quantile di ordine 09 e la mediana di X3 Calcolare la probabilita P(X le 60)4 Calcolare la probabilita P(X le 88)5 Trovare il piu piccolo valore x tale che P(X le x) ge 09

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 88 88

  • Lezione 1
    • Script in Python
    • Numpy
    • Esercizi
    • Pandas
    • Esercizi
      • Lezione 2
        • File csv
        • DataFrame
        • Accesso ai DataFrame
        • Frequenze
        • Esercizi
          • Lezione 3
            • Matplotlib
            • Grafici a Barre
            • Istogrammi
            • Cumulativa empirica
            • Boxplot
            • QQplot
            • Diagramma di Pareto
            • Esercizi
              • Lezione 4
                • Definizioni
                • Probabilitagrave condizionata
                • Indipendenza
                • Esercizi
                  • Lezione 5
                    • Variabili Aleatorie
                    • Funzione di Ripartizione
                    • Funzione di Densitagrave
                    • Valore Atteso
                    • Varianza
                    • Covarianza
                    • Esercizi
                      • Lezione 6
                        • Scipy - Variabili Discrete
                        • Scipy - Variabili continue
                        • Esercizi

Esercizi - 1

1 Consideriamo una variabile aleatoria X che puo assumere i valori 12o 3 Se sappiamo che

fX (1) = 1

3 fX (2) = 3

7

1 Quanto vale fX (3)2 Disegnare il grafico di questa funzione di massa3 Disegnare il grafico della relativa funzione di ripartizione

2 Dimostrare che se X1 e X2 hanno la stessa distribuzione allora

Cov(X1 +X2X1 minusX2) = 0

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 73 88

Esercizi - 2

3 La funzione di ripartizione di X e definita come segue

FX (x) =

⎧⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎨⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎩

0 per x le 0

x2 per 0 le x lt 1

23 per 1 le x lt 2

1112 per 2 le x lt 3

1 per x ge 3

Se ne tracci il graficoQuanto vale P(X gt 12)Quanto vale P(2 le X le 4)Quanto vale P(X le 3)Quanto vale P(X = 1)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 74 88

Esercizi - 3

4 Un tipo di prodotti vengono classificati a seconda dei loro difetti edella fabbrica che li ha prodotti Sia X1 il numero (1 o 2) dellafabbrica e sia X2 il numero di difetti per pezzo (che possono essere da0 a 3) di un prodotto scelto a caso tra la totalita di quelli esistentiLa tabella seguente riporta la funzione di massa di probabilitacongiunta per queste due variabili aleatorie discrete Le righe siriferiscono alla variabile X1 mentre le colonne alla variabile X2

Trova le distribuzioni marginali di X1 e X2Calcola media e varianza di X2

0 1 2 31 18 116 316 182 116 116 18 14

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 75 88

Scipy

Scipy e un modulo che permette di utilizzare varie distribuzioni diprobabilita sia di tipo discreto che continuo

La sintassi generale e la seguente Scipystatsltnome distribuzionegt

rvs(size=z) restituisce un vettore di numeri casuali estrattisecondo la distribuzione di lunghezza z

pdf(x) restituisce il vettore della densita della distribuzionevalutata nei valori del vettore di input x (pmf per le discrete)

cdf(x) restituisce il vettore della funzione di ripartizione (ocumulativa) della distribuzione valutata nei valori del vettore di inputx

ppf(q) restituisce il vettore dei quantili della distribuzione valutatanei valori del vettore di input q

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 76 88

Variabili aleatorie discrete Binomiale

gtgtgt from scipystats import binom

gtgtgt rv = binom(n p)

rvrvs(x) restituisce un vettore di x numeri estratti secondo unadistribuzione Binomiale di parametri n p

rvpmf(x) restituisce la probabilita di ottenere esattamente x

successi in un esperimento dicotomico (01) ripetuto n volte con unaprobabilita di successo p (x puo essere un vettore)

rvcdf(q) restituisce il valore della funzione di ripartizione in q (qpuo essere un vettore)

rvppf(p) restituisce il valore del quantile di ordine p

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 77 88

Variabili aleatorie discrete Ipergeometrica

Supponiamo di avere M = 20 animali di cui n = 7 cani Se vogliamosapere la probabilita di trovare un dato numero di cani se scegliamoN = 12 dei 20 animali in maniera casuale possiamo usare una distribuzioneipergeometrica in questo modo

gtgtgt from scipystats import hypergeom

gtgtgt [M n N] = [20 7 12]

gtgtgt rv = hypergeom(M n N)

rvpmf(x) restituisce la probabilita di estrarre esattamente x cani

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 78 88

Variabili aleatorie discrete Geometrica

gtgtgt from scipystats import geom

gtgtgt rv = geom(p)

rvpmf(x) restituisce la probabilita di avere un successo dopoesattamente x insuccessi in una successione di esperimenti dicotomici(esito 01) con una probabilita di successo p (x puo essere un vettore)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 79 88

Variabili aleatorie discrete Poisson

La distribuzione di Poisson viene usata spesso come modello per il numerodi volte per cui un evento avviene in un dato intervallo di tempo (ospazio) Ad esempio si puo utilizzare per misurare il numero di chiamatericevute da un call center in una mattinata

gtgtgt from scipystats import poisson

gtgtgt mu = 2

gtgtgt rv = poisson(mu)

rvpmf(x) restituisce il seguente valore

f (x) = exp(minusmicro)microx

x

In questo caso x rappresenta il numero di eventi per cui si vuole calcolarela probabilita sapendo che in media ne accadono micro

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 80 88

Variabili aleatorie continue Uniforme

In Scipy la funzione uniforme e soltanto continua Questo significa chenella generazione di numeri casuali otterro dati di tipo float Possiamotuttavia simulare una variabile discreta estraendo la parte intera delrisultato ottenuto

gtgtgt from scipystats import uniform

gtgtgt rv = uniform()

Il comando uniform() crea una distribuzione uniforme nellrsquointervallo[01] Possiamo creare una distribuzione uniforme qualsiasi usandouniform(x y - x) per lrsquointervallo [x y]

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 81 88

Variabili aleatorie continue

norm(mu sigma) variabile Gaussiana (o Normale) di media micro edeviazione standard σ

expon(scale = 1 lambda) variabile Esponenziale di parametroλ

Altre distribuzioni (con relativa documentazione) disponibili suhttpsdocsscipyorgdocscipyreferencestatshtml

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 82 88

Esercizi - 1

1 Unrsquourna contiene 10 palline di cui 4 bianche e 6 nere Si eseguono 5estrazioni con reimmissione

1 Tracciare grafico della funzione massa di probabilita della variabilecasuale X = rdquonumero di palline bianche estratterdquo

2 Calcolare la probabilita di estrarre 2 palline bianche3 Calcolare la probabilita di estrarre al piu 2 palline bianche4 Calcolare la probabilita di estrarre almeno 2 palline bianche5 Qual e il numero minimo x tale che la probabilita di estrarre al piu x

palline bianche sia almeno 08

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 83 88

Esercizi - 2

2 Si eseguono 10 estrazioni senza reimmissione da unrsquourna

1 Tracciare il grafico della funzione massa di probabilita della variabilecasuale X = rdquonumero di palline bianche estratterdquo nei seguenti casi

1 lrsquourna contiene 100 palline di cui 20 bianche e le restanti nere2 lrsquourna contiene 100 palline di cui 2 bianche e le restanti nere

2 Tracciare il grafico della funzione massa di probabilita della variabilecasuale X nel caso dellrsquourna 1 se si eseguono 25 estrazioni

3 Consideriamo lrsquourna 1 e N = 10 estrazioni Si aumenti il numero totaleM di palline nellrsquourna mantenendo uguale a 02 la frazione di pallinebianche Per ciascun valore di M confrontare graficamente ladistribuzione di probabilita del numero di palline bianche estratte nelcaso di estrazioni con e senza reimmissione Provare con 20 40 e 200palline bianche

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 84 88

Esercizi - 3

3 Calcolare la probabilita di ottenere piu teste che croci lanciando 7volte una moneta truccata con probabilita di avere croce pari a 045

4 Calcolare la probabilita di avere almeno 3 sei lanciando 5 dadi a 12facce

5 Calcolare la probabilita di estrarre 20 euro da un sacco contenente 47monete da 1 centesimo e 53 da 2 euro estraendo (uniformemente) acaso 10 monete senza reinserirle

6 Un grammo di uranio emette mediamente 2152 particelle α ognimillisecondo Qual e con buona approssimazione la probabilita che ungrammo di uranio emetta al piu 2000 particelle α in un millisecondo

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 85 88

Esercizi - 4

7 Un uomo si risveglia in mezzo al deserto senza acqua Dopo ogniminuto ha una probabilita del 3 di perdere conoscenza per via dellecondizioni estreme Calcolare la probabilita che lrsquouomo perdaconoscenza dopo almeno due ore e la probabilita che lrsquouomo perdaconoscenza dopo esattamente un quarto drsquoora

8 Sia X una variabile aleatoria normale di parametri micro = 10 e σ = 36Calcola

1 P(X gt 5)2 P(4 le X le 16)3 P(X le 8)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 86 88

Esercizi - 5

9 Il numero di errori tipografici per pagina di una certa rivista segue unadistribuzione di Poisson Sapendo che mediamente sono presenti 02errori per pagina determinare la probabilita che una pagina contenga

1 nessun refuso2 piu refusi

10 Arrivi alla fermata dellrsquoautobus alle 1000 e sei certo che ne passerauno in un momento distribuito uniformemente tra le 1000 e le 1030

1 Qual e la probabilita che tu debba aspettare piu di 10 minuti2 Se alle 1015 lrsquoautobus non e ancora arrivato qual e la probabilita che

tu debba aspettare almeno altri 10 minuti

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 87 88

Esercizi - 6

11 Il signor Jones e convinto che il tempo di vita di una automobile (inmigliaia di chilometri percorse) sia una variabile aleatoria esponenzialedi parametro 120 Il signor Smith ha una macchina usata da vendereche ha percorso circa 10 000 chilometri

1 Se il signor Jones decide di comprarla che probabilita ha di farle farealmeno altri 20 000 chilometri prima che sia da buttare

2 Il modello assunto dal signor Jones e ragionevole

12 Sia X una variabile casuale binomiale di parametri n = 100 e p = 07

1 Tracciate la funzione di ripartizione di X2 Calcolate il primo quartile il quantile di ordine 09 e la mediana di X3 Calcolare la probabilita P(X le 60)4 Calcolare la probabilita P(X le 88)5 Trovare il piu piccolo valore x tale che P(X le x) ge 09

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 88 88

  • Lezione 1
    • Script in Python
    • Numpy
    • Esercizi
    • Pandas
    • Esercizi
      • Lezione 2
        • File csv
        • DataFrame
        • Accesso ai DataFrame
        • Frequenze
        • Esercizi
          • Lezione 3
            • Matplotlib
            • Grafici a Barre
            • Istogrammi
            • Cumulativa empirica
            • Boxplot
            • QQplot
            • Diagramma di Pareto
            • Esercizi
              • Lezione 4
                • Definizioni
                • Probabilitagrave condizionata
                • Indipendenza
                • Esercizi
                  • Lezione 5
                    • Variabili Aleatorie
                    • Funzione di Ripartizione
                    • Funzione di Densitagrave
                    • Valore Atteso
                    • Varianza
                    • Covarianza
                    • Esercizi
                      • Lezione 6
                        • Scipy - Variabili Discrete
                        • Scipy - Variabili continue
                        • Esercizi

Esercizi - 2

3 La funzione di ripartizione di X e definita come segue

FX (x) =

⎧⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎨⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎩

0 per x le 0

x2 per 0 le x lt 1

23 per 1 le x lt 2

1112 per 2 le x lt 3

1 per x ge 3

Se ne tracci il graficoQuanto vale P(X gt 12)Quanto vale P(2 le X le 4)Quanto vale P(X le 3)Quanto vale P(X = 1)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 74 88

Esercizi - 3

4 Un tipo di prodotti vengono classificati a seconda dei loro difetti edella fabbrica che li ha prodotti Sia X1 il numero (1 o 2) dellafabbrica e sia X2 il numero di difetti per pezzo (che possono essere da0 a 3) di un prodotto scelto a caso tra la totalita di quelli esistentiLa tabella seguente riporta la funzione di massa di probabilitacongiunta per queste due variabili aleatorie discrete Le righe siriferiscono alla variabile X1 mentre le colonne alla variabile X2

Trova le distribuzioni marginali di X1 e X2Calcola media e varianza di X2

0 1 2 31 18 116 316 182 116 116 18 14

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 75 88

Scipy

Scipy e un modulo che permette di utilizzare varie distribuzioni diprobabilita sia di tipo discreto che continuo

La sintassi generale e la seguente Scipystatsltnome distribuzionegt

rvs(size=z) restituisce un vettore di numeri casuali estrattisecondo la distribuzione di lunghezza z

pdf(x) restituisce il vettore della densita della distribuzionevalutata nei valori del vettore di input x (pmf per le discrete)

cdf(x) restituisce il vettore della funzione di ripartizione (ocumulativa) della distribuzione valutata nei valori del vettore di inputx

ppf(q) restituisce il vettore dei quantili della distribuzione valutatanei valori del vettore di input q

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 76 88

Variabili aleatorie discrete Binomiale

gtgtgt from scipystats import binom

gtgtgt rv = binom(n p)

rvrvs(x) restituisce un vettore di x numeri estratti secondo unadistribuzione Binomiale di parametri n p

rvpmf(x) restituisce la probabilita di ottenere esattamente x

successi in un esperimento dicotomico (01) ripetuto n volte con unaprobabilita di successo p (x puo essere un vettore)

rvcdf(q) restituisce il valore della funzione di ripartizione in q (qpuo essere un vettore)

rvppf(p) restituisce il valore del quantile di ordine p

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 77 88

Variabili aleatorie discrete Ipergeometrica

Supponiamo di avere M = 20 animali di cui n = 7 cani Se vogliamosapere la probabilita di trovare un dato numero di cani se scegliamoN = 12 dei 20 animali in maniera casuale possiamo usare una distribuzioneipergeometrica in questo modo

gtgtgt from scipystats import hypergeom

gtgtgt [M n N] = [20 7 12]

gtgtgt rv = hypergeom(M n N)

rvpmf(x) restituisce la probabilita di estrarre esattamente x cani

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 78 88

Variabili aleatorie discrete Geometrica

gtgtgt from scipystats import geom

gtgtgt rv = geom(p)

rvpmf(x) restituisce la probabilita di avere un successo dopoesattamente x insuccessi in una successione di esperimenti dicotomici(esito 01) con una probabilita di successo p (x puo essere un vettore)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 79 88

Variabili aleatorie discrete Poisson

La distribuzione di Poisson viene usata spesso come modello per il numerodi volte per cui un evento avviene in un dato intervallo di tempo (ospazio) Ad esempio si puo utilizzare per misurare il numero di chiamatericevute da un call center in una mattinata

gtgtgt from scipystats import poisson

gtgtgt mu = 2

gtgtgt rv = poisson(mu)

rvpmf(x) restituisce il seguente valore

f (x) = exp(minusmicro)microx

x

In questo caso x rappresenta il numero di eventi per cui si vuole calcolarela probabilita sapendo che in media ne accadono micro

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 80 88

Variabili aleatorie continue Uniforme

In Scipy la funzione uniforme e soltanto continua Questo significa chenella generazione di numeri casuali otterro dati di tipo float Possiamotuttavia simulare una variabile discreta estraendo la parte intera delrisultato ottenuto

gtgtgt from scipystats import uniform

gtgtgt rv = uniform()

Il comando uniform() crea una distribuzione uniforme nellrsquointervallo[01] Possiamo creare una distribuzione uniforme qualsiasi usandouniform(x y - x) per lrsquointervallo [x y]

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 81 88

Variabili aleatorie continue

norm(mu sigma) variabile Gaussiana (o Normale) di media micro edeviazione standard σ

expon(scale = 1 lambda) variabile Esponenziale di parametroλ

Altre distribuzioni (con relativa documentazione) disponibili suhttpsdocsscipyorgdocscipyreferencestatshtml

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 82 88

Esercizi - 1

1 Unrsquourna contiene 10 palline di cui 4 bianche e 6 nere Si eseguono 5estrazioni con reimmissione

1 Tracciare grafico della funzione massa di probabilita della variabilecasuale X = rdquonumero di palline bianche estratterdquo

2 Calcolare la probabilita di estrarre 2 palline bianche3 Calcolare la probabilita di estrarre al piu 2 palline bianche4 Calcolare la probabilita di estrarre almeno 2 palline bianche5 Qual e il numero minimo x tale che la probabilita di estrarre al piu x

palline bianche sia almeno 08

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 83 88

Esercizi - 2

2 Si eseguono 10 estrazioni senza reimmissione da unrsquourna

1 Tracciare il grafico della funzione massa di probabilita della variabilecasuale X = rdquonumero di palline bianche estratterdquo nei seguenti casi

1 lrsquourna contiene 100 palline di cui 20 bianche e le restanti nere2 lrsquourna contiene 100 palline di cui 2 bianche e le restanti nere

2 Tracciare il grafico della funzione massa di probabilita della variabilecasuale X nel caso dellrsquourna 1 se si eseguono 25 estrazioni

3 Consideriamo lrsquourna 1 e N = 10 estrazioni Si aumenti il numero totaleM di palline nellrsquourna mantenendo uguale a 02 la frazione di pallinebianche Per ciascun valore di M confrontare graficamente ladistribuzione di probabilita del numero di palline bianche estratte nelcaso di estrazioni con e senza reimmissione Provare con 20 40 e 200palline bianche

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 84 88

Esercizi - 3

3 Calcolare la probabilita di ottenere piu teste che croci lanciando 7volte una moneta truccata con probabilita di avere croce pari a 045

4 Calcolare la probabilita di avere almeno 3 sei lanciando 5 dadi a 12facce

5 Calcolare la probabilita di estrarre 20 euro da un sacco contenente 47monete da 1 centesimo e 53 da 2 euro estraendo (uniformemente) acaso 10 monete senza reinserirle

6 Un grammo di uranio emette mediamente 2152 particelle α ognimillisecondo Qual e con buona approssimazione la probabilita che ungrammo di uranio emetta al piu 2000 particelle α in un millisecondo

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 85 88

Esercizi - 4

7 Un uomo si risveglia in mezzo al deserto senza acqua Dopo ogniminuto ha una probabilita del 3 di perdere conoscenza per via dellecondizioni estreme Calcolare la probabilita che lrsquouomo perdaconoscenza dopo almeno due ore e la probabilita che lrsquouomo perdaconoscenza dopo esattamente un quarto drsquoora

8 Sia X una variabile aleatoria normale di parametri micro = 10 e σ = 36Calcola

1 P(X gt 5)2 P(4 le X le 16)3 P(X le 8)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 86 88

Esercizi - 5

9 Il numero di errori tipografici per pagina di una certa rivista segue unadistribuzione di Poisson Sapendo che mediamente sono presenti 02errori per pagina determinare la probabilita che una pagina contenga

1 nessun refuso2 piu refusi

10 Arrivi alla fermata dellrsquoautobus alle 1000 e sei certo che ne passerauno in un momento distribuito uniformemente tra le 1000 e le 1030

1 Qual e la probabilita che tu debba aspettare piu di 10 minuti2 Se alle 1015 lrsquoautobus non e ancora arrivato qual e la probabilita che

tu debba aspettare almeno altri 10 minuti

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 87 88

Esercizi - 6

11 Il signor Jones e convinto che il tempo di vita di una automobile (inmigliaia di chilometri percorse) sia una variabile aleatoria esponenzialedi parametro 120 Il signor Smith ha una macchina usata da vendereche ha percorso circa 10 000 chilometri

1 Se il signor Jones decide di comprarla che probabilita ha di farle farealmeno altri 20 000 chilometri prima che sia da buttare

2 Il modello assunto dal signor Jones e ragionevole

12 Sia X una variabile casuale binomiale di parametri n = 100 e p = 07

1 Tracciate la funzione di ripartizione di X2 Calcolate il primo quartile il quantile di ordine 09 e la mediana di X3 Calcolare la probabilita P(X le 60)4 Calcolare la probabilita P(X le 88)5 Trovare il piu piccolo valore x tale che P(X le x) ge 09

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 88 88

  • Lezione 1
    • Script in Python
    • Numpy
    • Esercizi
    • Pandas
    • Esercizi
      • Lezione 2
        • File csv
        • DataFrame
        • Accesso ai DataFrame
        • Frequenze
        • Esercizi
          • Lezione 3
            • Matplotlib
            • Grafici a Barre
            • Istogrammi
            • Cumulativa empirica
            • Boxplot
            • QQplot
            • Diagramma di Pareto
            • Esercizi
              • Lezione 4
                • Definizioni
                • Probabilitagrave condizionata
                • Indipendenza
                • Esercizi
                  • Lezione 5
                    • Variabili Aleatorie
                    • Funzione di Ripartizione
                    • Funzione di Densitagrave
                    • Valore Atteso
                    • Varianza
                    • Covarianza
                    • Esercizi
                      • Lezione 6
                        • Scipy - Variabili Discrete
                        • Scipy - Variabili continue
                        • Esercizi

Esercizi - 3

4 Un tipo di prodotti vengono classificati a seconda dei loro difetti edella fabbrica che li ha prodotti Sia X1 il numero (1 o 2) dellafabbrica e sia X2 il numero di difetti per pezzo (che possono essere da0 a 3) di un prodotto scelto a caso tra la totalita di quelli esistentiLa tabella seguente riporta la funzione di massa di probabilitacongiunta per queste due variabili aleatorie discrete Le righe siriferiscono alla variabile X1 mentre le colonne alla variabile X2

Trova le distribuzioni marginali di X1 e X2Calcola media e varianza di X2

0 1 2 31 18 116 316 182 116 116 18 14

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 75 88

Scipy

Scipy e un modulo che permette di utilizzare varie distribuzioni diprobabilita sia di tipo discreto che continuo

La sintassi generale e la seguente Scipystatsltnome distribuzionegt

rvs(size=z) restituisce un vettore di numeri casuali estrattisecondo la distribuzione di lunghezza z

pdf(x) restituisce il vettore della densita della distribuzionevalutata nei valori del vettore di input x (pmf per le discrete)

cdf(x) restituisce il vettore della funzione di ripartizione (ocumulativa) della distribuzione valutata nei valori del vettore di inputx

ppf(q) restituisce il vettore dei quantili della distribuzione valutatanei valori del vettore di input q

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 76 88

Variabili aleatorie discrete Binomiale

gtgtgt from scipystats import binom

gtgtgt rv = binom(n p)

rvrvs(x) restituisce un vettore di x numeri estratti secondo unadistribuzione Binomiale di parametri n p

rvpmf(x) restituisce la probabilita di ottenere esattamente x

successi in un esperimento dicotomico (01) ripetuto n volte con unaprobabilita di successo p (x puo essere un vettore)

rvcdf(q) restituisce il valore della funzione di ripartizione in q (qpuo essere un vettore)

rvppf(p) restituisce il valore del quantile di ordine p

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 77 88

Variabili aleatorie discrete Ipergeometrica

Supponiamo di avere M = 20 animali di cui n = 7 cani Se vogliamosapere la probabilita di trovare un dato numero di cani se scegliamoN = 12 dei 20 animali in maniera casuale possiamo usare una distribuzioneipergeometrica in questo modo

gtgtgt from scipystats import hypergeom

gtgtgt [M n N] = [20 7 12]

gtgtgt rv = hypergeom(M n N)

rvpmf(x) restituisce la probabilita di estrarre esattamente x cani

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 78 88

Variabili aleatorie discrete Geometrica

gtgtgt from scipystats import geom

gtgtgt rv = geom(p)

rvpmf(x) restituisce la probabilita di avere un successo dopoesattamente x insuccessi in una successione di esperimenti dicotomici(esito 01) con una probabilita di successo p (x puo essere un vettore)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 79 88

Variabili aleatorie discrete Poisson

La distribuzione di Poisson viene usata spesso come modello per il numerodi volte per cui un evento avviene in un dato intervallo di tempo (ospazio) Ad esempio si puo utilizzare per misurare il numero di chiamatericevute da un call center in una mattinata

gtgtgt from scipystats import poisson

gtgtgt mu = 2

gtgtgt rv = poisson(mu)

rvpmf(x) restituisce il seguente valore

f (x) = exp(minusmicro)microx

x

In questo caso x rappresenta il numero di eventi per cui si vuole calcolarela probabilita sapendo che in media ne accadono micro

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 80 88

Variabili aleatorie continue Uniforme

In Scipy la funzione uniforme e soltanto continua Questo significa chenella generazione di numeri casuali otterro dati di tipo float Possiamotuttavia simulare una variabile discreta estraendo la parte intera delrisultato ottenuto

gtgtgt from scipystats import uniform

gtgtgt rv = uniform()

Il comando uniform() crea una distribuzione uniforme nellrsquointervallo[01] Possiamo creare una distribuzione uniforme qualsiasi usandouniform(x y - x) per lrsquointervallo [x y]

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 81 88

Variabili aleatorie continue

norm(mu sigma) variabile Gaussiana (o Normale) di media micro edeviazione standard σ

expon(scale = 1 lambda) variabile Esponenziale di parametroλ

Altre distribuzioni (con relativa documentazione) disponibili suhttpsdocsscipyorgdocscipyreferencestatshtml

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 82 88

Esercizi - 1

1 Unrsquourna contiene 10 palline di cui 4 bianche e 6 nere Si eseguono 5estrazioni con reimmissione

1 Tracciare grafico della funzione massa di probabilita della variabilecasuale X = rdquonumero di palline bianche estratterdquo

2 Calcolare la probabilita di estrarre 2 palline bianche3 Calcolare la probabilita di estrarre al piu 2 palline bianche4 Calcolare la probabilita di estrarre almeno 2 palline bianche5 Qual e il numero minimo x tale che la probabilita di estrarre al piu x

palline bianche sia almeno 08

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 83 88

Esercizi - 2

2 Si eseguono 10 estrazioni senza reimmissione da unrsquourna

1 Tracciare il grafico della funzione massa di probabilita della variabilecasuale X = rdquonumero di palline bianche estratterdquo nei seguenti casi

1 lrsquourna contiene 100 palline di cui 20 bianche e le restanti nere2 lrsquourna contiene 100 palline di cui 2 bianche e le restanti nere

2 Tracciare il grafico della funzione massa di probabilita della variabilecasuale X nel caso dellrsquourna 1 se si eseguono 25 estrazioni

3 Consideriamo lrsquourna 1 e N = 10 estrazioni Si aumenti il numero totaleM di palline nellrsquourna mantenendo uguale a 02 la frazione di pallinebianche Per ciascun valore di M confrontare graficamente ladistribuzione di probabilita del numero di palline bianche estratte nelcaso di estrazioni con e senza reimmissione Provare con 20 40 e 200palline bianche

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 84 88

Esercizi - 3

3 Calcolare la probabilita di ottenere piu teste che croci lanciando 7volte una moneta truccata con probabilita di avere croce pari a 045

4 Calcolare la probabilita di avere almeno 3 sei lanciando 5 dadi a 12facce

5 Calcolare la probabilita di estrarre 20 euro da un sacco contenente 47monete da 1 centesimo e 53 da 2 euro estraendo (uniformemente) acaso 10 monete senza reinserirle

6 Un grammo di uranio emette mediamente 2152 particelle α ognimillisecondo Qual e con buona approssimazione la probabilita che ungrammo di uranio emetta al piu 2000 particelle α in un millisecondo

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 85 88

Esercizi - 4

7 Un uomo si risveglia in mezzo al deserto senza acqua Dopo ogniminuto ha una probabilita del 3 di perdere conoscenza per via dellecondizioni estreme Calcolare la probabilita che lrsquouomo perdaconoscenza dopo almeno due ore e la probabilita che lrsquouomo perdaconoscenza dopo esattamente un quarto drsquoora

8 Sia X una variabile aleatoria normale di parametri micro = 10 e σ = 36Calcola

1 P(X gt 5)2 P(4 le X le 16)3 P(X le 8)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 86 88

Esercizi - 5

9 Il numero di errori tipografici per pagina di una certa rivista segue unadistribuzione di Poisson Sapendo che mediamente sono presenti 02errori per pagina determinare la probabilita che una pagina contenga

1 nessun refuso2 piu refusi

10 Arrivi alla fermata dellrsquoautobus alle 1000 e sei certo che ne passerauno in un momento distribuito uniformemente tra le 1000 e le 1030

1 Qual e la probabilita che tu debba aspettare piu di 10 minuti2 Se alle 1015 lrsquoautobus non e ancora arrivato qual e la probabilita che

tu debba aspettare almeno altri 10 minuti

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 87 88

Esercizi - 6

11 Il signor Jones e convinto che il tempo di vita di una automobile (inmigliaia di chilometri percorse) sia una variabile aleatoria esponenzialedi parametro 120 Il signor Smith ha una macchina usata da vendereche ha percorso circa 10 000 chilometri

1 Se il signor Jones decide di comprarla che probabilita ha di farle farealmeno altri 20 000 chilometri prima che sia da buttare

2 Il modello assunto dal signor Jones e ragionevole

12 Sia X una variabile casuale binomiale di parametri n = 100 e p = 07

1 Tracciate la funzione di ripartizione di X2 Calcolate il primo quartile il quantile di ordine 09 e la mediana di X3 Calcolare la probabilita P(X le 60)4 Calcolare la probabilita P(X le 88)5 Trovare il piu piccolo valore x tale che P(X le x) ge 09

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 88 88

  • Lezione 1
    • Script in Python
    • Numpy
    • Esercizi
    • Pandas
    • Esercizi
      • Lezione 2
        • File csv
        • DataFrame
        • Accesso ai DataFrame
        • Frequenze
        • Esercizi
          • Lezione 3
            • Matplotlib
            • Grafici a Barre
            • Istogrammi
            • Cumulativa empirica
            • Boxplot
            • QQplot
            • Diagramma di Pareto
            • Esercizi
              • Lezione 4
                • Definizioni
                • Probabilitagrave condizionata
                • Indipendenza
                • Esercizi
                  • Lezione 5
                    • Variabili Aleatorie
                    • Funzione di Ripartizione
                    • Funzione di Densitagrave
                    • Valore Atteso
                    • Varianza
                    • Covarianza
                    • Esercizi
                      • Lezione 6
                        • Scipy - Variabili Discrete
                        • Scipy - Variabili continue
                        • Esercizi

Scipy

Scipy e un modulo che permette di utilizzare varie distribuzioni diprobabilita sia di tipo discreto che continuo

La sintassi generale e la seguente Scipystatsltnome distribuzionegt

rvs(size=z) restituisce un vettore di numeri casuali estrattisecondo la distribuzione di lunghezza z

pdf(x) restituisce il vettore della densita della distribuzionevalutata nei valori del vettore di input x (pmf per le discrete)

cdf(x) restituisce il vettore della funzione di ripartizione (ocumulativa) della distribuzione valutata nei valori del vettore di inputx

ppf(q) restituisce il vettore dei quantili della distribuzione valutatanei valori del vettore di input q

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 76 88

Variabili aleatorie discrete Binomiale

gtgtgt from scipystats import binom

gtgtgt rv = binom(n p)

rvrvs(x) restituisce un vettore di x numeri estratti secondo unadistribuzione Binomiale di parametri n p

rvpmf(x) restituisce la probabilita di ottenere esattamente x

successi in un esperimento dicotomico (01) ripetuto n volte con unaprobabilita di successo p (x puo essere un vettore)

rvcdf(q) restituisce il valore della funzione di ripartizione in q (qpuo essere un vettore)

rvppf(p) restituisce il valore del quantile di ordine p

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 77 88

Variabili aleatorie discrete Ipergeometrica

Supponiamo di avere M = 20 animali di cui n = 7 cani Se vogliamosapere la probabilita di trovare un dato numero di cani se scegliamoN = 12 dei 20 animali in maniera casuale possiamo usare una distribuzioneipergeometrica in questo modo

gtgtgt from scipystats import hypergeom

gtgtgt [M n N] = [20 7 12]

gtgtgt rv = hypergeom(M n N)

rvpmf(x) restituisce la probabilita di estrarre esattamente x cani

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 78 88

Variabili aleatorie discrete Geometrica

gtgtgt from scipystats import geom

gtgtgt rv = geom(p)

rvpmf(x) restituisce la probabilita di avere un successo dopoesattamente x insuccessi in una successione di esperimenti dicotomici(esito 01) con una probabilita di successo p (x puo essere un vettore)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 79 88

Variabili aleatorie discrete Poisson

La distribuzione di Poisson viene usata spesso come modello per il numerodi volte per cui un evento avviene in un dato intervallo di tempo (ospazio) Ad esempio si puo utilizzare per misurare il numero di chiamatericevute da un call center in una mattinata

gtgtgt from scipystats import poisson

gtgtgt mu = 2

gtgtgt rv = poisson(mu)

rvpmf(x) restituisce il seguente valore

f (x) = exp(minusmicro)microx

x

In questo caso x rappresenta il numero di eventi per cui si vuole calcolarela probabilita sapendo che in media ne accadono micro

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 80 88

Variabili aleatorie continue Uniforme

In Scipy la funzione uniforme e soltanto continua Questo significa chenella generazione di numeri casuali otterro dati di tipo float Possiamotuttavia simulare una variabile discreta estraendo la parte intera delrisultato ottenuto

gtgtgt from scipystats import uniform

gtgtgt rv = uniform()

Il comando uniform() crea una distribuzione uniforme nellrsquointervallo[01] Possiamo creare una distribuzione uniforme qualsiasi usandouniform(x y - x) per lrsquointervallo [x y]

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 81 88

Variabili aleatorie continue

norm(mu sigma) variabile Gaussiana (o Normale) di media micro edeviazione standard σ

expon(scale = 1 lambda) variabile Esponenziale di parametroλ

Altre distribuzioni (con relativa documentazione) disponibili suhttpsdocsscipyorgdocscipyreferencestatshtml

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 82 88

Esercizi - 1

1 Unrsquourna contiene 10 palline di cui 4 bianche e 6 nere Si eseguono 5estrazioni con reimmissione

1 Tracciare grafico della funzione massa di probabilita della variabilecasuale X = rdquonumero di palline bianche estratterdquo

2 Calcolare la probabilita di estrarre 2 palline bianche3 Calcolare la probabilita di estrarre al piu 2 palline bianche4 Calcolare la probabilita di estrarre almeno 2 palline bianche5 Qual e il numero minimo x tale che la probabilita di estrarre al piu x

palline bianche sia almeno 08

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 83 88

Esercizi - 2

2 Si eseguono 10 estrazioni senza reimmissione da unrsquourna

1 Tracciare il grafico della funzione massa di probabilita della variabilecasuale X = rdquonumero di palline bianche estratterdquo nei seguenti casi

1 lrsquourna contiene 100 palline di cui 20 bianche e le restanti nere2 lrsquourna contiene 100 palline di cui 2 bianche e le restanti nere

2 Tracciare il grafico della funzione massa di probabilita della variabilecasuale X nel caso dellrsquourna 1 se si eseguono 25 estrazioni

3 Consideriamo lrsquourna 1 e N = 10 estrazioni Si aumenti il numero totaleM di palline nellrsquourna mantenendo uguale a 02 la frazione di pallinebianche Per ciascun valore di M confrontare graficamente ladistribuzione di probabilita del numero di palline bianche estratte nelcaso di estrazioni con e senza reimmissione Provare con 20 40 e 200palline bianche

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 84 88

Esercizi - 3

3 Calcolare la probabilita di ottenere piu teste che croci lanciando 7volte una moneta truccata con probabilita di avere croce pari a 045

4 Calcolare la probabilita di avere almeno 3 sei lanciando 5 dadi a 12facce

5 Calcolare la probabilita di estrarre 20 euro da un sacco contenente 47monete da 1 centesimo e 53 da 2 euro estraendo (uniformemente) acaso 10 monete senza reinserirle

6 Un grammo di uranio emette mediamente 2152 particelle α ognimillisecondo Qual e con buona approssimazione la probabilita che ungrammo di uranio emetta al piu 2000 particelle α in un millisecondo

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 85 88

Esercizi - 4

7 Un uomo si risveglia in mezzo al deserto senza acqua Dopo ogniminuto ha una probabilita del 3 di perdere conoscenza per via dellecondizioni estreme Calcolare la probabilita che lrsquouomo perdaconoscenza dopo almeno due ore e la probabilita che lrsquouomo perdaconoscenza dopo esattamente un quarto drsquoora

8 Sia X una variabile aleatoria normale di parametri micro = 10 e σ = 36Calcola

1 P(X gt 5)2 P(4 le X le 16)3 P(X le 8)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 86 88

Esercizi - 5

9 Il numero di errori tipografici per pagina di una certa rivista segue unadistribuzione di Poisson Sapendo che mediamente sono presenti 02errori per pagina determinare la probabilita che una pagina contenga

1 nessun refuso2 piu refusi

10 Arrivi alla fermata dellrsquoautobus alle 1000 e sei certo che ne passerauno in un momento distribuito uniformemente tra le 1000 e le 1030

1 Qual e la probabilita che tu debba aspettare piu di 10 minuti2 Se alle 1015 lrsquoautobus non e ancora arrivato qual e la probabilita che

tu debba aspettare almeno altri 10 minuti

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 87 88

Esercizi - 6

11 Il signor Jones e convinto che il tempo di vita di una automobile (inmigliaia di chilometri percorse) sia una variabile aleatoria esponenzialedi parametro 120 Il signor Smith ha una macchina usata da vendereche ha percorso circa 10 000 chilometri

1 Se il signor Jones decide di comprarla che probabilita ha di farle farealmeno altri 20 000 chilometri prima che sia da buttare

2 Il modello assunto dal signor Jones e ragionevole

12 Sia X una variabile casuale binomiale di parametri n = 100 e p = 07

1 Tracciate la funzione di ripartizione di X2 Calcolate il primo quartile il quantile di ordine 09 e la mediana di X3 Calcolare la probabilita P(X le 60)4 Calcolare la probabilita P(X le 88)5 Trovare il piu piccolo valore x tale che P(X le x) ge 09

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 88 88

  • Lezione 1
    • Script in Python
    • Numpy
    • Esercizi
    • Pandas
    • Esercizi
      • Lezione 2
        • File csv
        • DataFrame
        • Accesso ai DataFrame
        • Frequenze
        • Esercizi
          • Lezione 3
            • Matplotlib
            • Grafici a Barre
            • Istogrammi
            • Cumulativa empirica
            • Boxplot
            • QQplot
            • Diagramma di Pareto
            • Esercizi
              • Lezione 4
                • Definizioni
                • Probabilitagrave condizionata
                • Indipendenza
                • Esercizi
                  • Lezione 5
                    • Variabili Aleatorie
                    • Funzione di Ripartizione
                    • Funzione di Densitagrave
                    • Valore Atteso
                    • Varianza
                    • Covarianza
                    • Esercizi
                      • Lezione 6
                        • Scipy - Variabili Discrete
                        • Scipy - Variabili continue
                        • Esercizi

Variabili aleatorie discrete Binomiale

gtgtgt from scipystats import binom

gtgtgt rv = binom(n p)

rvrvs(x) restituisce un vettore di x numeri estratti secondo unadistribuzione Binomiale di parametri n p

rvpmf(x) restituisce la probabilita di ottenere esattamente x

successi in un esperimento dicotomico (01) ripetuto n volte con unaprobabilita di successo p (x puo essere un vettore)

rvcdf(q) restituisce il valore della funzione di ripartizione in q (qpuo essere un vettore)

rvppf(p) restituisce il valore del quantile di ordine p

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 77 88

Variabili aleatorie discrete Ipergeometrica

Supponiamo di avere M = 20 animali di cui n = 7 cani Se vogliamosapere la probabilita di trovare un dato numero di cani se scegliamoN = 12 dei 20 animali in maniera casuale possiamo usare una distribuzioneipergeometrica in questo modo

gtgtgt from scipystats import hypergeom

gtgtgt [M n N] = [20 7 12]

gtgtgt rv = hypergeom(M n N)

rvpmf(x) restituisce la probabilita di estrarre esattamente x cani

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 78 88

Variabili aleatorie discrete Geometrica

gtgtgt from scipystats import geom

gtgtgt rv = geom(p)

rvpmf(x) restituisce la probabilita di avere un successo dopoesattamente x insuccessi in una successione di esperimenti dicotomici(esito 01) con una probabilita di successo p (x puo essere un vettore)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 79 88

Variabili aleatorie discrete Poisson

La distribuzione di Poisson viene usata spesso come modello per il numerodi volte per cui un evento avviene in un dato intervallo di tempo (ospazio) Ad esempio si puo utilizzare per misurare il numero di chiamatericevute da un call center in una mattinata

gtgtgt from scipystats import poisson

gtgtgt mu = 2

gtgtgt rv = poisson(mu)

rvpmf(x) restituisce il seguente valore

f (x) = exp(minusmicro)microx

x

In questo caso x rappresenta il numero di eventi per cui si vuole calcolarela probabilita sapendo che in media ne accadono micro

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 80 88

Variabili aleatorie continue Uniforme

In Scipy la funzione uniforme e soltanto continua Questo significa chenella generazione di numeri casuali otterro dati di tipo float Possiamotuttavia simulare una variabile discreta estraendo la parte intera delrisultato ottenuto

gtgtgt from scipystats import uniform

gtgtgt rv = uniform()

Il comando uniform() crea una distribuzione uniforme nellrsquointervallo[01] Possiamo creare una distribuzione uniforme qualsiasi usandouniform(x y - x) per lrsquointervallo [x y]

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 81 88

Variabili aleatorie continue

norm(mu sigma) variabile Gaussiana (o Normale) di media micro edeviazione standard σ

expon(scale = 1 lambda) variabile Esponenziale di parametroλ

Altre distribuzioni (con relativa documentazione) disponibili suhttpsdocsscipyorgdocscipyreferencestatshtml

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 82 88

Esercizi - 1

1 Unrsquourna contiene 10 palline di cui 4 bianche e 6 nere Si eseguono 5estrazioni con reimmissione

1 Tracciare grafico della funzione massa di probabilita della variabilecasuale X = rdquonumero di palline bianche estratterdquo

2 Calcolare la probabilita di estrarre 2 palline bianche3 Calcolare la probabilita di estrarre al piu 2 palline bianche4 Calcolare la probabilita di estrarre almeno 2 palline bianche5 Qual e il numero minimo x tale che la probabilita di estrarre al piu x

palline bianche sia almeno 08

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 83 88

Esercizi - 2

2 Si eseguono 10 estrazioni senza reimmissione da unrsquourna

1 Tracciare il grafico della funzione massa di probabilita della variabilecasuale X = rdquonumero di palline bianche estratterdquo nei seguenti casi

1 lrsquourna contiene 100 palline di cui 20 bianche e le restanti nere2 lrsquourna contiene 100 palline di cui 2 bianche e le restanti nere

2 Tracciare il grafico della funzione massa di probabilita della variabilecasuale X nel caso dellrsquourna 1 se si eseguono 25 estrazioni

3 Consideriamo lrsquourna 1 e N = 10 estrazioni Si aumenti il numero totaleM di palline nellrsquourna mantenendo uguale a 02 la frazione di pallinebianche Per ciascun valore di M confrontare graficamente ladistribuzione di probabilita del numero di palline bianche estratte nelcaso di estrazioni con e senza reimmissione Provare con 20 40 e 200palline bianche

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 84 88

Esercizi - 3

3 Calcolare la probabilita di ottenere piu teste che croci lanciando 7volte una moneta truccata con probabilita di avere croce pari a 045

4 Calcolare la probabilita di avere almeno 3 sei lanciando 5 dadi a 12facce

5 Calcolare la probabilita di estrarre 20 euro da un sacco contenente 47monete da 1 centesimo e 53 da 2 euro estraendo (uniformemente) acaso 10 monete senza reinserirle

6 Un grammo di uranio emette mediamente 2152 particelle α ognimillisecondo Qual e con buona approssimazione la probabilita che ungrammo di uranio emetta al piu 2000 particelle α in un millisecondo

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 85 88

Esercizi - 4

7 Un uomo si risveglia in mezzo al deserto senza acqua Dopo ogniminuto ha una probabilita del 3 di perdere conoscenza per via dellecondizioni estreme Calcolare la probabilita che lrsquouomo perdaconoscenza dopo almeno due ore e la probabilita che lrsquouomo perdaconoscenza dopo esattamente un quarto drsquoora

8 Sia X una variabile aleatoria normale di parametri micro = 10 e σ = 36Calcola

1 P(X gt 5)2 P(4 le X le 16)3 P(X le 8)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 86 88

Esercizi - 5

9 Il numero di errori tipografici per pagina di una certa rivista segue unadistribuzione di Poisson Sapendo che mediamente sono presenti 02errori per pagina determinare la probabilita che una pagina contenga

1 nessun refuso2 piu refusi

10 Arrivi alla fermata dellrsquoautobus alle 1000 e sei certo che ne passerauno in un momento distribuito uniformemente tra le 1000 e le 1030

1 Qual e la probabilita che tu debba aspettare piu di 10 minuti2 Se alle 1015 lrsquoautobus non e ancora arrivato qual e la probabilita che

tu debba aspettare almeno altri 10 minuti

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 87 88

Esercizi - 6

11 Il signor Jones e convinto che il tempo di vita di una automobile (inmigliaia di chilometri percorse) sia una variabile aleatoria esponenzialedi parametro 120 Il signor Smith ha una macchina usata da vendereche ha percorso circa 10 000 chilometri

1 Se il signor Jones decide di comprarla che probabilita ha di farle farealmeno altri 20 000 chilometri prima che sia da buttare

2 Il modello assunto dal signor Jones e ragionevole

12 Sia X una variabile casuale binomiale di parametri n = 100 e p = 07

1 Tracciate la funzione di ripartizione di X2 Calcolate il primo quartile il quantile di ordine 09 e la mediana di X3 Calcolare la probabilita P(X le 60)4 Calcolare la probabilita P(X le 88)5 Trovare il piu piccolo valore x tale che P(X le x) ge 09

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 88 88

  • Lezione 1
    • Script in Python
    • Numpy
    • Esercizi
    • Pandas
    • Esercizi
      • Lezione 2
        • File csv
        • DataFrame
        • Accesso ai DataFrame
        • Frequenze
        • Esercizi
          • Lezione 3
            • Matplotlib
            • Grafici a Barre
            • Istogrammi
            • Cumulativa empirica
            • Boxplot
            • QQplot
            • Diagramma di Pareto
            • Esercizi
              • Lezione 4
                • Definizioni
                • Probabilitagrave condizionata
                • Indipendenza
                • Esercizi
                  • Lezione 5
                    • Variabili Aleatorie
                    • Funzione di Ripartizione
                    • Funzione di Densitagrave
                    • Valore Atteso
                    • Varianza
                    • Covarianza
                    • Esercizi
                      • Lezione 6
                        • Scipy - Variabili Discrete
                        • Scipy - Variabili continue
                        • Esercizi

Variabili aleatorie discrete Ipergeometrica

Supponiamo di avere M = 20 animali di cui n = 7 cani Se vogliamosapere la probabilita di trovare un dato numero di cani se scegliamoN = 12 dei 20 animali in maniera casuale possiamo usare una distribuzioneipergeometrica in questo modo

gtgtgt from scipystats import hypergeom

gtgtgt [M n N] = [20 7 12]

gtgtgt rv = hypergeom(M n N)

rvpmf(x) restituisce la probabilita di estrarre esattamente x cani

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 78 88

Variabili aleatorie discrete Geometrica

gtgtgt from scipystats import geom

gtgtgt rv = geom(p)

rvpmf(x) restituisce la probabilita di avere un successo dopoesattamente x insuccessi in una successione di esperimenti dicotomici(esito 01) con una probabilita di successo p (x puo essere un vettore)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 79 88

Variabili aleatorie discrete Poisson

La distribuzione di Poisson viene usata spesso come modello per il numerodi volte per cui un evento avviene in un dato intervallo di tempo (ospazio) Ad esempio si puo utilizzare per misurare il numero di chiamatericevute da un call center in una mattinata

gtgtgt from scipystats import poisson

gtgtgt mu = 2

gtgtgt rv = poisson(mu)

rvpmf(x) restituisce il seguente valore

f (x) = exp(minusmicro)microx

x

In questo caso x rappresenta il numero di eventi per cui si vuole calcolarela probabilita sapendo che in media ne accadono micro

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 80 88

Variabili aleatorie continue Uniforme

In Scipy la funzione uniforme e soltanto continua Questo significa chenella generazione di numeri casuali otterro dati di tipo float Possiamotuttavia simulare una variabile discreta estraendo la parte intera delrisultato ottenuto

gtgtgt from scipystats import uniform

gtgtgt rv = uniform()

Il comando uniform() crea una distribuzione uniforme nellrsquointervallo[01] Possiamo creare una distribuzione uniforme qualsiasi usandouniform(x y - x) per lrsquointervallo [x y]

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 81 88

Variabili aleatorie continue

norm(mu sigma) variabile Gaussiana (o Normale) di media micro edeviazione standard σ

expon(scale = 1 lambda) variabile Esponenziale di parametroλ

Altre distribuzioni (con relativa documentazione) disponibili suhttpsdocsscipyorgdocscipyreferencestatshtml

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 82 88

Esercizi - 1

1 Unrsquourna contiene 10 palline di cui 4 bianche e 6 nere Si eseguono 5estrazioni con reimmissione

1 Tracciare grafico della funzione massa di probabilita della variabilecasuale X = rdquonumero di palline bianche estratterdquo

2 Calcolare la probabilita di estrarre 2 palline bianche3 Calcolare la probabilita di estrarre al piu 2 palline bianche4 Calcolare la probabilita di estrarre almeno 2 palline bianche5 Qual e il numero minimo x tale che la probabilita di estrarre al piu x

palline bianche sia almeno 08

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 83 88

Esercizi - 2

2 Si eseguono 10 estrazioni senza reimmissione da unrsquourna

1 Tracciare il grafico della funzione massa di probabilita della variabilecasuale X = rdquonumero di palline bianche estratterdquo nei seguenti casi

1 lrsquourna contiene 100 palline di cui 20 bianche e le restanti nere2 lrsquourna contiene 100 palline di cui 2 bianche e le restanti nere

2 Tracciare il grafico della funzione massa di probabilita della variabilecasuale X nel caso dellrsquourna 1 se si eseguono 25 estrazioni

3 Consideriamo lrsquourna 1 e N = 10 estrazioni Si aumenti il numero totaleM di palline nellrsquourna mantenendo uguale a 02 la frazione di pallinebianche Per ciascun valore di M confrontare graficamente ladistribuzione di probabilita del numero di palline bianche estratte nelcaso di estrazioni con e senza reimmissione Provare con 20 40 e 200palline bianche

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 84 88

Esercizi - 3

3 Calcolare la probabilita di ottenere piu teste che croci lanciando 7volte una moneta truccata con probabilita di avere croce pari a 045

4 Calcolare la probabilita di avere almeno 3 sei lanciando 5 dadi a 12facce

5 Calcolare la probabilita di estrarre 20 euro da un sacco contenente 47monete da 1 centesimo e 53 da 2 euro estraendo (uniformemente) acaso 10 monete senza reinserirle

6 Un grammo di uranio emette mediamente 2152 particelle α ognimillisecondo Qual e con buona approssimazione la probabilita che ungrammo di uranio emetta al piu 2000 particelle α in un millisecondo

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 85 88

Esercizi - 4

7 Un uomo si risveglia in mezzo al deserto senza acqua Dopo ogniminuto ha una probabilita del 3 di perdere conoscenza per via dellecondizioni estreme Calcolare la probabilita che lrsquouomo perdaconoscenza dopo almeno due ore e la probabilita che lrsquouomo perdaconoscenza dopo esattamente un quarto drsquoora

8 Sia X una variabile aleatoria normale di parametri micro = 10 e σ = 36Calcola

1 P(X gt 5)2 P(4 le X le 16)3 P(X le 8)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 86 88

Esercizi - 5

9 Il numero di errori tipografici per pagina di una certa rivista segue unadistribuzione di Poisson Sapendo che mediamente sono presenti 02errori per pagina determinare la probabilita che una pagina contenga

1 nessun refuso2 piu refusi

10 Arrivi alla fermata dellrsquoautobus alle 1000 e sei certo che ne passerauno in un momento distribuito uniformemente tra le 1000 e le 1030

1 Qual e la probabilita che tu debba aspettare piu di 10 minuti2 Se alle 1015 lrsquoautobus non e ancora arrivato qual e la probabilita che

tu debba aspettare almeno altri 10 minuti

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 87 88

Esercizi - 6

11 Il signor Jones e convinto che il tempo di vita di una automobile (inmigliaia di chilometri percorse) sia una variabile aleatoria esponenzialedi parametro 120 Il signor Smith ha una macchina usata da vendereche ha percorso circa 10 000 chilometri

1 Se il signor Jones decide di comprarla che probabilita ha di farle farealmeno altri 20 000 chilometri prima che sia da buttare

2 Il modello assunto dal signor Jones e ragionevole

12 Sia X una variabile casuale binomiale di parametri n = 100 e p = 07

1 Tracciate la funzione di ripartizione di X2 Calcolate il primo quartile il quantile di ordine 09 e la mediana di X3 Calcolare la probabilita P(X le 60)4 Calcolare la probabilita P(X le 88)5 Trovare il piu piccolo valore x tale che P(X le x) ge 09

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 88 88

  • Lezione 1
    • Script in Python
    • Numpy
    • Esercizi
    • Pandas
    • Esercizi
      • Lezione 2
        • File csv
        • DataFrame
        • Accesso ai DataFrame
        • Frequenze
        • Esercizi
          • Lezione 3
            • Matplotlib
            • Grafici a Barre
            • Istogrammi
            • Cumulativa empirica
            • Boxplot
            • QQplot
            • Diagramma di Pareto
            • Esercizi
              • Lezione 4
                • Definizioni
                • Probabilitagrave condizionata
                • Indipendenza
                • Esercizi
                  • Lezione 5
                    • Variabili Aleatorie
                    • Funzione di Ripartizione
                    • Funzione di Densitagrave
                    • Valore Atteso
                    • Varianza
                    • Covarianza
                    • Esercizi
                      • Lezione 6
                        • Scipy - Variabili Discrete
                        • Scipy - Variabili continue
                        • Esercizi

Variabili aleatorie discrete Geometrica

gtgtgt from scipystats import geom

gtgtgt rv = geom(p)

rvpmf(x) restituisce la probabilita di avere un successo dopoesattamente x insuccessi in una successione di esperimenti dicotomici(esito 01) con una probabilita di successo p (x puo essere un vettore)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 79 88

Variabili aleatorie discrete Poisson

La distribuzione di Poisson viene usata spesso come modello per il numerodi volte per cui un evento avviene in un dato intervallo di tempo (ospazio) Ad esempio si puo utilizzare per misurare il numero di chiamatericevute da un call center in una mattinata

gtgtgt from scipystats import poisson

gtgtgt mu = 2

gtgtgt rv = poisson(mu)

rvpmf(x) restituisce il seguente valore

f (x) = exp(minusmicro)microx

x

In questo caso x rappresenta il numero di eventi per cui si vuole calcolarela probabilita sapendo che in media ne accadono micro

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 80 88

Variabili aleatorie continue Uniforme

In Scipy la funzione uniforme e soltanto continua Questo significa chenella generazione di numeri casuali otterro dati di tipo float Possiamotuttavia simulare una variabile discreta estraendo la parte intera delrisultato ottenuto

gtgtgt from scipystats import uniform

gtgtgt rv = uniform()

Il comando uniform() crea una distribuzione uniforme nellrsquointervallo[01] Possiamo creare una distribuzione uniforme qualsiasi usandouniform(x y - x) per lrsquointervallo [x y]

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 81 88

Variabili aleatorie continue

norm(mu sigma) variabile Gaussiana (o Normale) di media micro edeviazione standard σ

expon(scale = 1 lambda) variabile Esponenziale di parametroλ

Altre distribuzioni (con relativa documentazione) disponibili suhttpsdocsscipyorgdocscipyreferencestatshtml

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 82 88

Esercizi - 1

1 Unrsquourna contiene 10 palline di cui 4 bianche e 6 nere Si eseguono 5estrazioni con reimmissione

1 Tracciare grafico della funzione massa di probabilita della variabilecasuale X = rdquonumero di palline bianche estratterdquo

2 Calcolare la probabilita di estrarre 2 palline bianche3 Calcolare la probabilita di estrarre al piu 2 palline bianche4 Calcolare la probabilita di estrarre almeno 2 palline bianche5 Qual e il numero minimo x tale che la probabilita di estrarre al piu x

palline bianche sia almeno 08

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 83 88

Esercizi - 2

2 Si eseguono 10 estrazioni senza reimmissione da unrsquourna

1 Tracciare il grafico della funzione massa di probabilita della variabilecasuale X = rdquonumero di palline bianche estratterdquo nei seguenti casi

1 lrsquourna contiene 100 palline di cui 20 bianche e le restanti nere2 lrsquourna contiene 100 palline di cui 2 bianche e le restanti nere

2 Tracciare il grafico della funzione massa di probabilita della variabilecasuale X nel caso dellrsquourna 1 se si eseguono 25 estrazioni

3 Consideriamo lrsquourna 1 e N = 10 estrazioni Si aumenti il numero totaleM di palline nellrsquourna mantenendo uguale a 02 la frazione di pallinebianche Per ciascun valore di M confrontare graficamente ladistribuzione di probabilita del numero di palline bianche estratte nelcaso di estrazioni con e senza reimmissione Provare con 20 40 e 200palline bianche

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 84 88

Esercizi - 3

3 Calcolare la probabilita di ottenere piu teste che croci lanciando 7volte una moneta truccata con probabilita di avere croce pari a 045

4 Calcolare la probabilita di avere almeno 3 sei lanciando 5 dadi a 12facce

5 Calcolare la probabilita di estrarre 20 euro da un sacco contenente 47monete da 1 centesimo e 53 da 2 euro estraendo (uniformemente) acaso 10 monete senza reinserirle

6 Un grammo di uranio emette mediamente 2152 particelle α ognimillisecondo Qual e con buona approssimazione la probabilita che ungrammo di uranio emetta al piu 2000 particelle α in un millisecondo

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 85 88

Esercizi - 4

7 Un uomo si risveglia in mezzo al deserto senza acqua Dopo ogniminuto ha una probabilita del 3 di perdere conoscenza per via dellecondizioni estreme Calcolare la probabilita che lrsquouomo perdaconoscenza dopo almeno due ore e la probabilita che lrsquouomo perdaconoscenza dopo esattamente un quarto drsquoora

8 Sia X una variabile aleatoria normale di parametri micro = 10 e σ = 36Calcola

1 P(X gt 5)2 P(4 le X le 16)3 P(X le 8)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 86 88

Esercizi - 5

9 Il numero di errori tipografici per pagina di una certa rivista segue unadistribuzione di Poisson Sapendo che mediamente sono presenti 02errori per pagina determinare la probabilita che una pagina contenga

1 nessun refuso2 piu refusi

10 Arrivi alla fermata dellrsquoautobus alle 1000 e sei certo che ne passerauno in un momento distribuito uniformemente tra le 1000 e le 1030

1 Qual e la probabilita che tu debba aspettare piu di 10 minuti2 Se alle 1015 lrsquoautobus non e ancora arrivato qual e la probabilita che

tu debba aspettare almeno altri 10 minuti

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 87 88

Esercizi - 6

11 Il signor Jones e convinto che il tempo di vita di una automobile (inmigliaia di chilometri percorse) sia una variabile aleatoria esponenzialedi parametro 120 Il signor Smith ha una macchina usata da vendereche ha percorso circa 10 000 chilometri

1 Se il signor Jones decide di comprarla che probabilita ha di farle farealmeno altri 20 000 chilometri prima che sia da buttare

2 Il modello assunto dal signor Jones e ragionevole

12 Sia X una variabile casuale binomiale di parametri n = 100 e p = 07

1 Tracciate la funzione di ripartizione di X2 Calcolate il primo quartile il quantile di ordine 09 e la mediana di X3 Calcolare la probabilita P(X le 60)4 Calcolare la probabilita P(X le 88)5 Trovare il piu piccolo valore x tale che P(X le x) ge 09

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 88 88

  • Lezione 1
    • Script in Python
    • Numpy
    • Esercizi
    • Pandas
    • Esercizi
      • Lezione 2
        • File csv
        • DataFrame
        • Accesso ai DataFrame
        • Frequenze
        • Esercizi
          • Lezione 3
            • Matplotlib
            • Grafici a Barre
            • Istogrammi
            • Cumulativa empirica
            • Boxplot
            • QQplot
            • Diagramma di Pareto
            • Esercizi
              • Lezione 4
                • Definizioni
                • Probabilitagrave condizionata
                • Indipendenza
                • Esercizi
                  • Lezione 5
                    • Variabili Aleatorie
                    • Funzione di Ripartizione
                    • Funzione di Densitagrave
                    • Valore Atteso
                    • Varianza
                    • Covarianza
                    • Esercizi
                      • Lezione 6
                        • Scipy - Variabili Discrete
                        • Scipy - Variabili continue
                        • Esercizi

Variabili aleatorie discrete Poisson

La distribuzione di Poisson viene usata spesso come modello per il numerodi volte per cui un evento avviene in un dato intervallo di tempo (ospazio) Ad esempio si puo utilizzare per misurare il numero di chiamatericevute da un call center in una mattinata

gtgtgt from scipystats import poisson

gtgtgt mu = 2

gtgtgt rv = poisson(mu)

rvpmf(x) restituisce il seguente valore

f (x) = exp(minusmicro)microx

x

In questo caso x rappresenta il numero di eventi per cui si vuole calcolarela probabilita sapendo che in media ne accadono micro

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 80 88

Variabili aleatorie continue Uniforme

In Scipy la funzione uniforme e soltanto continua Questo significa chenella generazione di numeri casuali otterro dati di tipo float Possiamotuttavia simulare una variabile discreta estraendo la parte intera delrisultato ottenuto

gtgtgt from scipystats import uniform

gtgtgt rv = uniform()

Il comando uniform() crea una distribuzione uniforme nellrsquointervallo[01] Possiamo creare una distribuzione uniforme qualsiasi usandouniform(x y - x) per lrsquointervallo [x y]

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 81 88

Variabili aleatorie continue

norm(mu sigma) variabile Gaussiana (o Normale) di media micro edeviazione standard σ

expon(scale = 1 lambda) variabile Esponenziale di parametroλ

Altre distribuzioni (con relativa documentazione) disponibili suhttpsdocsscipyorgdocscipyreferencestatshtml

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 82 88

Esercizi - 1

1 Unrsquourna contiene 10 palline di cui 4 bianche e 6 nere Si eseguono 5estrazioni con reimmissione

1 Tracciare grafico della funzione massa di probabilita della variabilecasuale X = rdquonumero di palline bianche estratterdquo

2 Calcolare la probabilita di estrarre 2 palline bianche3 Calcolare la probabilita di estrarre al piu 2 palline bianche4 Calcolare la probabilita di estrarre almeno 2 palline bianche5 Qual e il numero minimo x tale che la probabilita di estrarre al piu x

palline bianche sia almeno 08

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 83 88

Esercizi - 2

2 Si eseguono 10 estrazioni senza reimmissione da unrsquourna

1 Tracciare il grafico della funzione massa di probabilita della variabilecasuale X = rdquonumero di palline bianche estratterdquo nei seguenti casi

1 lrsquourna contiene 100 palline di cui 20 bianche e le restanti nere2 lrsquourna contiene 100 palline di cui 2 bianche e le restanti nere

2 Tracciare il grafico della funzione massa di probabilita della variabilecasuale X nel caso dellrsquourna 1 se si eseguono 25 estrazioni

3 Consideriamo lrsquourna 1 e N = 10 estrazioni Si aumenti il numero totaleM di palline nellrsquourna mantenendo uguale a 02 la frazione di pallinebianche Per ciascun valore di M confrontare graficamente ladistribuzione di probabilita del numero di palline bianche estratte nelcaso di estrazioni con e senza reimmissione Provare con 20 40 e 200palline bianche

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 84 88

Esercizi - 3

3 Calcolare la probabilita di ottenere piu teste che croci lanciando 7volte una moneta truccata con probabilita di avere croce pari a 045

4 Calcolare la probabilita di avere almeno 3 sei lanciando 5 dadi a 12facce

5 Calcolare la probabilita di estrarre 20 euro da un sacco contenente 47monete da 1 centesimo e 53 da 2 euro estraendo (uniformemente) acaso 10 monete senza reinserirle

6 Un grammo di uranio emette mediamente 2152 particelle α ognimillisecondo Qual e con buona approssimazione la probabilita che ungrammo di uranio emetta al piu 2000 particelle α in un millisecondo

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 85 88

Esercizi - 4

7 Un uomo si risveglia in mezzo al deserto senza acqua Dopo ogniminuto ha una probabilita del 3 di perdere conoscenza per via dellecondizioni estreme Calcolare la probabilita che lrsquouomo perdaconoscenza dopo almeno due ore e la probabilita che lrsquouomo perdaconoscenza dopo esattamente un quarto drsquoora

8 Sia X una variabile aleatoria normale di parametri micro = 10 e σ = 36Calcola

1 P(X gt 5)2 P(4 le X le 16)3 P(X le 8)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 86 88

Esercizi - 5

9 Il numero di errori tipografici per pagina di una certa rivista segue unadistribuzione di Poisson Sapendo che mediamente sono presenti 02errori per pagina determinare la probabilita che una pagina contenga

1 nessun refuso2 piu refusi

10 Arrivi alla fermata dellrsquoautobus alle 1000 e sei certo che ne passerauno in un momento distribuito uniformemente tra le 1000 e le 1030

1 Qual e la probabilita che tu debba aspettare piu di 10 minuti2 Se alle 1015 lrsquoautobus non e ancora arrivato qual e la probabilita che

tu debba aspettare almeno altri 10 minuti

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 87 88

Esercizi - 6

11 Il signor Jones e convinto che il tempo di vita di una automobile (inmigliaia di chilometri percorse) sia una variabile aleatoria esponenzialedi parametro 120 Il signor Smith ha una macchina usata da vendereche ha percorso circa 10 000 chilometri

1 Se il signor Jones decide di comprarla che probabilita ha di farle farealmeno altri 20 000 chilometri prima che sia da buttare

2 Il modello assunto dal signor Jones e ragionevole

12 Sia X una variabile casuale binomiale di parametri n = 100 e p = 07

1 Tracciate la funzione di ripartizione di X2 Calcolate il primo quartile il quantile di ordine 09 e la mediana di X3 Calcolare la probabilita P(X le 60)4 Calcolare la probabilita P(X le 88)5 Trovare il piu piccolo valore x tale che P(X le x) ge 09

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 88 88

  • Lezione 1
    • Script in Python
    • Numpy
    • Esercizi
    • Pandas
    • Esercizi
      • Lezione 2
        • File csv
        • DataFrame
        • Accesso ai DataFrame
        • Frequenze
        • Esercizi
          • Lezione 3
            • Matplotlib
            • Grafici a Barre
            • Istogrammi
            • Cumulativa empirica
            • Boxplot
            • QQplot
            • Diagramma di Pareto
            • Esercizi
              • Lezione 4
                • Definizioni
                • Probabilitagrave condizionata
                • Indipendenza
                • Esercizi
                  • Lezione 5
                    • Variabili Aleatorie
                    • Funzione di Ripartizione
                    • Funzione di Densitagrave
                    • Valore Atteso
                    • Varianza
                    • Covarianza
                    • Esercizi
                      • Lezione 6
                        • Scipy - Variabili Discrete
                        • Scipy - Variabili continue
                        • Esercizi

Variabili aleatorie continue Uniforme

In Scipy la funzione uniforme e soltanto continua Questo significa chenella generazione di numeri casuali otterro dati di tipo float Possiamotuttavia simulare una variabile discreta estraendo la parte intera delrisultato ottenuto

gtgtgt from scipystats import uniform

gtgtgt rv = uniform()

Il comando uniform() crea una distribuzione uniforme nellrsquointervallo[01] Possiamo creare una distribuzione uniforme qualsiasi usandouniform(x y - x) per lrsquointervallo [x y]

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 81 88

Variabili aleatorie continue

norm(mu sigma) variabile Gaussiana (o Normale) di media micro edeviazione standard σ

expon(scale = 1 lambda) variabile Esponenziale di parametroλ

Altre distribuzioni (con relativa documentazione) disponibili suhttpsdocsscipyorgdocscipyreferencestatshtml

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 82 88

Esercizi - 1

1 Unrsquourna contiene 10 palline di cui 4 bianche e 6 nere Si eseguono 5estrazioni con reimmissione

1 Tracciare grafico della funzione massa di probabilita della variabilecasuale X = rdquonumero di palline bianche estratterdquo

2 Calcolare la probabilita di estrarre 2 palline bianche3 Calcolare la probabilita di estrarre al piu 2 palline bianche4 Calcolare la probabilita di estrarre almeno 2 palline bianche5 Qual e il numero minimo x tale che la probabilita di estrarre al piu x

palline bianche sia almeno 08

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 83 88

Esercizi - 2

2 Si eseguono 10 estrazioni senza reimmissione da unrsquourna

1 Tracciare il grafico della funzione massa di probabilita della variabilecasuale X = rdquonumero di palline bianche estratterdquo nei seguenti casi

1 lrsquourna contiene 100 palline di cui 20 bianche e le restanti nere2 lrsquourna contiene 100 palline di cui 2 bianche e le restanti nere

2 Tracciare il grafico della funzione massa di probabilita della variabilecasuale X nel caso dellrsquourna 1 se si eseguono 25 estrazioni

3 Consideriamo lrsquourna 1 e N = 10 estrazioni Si aumenti il numero totaleM di palline nellrsquourna mantenendo uguale a 02 la frazione di pallinebianche Per ciascun valore di M confrontare graficamente ladistribuzione di probabilita del numero di palline bianche estratte nelcaso di estrazioni con e senza reimmissione Provare con 20 40 e 200palline bianche

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 84 88

Esercizi - 3

3 Calcolare la probabilita di ottenere piu teste che croci lanciando 7volte una moneta truccata con probabilita di avere croce pari a 045

4 Calcolare la probabilita di avere almeno 3 sei lanciando 5 dadi a 12facce

5 Calcolare la probabilita di estrarre 20 euro da un sacco contenente 47monete da 1 centesimo e 53 da 2 euro estraendo (uniformemente) acaso 10 monete senza reinserirle

6 Un grammo di uranio emette mediamente 2152 particelle α ognimillisecondo Qual e con buona approssimazione la probabilita che ungrammo di uranio emetta al piu 2000 particelle α in un millisecondo

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 85 88

Esercizi - 4

7 Un uomo si risveglia in mezzo al deserto senza acqua Dopo ogniminuto ha una probabilita del 3 di perdere conoscenza per via dellecondizioni estreme Calcolare la probabilita che lrsquouomo perdaconoscenza dopo almeno due ore e la probabilita che lrsquouomo perdaconoscenza dopo esattamente un quarto drsquoora

8 Sia X una variabile aleatoria normale di parametri micro = 10 e σ = 36Calcola

1 P(X gt 5)2 P(4 le X le 16)3 P(X le 8)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 86 88

Esercizi - 5

9 Il numero di errori tipografici per pagina di una certa rivista segue unadistribuzione di Poisson Sapendo che mediamente sono presenti 02errori per pagina determinare la probabilita che una pagina contenga

1 nessun refuso2 piu refusi

10 Arrivi alla fermata dellrsquoautobus alle 1000 e sei certo che ne passerauno in un momento distribuito uniformemente tra le 1000 e le 1030

1 Qual e la probabilita che tu debba aspettare piu di 10 minuti2 Se alle 1015 lrsquoautobus non e ancora arrivato qual e la probabilita che

tu debba aspettare almeno altri 10 minuti

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 87 88

Esercizi - 6

11 Il signor Jones e convinto che il tempo di vita di una automobile (inmigliaia di chilometri percorse) sia una variabile aleatoria esponenzialedi parametro 120 Il signor Smith ha una macchina usata da vendereche ha percorso circa 10 000 chilometri

1 Se il signor Jones decide di comprarla che probabilita ha di farle farealmeno altri 20 000 chilometri prima che sia da buttare

2 Il modello assunto dal signor Jones e ragionevole

12 Sia X una variabile casuale binomiale di parametri n = 100 e p = 07

1 Tracciate la funzione di ripartizione di X2 Calcolate il primo quartile il quantile di ordine 09 e la mediana di X3 Calcolare la probabilita P(X le 60)4 Calcolare la probabilita P(X le 88)5 Trovare il piu piccolo valore x tale che P(X le x) ge 09

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 88 88

  • Lezione 1
    • Script in Python
    • Numpy
    • Esercizi
    • Pandas
    • Esercizi
      • Lezione 2
        • File csv
        • DataFrame
        • Accesso ai DataFrame
        • Frequenze
        • Esercizi
          • Lezione 3
            • Matplotlib
            • Grafici a Barre
            • Istogrammi
            • Cumulativa empirica
            • Boxplot
            • QQplot
            • Diagramma di Pareto
            • Esercizi
              • Lezione 4
                • Definizioni
                • Probabilitagrave condizionata
                • Indipendenza
                • Esercizi
                  • Lezione 5
                    • Variabili Aleatorie
                    • Funzione di Ripartizione
                    • Funzione di Densitagrave
                    • Valore Atteso
                    • Varianza
                    • Covarianza
                    • Esercizi
                      • Lezione 6
                        • Scipy - Variabili Discrete
                        • Scipy - Variabili continue
                        • Esercizi

Variabili aleatorie continue

norm(mu sigma) variabile Gaussiana (o Normale) di media micro edeviazione standard σ

expon(scale = 1 lambda) variabile Esponenziale di parametroλ

Altre distribuzioni (con relativa documentazione) disponibili suhttpsdocsscipyorgdocscipyreferencestatshtml

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 82 88

Esercizi - 1

1 Unrsquourna contiene 10 palline di cui 4 bianche e 6 nere Si eseguono 5estrazioni con reimmissione

1 Tracciare grafico della funzione massa di probabilita della variabilecasuale X = rdquonumero di palline bianche estratterdquo

2 Calcolare la probabilita di estrarre 2 palline bianche3 Calcolare la probabilita di estrarre al piu 2 palline bianche4 Calcolare la probabilita di estrarre almeno 2 palline bianche5 Qual e il numero minimo x tale che la probabilita di estrarre al piu x

palline bianche sia almeno 08

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 83 88

Esercizi - 2

2 Si eseguono 10 estrazioni senza reimmissione da unrsquourna

1 Tracciare il grafico della funzione massa di probabilita della variabilecasuale X = rdquonumero di palline bianche estratterdquo nei seguenti casi

1 lrsquourna contiene 100 palline di cui 20 bianche e le restanti nere2 lrsquourna contiene 100 palline di cui 2 bianche e le restanti nere

2 Tracciare il grafico della funzione massa di probabilita della variabilecasuale X nel caso dellrsquourna 1 se si eseguono 25 estrazioni

3 Consideriamo lrsquourna 1 e N = 10 estrazioni Si aumenti il numero totaleM di palline nellrsquourna mantenendo uguale a 02 la frazione di pallinebianche Per ciascun valore di M confrontare graficamente ladistribuzione di probabilita del numero di palline bianche estratte nelcaso di estrazioni con e senza reimmissione Provare con 20 40 e 200palline bianche

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 84 88

Esercizi - 3

3 Calcolare la probabilita di ottenere piu teste che croci lanciando 7volte una moneta truccata con probabilita di avere croce pari a 045

4 Calcolare la probabilita di avere almeno 3 sei lanciando 5 dadi a 12facce

5 Calcolare la probabilita di estrarre 20 euro da un sacco contenente 47monete da 1 centesimo e 53 da 2 euro estraendo (uniformemente) acaso 10 monete senza reinserirle

6 Un grammo di uranio emette mediamente 2152 particelle α ognimillisecondo Qual e con buona approssimazione la probabilita che ungrammo di uranio emetta al piu 2000 particelle α in un millisecondo

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 85 88

Esercizi - 4

7 Un uomo si risveglia in mezzo al deserto senza acqua Dopo ogniminuto ha una probabilita del 3 di perdere conoscenza per via dellecondizioni estreme Calcolare la probabilita che lrsquouomo perdaconoscenza dopo almeno due ore e la probabilita che lrsquouomo perdaconoscenza dopo esattamente un quarto drsquoora

8 Sia X una variabile aleatoria normale di parametri micro = 10 e σ = 36Calcola

1 P(X gt 5)2 P(4 le X le 16)3 P(X le 8)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 86 88

Esercizi - 5

9 Il numero di errori tipografici per pagina di una certa rivista segue unadistribuzione di Poisson Sapendo che mediamente sono presenti 02errori per pagina determinare la probabilita che una pagina contenga

1 nessun refuso2 piu refusi

10 Arrivi alla fermata dellrsquoautobus alle 1000 e sei certo che ne passerauno in un momento distribuito uniformemente tra le 1000 e le 1030

1 Qual e la probabilita che tu debba aspettare piu di 10 minuti2 Se alle 1015 lrsquoautobus non e ancora arrivato qual e la probabilita che

tu debba aspettare almeno altri 10 minuti

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 87 88

Esercizi - 6

11 Il signor Jones e convinto che il tempo di vita di una automobile (inmigliaia di chilometri percorse) sia una variabile aleatoria esponenzialedi parametro 120 Il signor Smith ha una macchina usata da vendereche ha percorso circa 10 000 chilometri

1 Se il signor Jones decide di comprarla che probabilita ha di farle farealmeno altri 20 000 chilometri prima che sia da buttare

2 Il modello assunto dal signor Jones e ragionevole

12 Sia X una variabile casuale binomiale di parametri n = 100 e p = 07

1 Tracciate la funzione di ripartizione di X2 Calcolate il primo quartile il quantile di ordine 09 e la mediana di X3 Calcolare la probabilita P(X le 60)4 Calcolare la probabilita P(X le 88)5 Trovare il piu piccolo valore x tale che P(X le x) ge 09

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 88 88

  • Lezione 1
    • Script in Python
    • Numpy
    • Esercizi
    • Pandas
    • Esercizi
      • Lezione 2
        • File csv
        • DataFrame
        • Accesso ai DataFrame
        • Frequenze
        • Esercizi
          • Lezione 3
            • Matplotlib
            • Grafici a Barre
            • Istogrammi
            • Cumulativa empirica
            • Boxplot
            • QQplot
            • Diagramma di Pareto
            • Esercizi
              • Lezione 4
                • Definizioni
                • Probabilitagrave condizionata
                • Indipendenza
                • Esercizi
                  • Lezione 5
                    • Variabili Aleatorie
                    • Funzione di Ripartizione
                    • Funzione di Densitagrave
                    • Valore Atteso
                    • Varianza
                    • Covarianza
                    • Esercizi
                      • Lezione 6
                        • Scipy - Variabili Discrete
                        • Scipy - Variabili continue
                        • Esercizi

Esercizi - 1

1 Unrsquourna contiene 10 palline di cui 4 bianche e 6 nere Si eseguono 5estrazioni con reimmissione

1 Tracciare grafico della funzione massa di probabilita della variabilecasuale X = rdquonumero di palline bianche estratterdquo

2 Calcolare la probabilita di estrarre 2 palline bianche3 Calcolare la probabilita di estrarre al piu 2 palline bianche4 Calcolare la probabilita di estrarre almeno 2 palline bianche5 Qual e il numero minimo x tale che la probabilita di estrarre al piu x

palline bianche sia almeno 08

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 83 88

Esercizi - 2

2 Si eseguono 10 estrazioni senza reimmissione da unrsquourna

1 Tracciare il grafico della funzione massa di probabilita della variabilecasuale X = rdquonumero di palline bianche estratterdquo nei seguenti casi

1 lrsquourna contiene 100 palline di cui 20 bianche e le restanti nere2 lrsquourna contiene 100 palline di cui 2 bianche e le restanti nere

2 Tracciare il grafico della funzione massa di probabilita della variabilecasuale X nel caso dellrsquourna 1 se si eseguono 25 estrazioni

3 Consideriamo lrsquourna 1 e N = 10 estrazioni Si aumenti il numero totaleM di palline nellrsquourna mantenendo uguale a 02 la frazione di pallinebianche Per ciascun valore di M confrontare graficamente ladistribuzione di probabilita del numero di palline bianche estratte nelcaso di estrazioni con e senza reimmissione Provare con 20 40 e 200palline bianche

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 84 88

Esercizi - 3

3 Calcolare la probabilita di ottenere piu teste che croci lanciando 7volte una moneta truccata con probabilita di avere croce pari a 045

4 Calcolare la probabilita di avere almeno 3 sei lanciando 5 dadi a 12facce

5 Calcolare la probabilita di estrarre 20 euro da un sacco contenente 47monete da 1 centesimo e 53 da 2 euro estraendo (uniformemente) acaso 10 monete senza reinserirle

6 Un grammo di uranio emette mediamente 2152 particelle α ognimillisecondo Qual e con buona approssimazione la probabilita che ungrammo di uranio emetta al piu 2000 particelle α in un millisecondo

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 85 88

Esercizi - 4

7 Un uomo si risveglia in mezzo al deserto senza acqua Dopo ogniminuto ha una probabilita del 3 di perdere conoscenza per via dellecondizioni estreme Calcolare la probabilita che lrsquouomo perdaconoscenza dopo almeno due ore e la probabilita che lrsquouomo perdaconoscenza dopo esattamente un quarto drsquoora

8 Sia X una variabile aleatoria normale di parametri micro = 10 e σ = 36Calcola

1 P(X gt 5)2 P(4 le X le 16)3 P(X le 8)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 86 88

Esercizi - 5

9 Il numero di errori tipografici per pagina di una certa rivista segue unadistribuzione di Poisson Sapendo che mediamente sono presenti 02errori per pagina determinare la probabilita che una pagina contenga

1 nessun refuso2 piu refusi

10 Arrivi alla fermata dellrsquoautobus alle 1000 e sei certo che ne passerauno in un momento distribuito uniformemente tra le 1000 e le 1030

1 Qual e la probabilita che tu debba aspettare piu di 10 minuti2 Se alle 1015 lrsquoautobus non e ancora arrivato qual e la probabilita che

tu debba aspettare almeno altri 10 minuti

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 87 88

Esercizi - 6

11 Il signor Jones e convinto che il tempo di vita di una automobile (inmigliaia di chilometri percorse) sia una variabile aleatoria esponenzialedi parametro 120 Il signor Smith ha una macchina usata da vendereche ha percorso circa 10 000 chilometri

1 Se il signor Jones decide di comprarla che probabilita ha di farle farealmeno altri 20 000 chilometri prima che sia da buttare

2 Il modello assunto dal signor Jones e ragionevole

12 Sia X una variabile casuale binomiale di parametri n = 100 e p = 07

1 Tracciate la funzione di ripartizione di X2 Calcolate il primo quartile il quantile di ordine 09 e la mediana di X3 Calcolare la probabilita P(X le 60)4 Calcolare la probabilita P(X le 88)5 Trovare il piu piccolo valore x tale che P(X le x) ge 09

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 88 88

  • Lezione 1
    • Script in Python
    • Numpy
    • Esercizi
    • Pandas
    • Esercizi
      • Lezione 2
        • File csv
        • DataFrame
        • Accesso ai DataFrame
        • Frequenze
        • Esercizi
          • Lezione 3
            • Matplotlib
            • Grafici a Barre
            • Istogrammi
            • Cumulativa empirica
            • Boxplot
            • QQplot
            • Diagramma di Pareto
            • Esercizi
              • Lezione 4
                • Definizioni
                • Probabilitagrave condizionata
                • Indipendenza
                • Esercizi
                  • Lezione 5
                    • Variabili Aleatorie
                    • Funzione di Ripartizione
                    • Funzione di Densitagrave
                    • Valore Atteso
                    • Varianza
                    • Covarianza
                    • Esercizi
                      • Lezione 6
                        • Scipy - Variabili Discrete
                        • Scipy - Variabili continue
                        • Esercizi

Esercizi - 2

2 Si eseguono 10 estrazioni senza reimmissione da unrsquourna

1 Tracciare il grafico della funzione massa di probabilita della variabilecasuale X = rdquonumero di palline bianche estratterdquo nei seguenti casi

1 lrsquourna contiene 100 palline di cui 20 bianche e le restanti nere2 lrsquourna contiene 100 palline di cui 2 bianche e le restanti nere

2 Tracciare il grafico della funzione massa di probabilita della variabilecasuale X nel caso dellrsquourna 1 se si eseguono 25 estrazioni

3 Consideriamo lrsquourna 1 e N = 10 estrazioni Si aumenti il numero totaleM di palline nellrsquourna mantenendo uguale a 02 la frazione di pallinebianche Per ciascun valore di M confrontare graficamente ladistribuzione di probabilita del numero di palline bianche estratte nelcaso di estrazioni con e senza reimmissione Provare con 20 40 e 200palline bianche

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 84 88

Esercizi - 3

3 Calcolare la probabilita di ottenere piu teste che croci lanciando 7volte una moneta truccata con probabilita di avere croce pari a 045

4 Calcolare la probabilita di avere almeno 3 sei lanciando 5 dadi a 12facce

5 Calcolare la probabilita di estrarre 20 euro da un sacco contenente 47monete da 1 centesimo e 53 da 2 euro estraendo (uniformemente) acaso 10 monete senza reinserirle

6 Un grammo di uranio emette mediamente 2152 particelle α ognimillisecondo Qual e con buona approssimazione la probabilita che ungrammo di uranio emetta al piu 2000 particelle α in un millisecondo

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 85 88

Esercizi - 4

7 Un uomo si risveglia in mezzo al deserto senza acqua Dopo ogniminuto ha una probabilita del 3 di perdere conoscenza per via dellecondizioni estreme Calcolare la probabilita che lrsquouomo perdaconoscenza dopo almeno due ore e la probabilita che lrsquouomo perdaconoscenza dopo esattamente un quarto drsquoora

8 Sia X una variabile aleatoria normale di parametri micro = 10 e σ = 36Calcola

1 P(X gt 5)2 P(4 le X le 16)3 P(X le 8)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 86 88

Esercizi - 5

9 Il numero di errori tipografici per pagina di una certa rivista segue unadistribuzione di Poisson Sapendo che mediamente sono presenti 02errori per pagina determinare la probabilita che una pagina contenga

1 nessun refuso2 piu refusi

10 Arrivi alla fermata dellrsquoautobus alle 1000 e sei certo che ne passerauno in un momento distribuito uniformemente tra le 1000 e le 1030

1 Qual e la probabilita che tu debba aspettare piu di 10 minuti2 Se alle 1015 lrsquoautobus non e ancora arrivato qual e la probabilita che

tu debba aspettare almeno altri 10 minuti

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 87 88

Esercizi - 6

11 Il signor Jones e convinto che il tempo di vita di una automobile (inmigliaia di chilometri percorse) sia una variabile aleatoria esponenzialedi parametro 120 Il signor Smith ha una macchina usata da vendereche ha percorso circa 10 000 chilometri

1 Se il signor Jones decide di comprarla che probabilita ha di farle farealmeno altri 20 000 chilometri prima che sia da buttare

2 Il modello assunto dal signor Jones e ragionevole

12 Sia X una variabile casuale binomiale di parametri n = 100 e p = 07

1 Tracciate la funzione di ripartizione di X2 Calcolate il primo quartile il quantile di ordine 09 e la mediana di X3 Calcolare la probabilita P(X le 60)4 Calcolare la probabilita P(X le 88)5 Trovare il piu piccolo valore x tale che P(X le x) ge 09

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 88 88

  • Lezione 1
    • Script in Python
    • Numpy
    • Esercizi
    • Pandas
    • Esercizi
      • Lezione 2
        • File csv
        • DataFrame
        • Accesso ai DataFrame
        • Frequenze
        • Esercizi
          • Lezione 3
            • Matplotlib
            • Grafici a Barre
            • Istogrammi
            • Cumulativa empirica
            • Boxplot
            • QQplot
            • Diagramma di Pareto
            • Esercizi
              • Lezione 4
                • Definizioni
                • Probabilitagrave condizionata
                • Indipendenza
                • Esercizi
                  • Lezione 5
                    • Variabili Aleatorie
                    • Funzione di Ripartizione
                    • Funzione di Densitagrave
                    • Valore Atteso
                    • Varianza
                    • Covarianza
                    • Esercizi
                      • Lezione 6
                        • Scipy - Variabili Discrete
                        • Scipy - Variabili continue
                        • Esercizi

Esercizi - 3

3 Calcolare la probabilita di ottenere piu teste che croci lanciando 7volte una moneta truccata con probabilita di avere croce pari a 045

4 Calcolare la probabilita di avere almeno 3 sei lanciando 5 dadi a 12facce

5 Calcolare la probabilita di estrarre 20 euro da un sacco contenente 47monete da 1 centesimo e 53 da 2 euro estraendo (uniformemente) acaso 10 monete senza reinserirle

6 Un grammo di uranio emette mediamente 2152 particelle α ognimillisecondo Qual e con buona approssimazione la probabilita che ungrammo di uranio emetta al piu 2000 particelle α in un millisecondo

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 85 88

Esercizi - 4

7 Un uomo si risveglia in mezzo al deserto senza acqua Dopo ogniminuto ha una probabilita del 3 di perdere conoscenza per via dellecondizioni estreme Calcolare la probabilita che lrsquouomo perdaconoscenza dopo almeno due ore e la probabilita che lrsquouomo perdaconoscenza dopo esattamente un quarto drsquoora

8 Sia X una variabile aleatoria normale di parametri micro = 10 e σ = 36Calcola

1 P(X gt 5)2 P(4 le X le 16)3 P(X le 8)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 86 88

Esercizi - 5

9 Il numero di errori tipografici per pagina di una certa rivista segue unadistribuzione di Poisson Sapendo che mediamente sono presenti 02errori per pagina determinare la probabilita che una pagina contenga

1 nessun refuso2 piu refusi

10 Arrivi alla fermata dellrsquoautobus alle 1000 e sei certo che ne passerauno in un momento distribuito uniformemente tra le 1000 e le 1030

1 Qual e la probabilita che tu debba aspettare piu di 10 minuti2 Se alle 1015 lrsquoautobus non e ancora arrivato qual e la probabilita che

tu debba aspettare almeno altri 10 minuti

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 87 88

Esercizi - 6

11 Il signor Jones e convinto che il tempo di vita di una automobile (inmigliaia di chilometri percorse) sia una variabile aleatoria esponenzialedi parametro 120 Il signor Smith ha una macchina usata da vendereche ha percorso circa 10 000 chilometri

1 Se il signor Jones decide di comprarla che probabilita ha di farle farealmeno altri 20 000 chilometri prima che sia da buttare

2 Il modello assunto dal signor Jones e ragionevole

12 Sia X una variabile casuale binomiale di parametri n = 100 e p = 07

1 Tracciate la funzione di ripartizione di X2 Calcolate il primo quartile il quantile di ordine 09 e la mediana di X3 Calcolare la probabilita P(X le 60)4 Calcolare la probabilita P(X le 88)5 Trovare il piu piccolo valore x tale che P(X le x) ge 09

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 88 88

  • Lezione 1
    • Script in Python
    • Numpy
    • Esercizi
    • Pandas
    • Esercizi
      • Lezione 2
        • File csv
        • DataFrame
        • Accesso ai DataFrame
        • Frequenze
        • Esercizi
          • Lezione 3
            • Matplotlib
            • Grafici a Barre
            • Istogrammi
            • Cumulativa empirica
            • Boxplot
            • QQplot
            • Diagramma di Pareto
            • Esercizi
              • Lezione 4
                • Definizioni
                • Probabilitagrave condizionata
                • Indipendenza
                • Esercizi
                  • Lezione 5
                    • Variabili Aleatorie
                    • Funzione di Ripartizione
                    • Funzione di Densitagrave
                    • Valore Atteso
                    • Varianza
                    • Covarianza
                    • Esercizi
                      • Lezione 6
                        • Scipy - Variabili Discrete
                        • Scipy - Variabili continue
                        • Esercizi

Esercizi - 4

7 Un uomo si risveglia in mezzo al deserto senza acqua Dopo ogniminuto ha una probabilita del 3 di perdere conoscenza per via dellecondizioni estreme Calcolare la probabilita che lrsquouomo perdaconoscenza dopo almeno due ore e la probabilita che lrsquouomo perdaconoscenza dopo esattamente un quarto drsquoora

8 Sia X una variabile aleatoria normale di parametri micro = 10 e σ = 36Calcola

1 P(X gt 5)2 P(4 le X le 16)3 P(X le 8)

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 86 88

Esercizi - 5

9 Il numero di errori tipografici per pagina di una certa rivista segue unadistribuzione di Poisson Sapendo che mediamente sono presenti 02errori per pagina determinare la probabilita che una pagina contenga

1 nessun refuso2 piu refusi

10 Arrivi alla fermata dellrsquoautobus alle 1000 e sei certo che ne passerauno in un momento distribuito uniformemente tra le 1000 e le 1030

1 Qual e la probabilita che tu debba aspettare piu di 10 minuti2 Se alle 1015 lrsquoautobus non e ancora arrivato qual e la probabilita che

tu debba aspettare almeno altri 10 minuti

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 87 88

Esercizi - 6

11 Il signor Jones e convinto che il tempo di vita di una automobile (inmigliaia di chilometri percorse) sia una variabile aleatoria esponenzialedi parametro 120 Il signor Smith ha una macchina usata da vendereche ha percorso circa 10 000 chilometri

1 Se il signor Jones decide di comprarla che probabilita ha di farle farealmeno altri 20 000 chilometri prima che sia da buttare

2 Il modello assunto dal signor Jones e ragionevole

12 Sia X una variabile casuale binomiale di parametri n = 100 e p = 07

1 Tracciate la funzione di ripartizione di X2 Calcolate il primo quartile il quantile di ordine 09 e la mediana di X3 Calcolare la probabilita P(X le 60)4 Calcolare la probabilita P(X le 88)5 Trovare il piu piccolo valore x tale che P(X le x) ge 09

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 88 88

  • Lezione 1
    • Script in Python
    • Numpy
    • Esercizi
    • Pandas
    • Esercizi
      • Lezione 2
        • File csv
        • DataFrame
        • Accesso ai DataFrame
        • Frequenze
        • Esercizi
          • Lezione 3
            • Matplotlib
            • Grafici a Barre
            • Istogrammi
            • Cumulativa empirica
            • Boxplot
            • QQplot
            • Diagramma di Pareto
            • Esercizi
              • Lezione 4
                • Definizioni
                • Probabilitagrave condizionata
                • Indipendenza
                • Esercizi
                  • Lezione 5
                    • Variabili Aleatorie
                    • Funzione di Ripartizione
                    • Funzione di Densitagrave
                    • Valore Atteso
                    • Varianza
                    • Covarianza
                    • Esercizi
                      • Lezione 6
                        • Scipy - Variabili Discrete
                        • Scipy - Variabili continue
                        • Esercizi

Esercizi - 5

9 Il numero di errori tipografici per pagina di una certa rivista segue unadistribuzione di Poisson Sapendo che mediamente sono presenti 02errori per pagina determinare la probabilita che una pagina contenga

1 nessun refuso2 piu refusi

10 Arrivi alla fermata dellrsquoautobus alle 1000 e sei certo che ne passerauno in un momento distribuito uniformemente tra le 1000 e le 1030

1 Qual e la probabilita che tu debba aspettare piu di 10 minuti2 Se alle 1015 lrsquoautobus non e ancora arrivato qual e la probabilita che

tu debba aspettare almeno altri 10 minuti

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 87 88

Esercizi - 6

11 Il signor Jones e convinto che il tempo di vita di una automobile (inmigliaia di chilometri percorse) sia una variabile aleatoria esponenzialedi parametro 120 Il signor Smith ha una macchina usata da vendereche ha percorso circa 10 000 chilometri

1 Se il signor Jones decide di comprarla che probabilita ha di farle farealmeno altri 20 000 chilometri prima che sia da buttare

2 Il modello assunto dal signor Jones e ragionevole

12 Sia X una variabile casuale binomiale di parametri n = 100 e p = 07

1 Tracciate la funzione di ripartizione di X2 Calcolate il primo quartile il quantile di ordine 09 e la mediana di X3 Calcolare la probabilita P(X le 60)4 Calcolare la probabilita P(X le 88)5 Trovare il piu piccolo valore x tale che P(X le x) ge 09

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 88 88

  • Lezione 1
    • Script in Python
    • Numpy
    • Esercizi
    • Pandas
    • Esercizi
      • Lezione 2
        • File csv
        • DataFrame
        • Accesso ai DataFrame
        • Frequenze
        • Esercizi
          • Lezione 3
            • Matplotlib
            • Grafici a Barre
            • Istogrammi
            • Cumulativa empirica
            • Boxplot
            • QQplot
            • Diagramma di Pareto
            • Esercizi
              • Lezione 4
                • Definizioni
                • Probabilitagrave condizionata
                • Indipendenza
                • Esercizi
                  • Lezione 5
                    • Variabili Aleatorie
                    • Funzione di Ripartizione
                    • Funzione di Densitagrave
                    • Valore Atteso
                    • Varianza
                    • Covarianza
                    • Esercizi
                      • Lezione 6
                        • Scipy - Variabili Discrete
                        • Scipy - Variabili continue
                        • Esercizi

Esercizi - 6

11 Il signor Jones e convinto che il tempo di vita di una automobile (inmigliaia di chilometri percorse) sia una variabile aleatoria esponenzialedi parametro 120 Il signor Smith ha una macchina usata da vendereche ha percorso circa 10 000 chilometri

1 Se il signor Jones decide di comprarla che probabilita ha di farle farealmeno altri 20 000 chilometri prima che sia da buttare

2 Il modello assunto dal signor Jones e ragionevole

12 Sia X una variabile casuale binomiale di parametri n = 100 e p = 07

1 Tracciate la funzione di ripartizione di X2 Calcolate il primo quartile il quantile di ordine 09 e la mediana di X3 Calcolare la probabilita P(X le 60)4 Calcolare la probabilita P(X le 88)5 Trovare il piu piccolo valore x tale che P(X le x) ge 09

Nicolo Campolongo (UniMi) SAD 20182019 January 12 2019 88 88

  • Lezione 1
    • Script in Python
    • Numpy
    • Esercizi
    • Pandas
    • Esercizi
      • Lezione 2
        • File csv
        • DataFrame
        • Accesso ai DataFrame
        • Frequenze
        • Esercizi
          • Lezione 3
            • Matplotlib
            • Grafici a Barre
            • Istogrammi
            • Cumulativa empirica
            • Boxplot
            • QQplot
            • Diagramma di Pareto
            • Esercizi
              • Lezione 4
                • Definizioni
                • Probabilitagrave condizionata
                • Indipendenza
                • Esercizi
                  • Lezione 5
                    • Variabili Aleatorie
                    • Funzione di Ripartizione
                    • Funzione di Densitagrave
                    • Valore Atteso
                    • Varianza
                    • Covarianza
                    • Esercizi
                      • Lezione 6
                        • Scipy - Variabili Discrete
                        • Scipy - Variabili continue
                        • Esercizi