Laboratorio di Statistica e Analisi dei Daticesari.di.unimi.it/teaching/SADcesari.pdfunique(x)...

75
Laboratorio di Statistica e Analisi dei Dati Tommaso R. Cesari Università degli Studi di Milano A.A. 2018-2019

Transcript of Laboratorio di Statistica e Analisi dei Daticesari.di.unimi.it/teaching/SADcesari.pdfunique(x)...

Page 1: Laboratorio di Statistica e Analisi dei Daticesari.di.unimi.it/teaching/SADcesari.pdfunique(x) #copia di x senza ripetizioni sample(x, n,replace =TRUE) #estrae n elementi a caso table(x)

Laboratorio di Statistica e Analisi dei Dati

Tommaso R. Cesari

Università degli Studi di Milano

A.A. 2018-2019

Page 2: Laboratorio di Statistica e Analisi dei Daticesari.di.unimi.it/teaching/SADcesari.pdfunique(x) #copia di x senza ripetizioni sample(x, n,replace =TRUE) #estrae n elementi a caso table(x)

Programma

Pagina del corso: http://cesari.di.unimi.it/teaching.html

I Linguaggio R ed analisi dei dati:I script in R,I vettori,I data frame,I grafici,I variabili aleatorie,I esercizi

I Calcolo di probabilità:I richiami di teoria,I esercizi

Page 3: Laboratorio di Statistica e Analisi dei Daticesari.di.unimi.it/teaching/SADcesari.pdfunique(x) #copia di x senza ripetizioni sample(x, n,replace =TRUE) #estrae n elementi a caso table(x)

Introduzione: Ambiente R

I Strumento per l’analisi statistica dei datiI Numerosi comandi già implementatiI Linguaggio diffuso e richiesto nel mondo del lavoroI Disponibile per piattaforme Linux, MacOS e WindowsI Linguaggio ad alto livelloI Linguaggio interpretato

Download

I R (necessario per utilizzare Rstudio):https://cran.rstudio.com/

I RStudio (l’editor che utilizzere durante il corso):https://www.rstudio.com/

Page 4: Laboratorio di Statistica e Analisi dei Daticesari.di.unimi.it/teaching/SADcesari.pdfunique(x) #copia di x senza ripetizioni sample(x, n,replace =TRUE) #estrae n elementi a caso table(x)

Script in RScrivere uno script

1. Scrivere su un file di testo i comandi da eseguire separati dainterlinee (il ";" non è necessario)

2. Utilizzare il carattere # per commentare3. Utilizzare il comando print() per stampare sulla console4. Salvare il file come nome.R (R maiuscola)

Eseguire un intero script

I Code | Source (Ctrl+Shift+S)

Eseguire una riga di uno script

I Run (Ctrl+Enter)

Page 5: Laboratorio di Statistica e Analisi dei Daticesari.di.unimi.it/teaching/SADcesari.pdfunique(x) #copia di x senza ripetizioni sample(x, n,replace =TRUE) #estrae n elementi a caso table(x)

VettoriI Sequenze finite unidimensionali di elementi omogenei

Vettori numerici

## [1] 5 7 8 0 1 5 8

Vettori di stringhe

## [1] "pippo" "paperino" "topolino"

Vettori logici

## [1] TRUE TRUE FALSE TRUE

Page 6: Laboratorio di Statistica e Analisi dei Daticesari.di.unimi.it/teaching/SADcesari.pdfunique(x) #copia di x senza ripetizioni sample(x, n,replace =TRUE) #estrae n elementi a caso table(x)

Creazione di vettori numerici1:5

## [1] 1 2 3 4 5

3:-4

## [1] 3 2 1 0 -1 -2 -3 -4

seq(from = 1, to = 4, by = 0.5)

## [1] 1.0 1.5 2.0 2.5 3.0 3.5 4.0

seq(from = 2, to = 3, length.out = 4)

## [1] 2.000000 2.333333 2.666667 3.000000

Page 7: Laboratorio di Statistica e Analisi dei Daticesari.di.unimi.it/teaching/SADcesari.pdfunique(x) #copia di x senza ripetizioni sample(x, n,replace =TRUE) #estrae n elementi a caso table(x)

Creazione di vettori qualunque

I I singoli elementi sono considerati vettori di lunghezza 1

c("pippo", c("paperino", "topolino"))

## [1] "pippo" "paperino" "topolino"

rep(1:2, times = 3)

## [1] 1 2 1 2 1 2

rep(c(TRUE, FALSE), length.out = 5)

## [1] TRUE FALSE TRUE FALSE TRUE

Page 8: Laboratorio di Statistica e Analisi dei Daticesari.di.unimi.it/teaching/SADcesari.pdfunique(x) #copia di x senza ripetizioni sample(x, n,replace =TRUE) #estrae n elementi a caso table(x)

Assegnamenti

I Gli indici partono da 1

x <- c(1, 4, 5)x

## [1] 1 4 5

x[1] <- 2x

## [1] 2 4 5

Page 9: Laboratorio di Statistica e Analisi dei Daticesari.di.unimi.it/teaching/SADcesari.pdfunique(x) #copia di x senza ripetizioni sample(x, n,replace =TRUE) #estrae n elementi a caso table(x)

Vettori ed operatori logici

I Vale la regola del riciclo

x <- 1:7

x > 5

## [1] FALSE FALSE FALSE FALSE FALSE TRUE TRUE

x == c(5,6)

## Warning in x == c(5, 6): longer object length is not a multiple of shorter## object length

## [1] FALSE FALSE FALSE FALSE TRUE TRUE FALSE

Page 10: Laboratorio di Statistica e Analisi dei Daticesari.di.unimi.it/teaching/SADcesari.pdfunique(x) #copia di x senza ripetizioni sample(x, n,replace =TRUE) #estrae n elementi a caso table(x)

Dati mancanti (Not Available)

I Per i dati mancanti R utilizza il valore speciale NAI La quasi totalità delle operazioni e dei comandi che coinvolga

valori NA ha come risultato NA (eccezione: is.na())

x <- c(1:4, NA)

x + 2

## [1] 3 4 5 6 NA

is.na(x)

## [1] FALSE FALSE FALSE FALSE TRUE

Page 11: Laboratorio di Statistica e Analisi dei Daticesari.di.unimi.it/teaching/SADcesari.pdfunique(x) #copia di x senza ripetizioni sample(x, n,replace =TRUE) #estrae n elementi a caso table(x)

Vettori: selezione e accesso a sottoinsiemi di elementi

x <- c(2, 6, 3, 7, 1, 9)

Vettore di indici interi positivi

I L’ordine è importante

x[c(1, 5, 2)]

## [1] 2 1 6

Page 12: Laboratorio di Statistica e Analisi dei Daticesari.di.unimi.it/teaching/SADcesari.pdfunique(x) #copia di x senza ripetizioni sample(x, n,replace =TRUE) #estrae n elementi a caso table(x)

Vettori di indici a caratteri

I Applicabile su vettori etichettati o su previa impostazionedell’attributo names

I Anche in questo caso l’ordine è importante

campione <- c(45, 180, 70, 3)names(campione) <-c("Eta", "Altezza", "Peso", "Nr")campione

## Eta Altezza Peso Nr## 45 180 70 3

campione[c("Altezza", "Nr", "Eta")]

## Altezza Nr Eta## 180 3 45

Page 13: Laboratorio di Statistica e Analisi dei Daticesari.di.unimi.it/teaching/SADcesari.pdfunique(x) #copia di x senza ripetizioni sample(x, n,replace =TRUE) #estrae n elementi a caso table(x)

Vettore di indici logici (filtri)

I Seleziona gli elementi corrispondenti a TRUE ed omette gli altri

x <- c(2, 3, NA, NA, 3, NA, 47)xx[!is.na(x) & x > 2]

Page 14: Laboratorio di Statistica e Analisi dei Daticesari.di.unimi.it/teaching/SADcesari.pdfunique(x) #copia di x senza ripetizioni sample(x, n,replace =TRUE) #estrae n elementi a caso table(x)

!is.na(x)

## [1] TRUE TRUE FALSE FALSE TRUE FALSE TRUE

x > 2

## [1] FALSE TRUE NA NA TRUE NA TRUE

!is.na(x) & x > 2

## [1] FALSE TRUE FALSE FALSE TRUE FALSE TRUE

x[!is.na(x) & x > 2]

## [1] 3 3 47

Page 15: Laboratorio di Statistica e Analisi dei Daticesari.di.unimi.it/teaching/SADcesari.pdfunique(x) #copia di x senza ripetizioni sample(x, n,replace =TRUE) #estrae n elementi a caso table(x)

Operazioni e comandi utiliI Le operazioni usuali dell’aritmetica +, -, *, / vengono eseguite

sui vettori elemento per elemento

Comandi utili

?comando #documentazione di "comando"max(x) #massimo di xmin(x) #minimo di xsum(x) #somma degli elementi di xsort(x) #copia ordinata di xunique(x) #copia di x senza ripetizionisample(x, n, replace = TRUE) #estrae n elementi a casotable(x) #frequenze assolute di xprop.table(table(x)) #frequenze relative di xpaste (x, y, sep = c) #concatena ogni stringa di x con#il separatore c e la rispettiva stringa di y

Page 16: Laboratorio di Statistica e Analisi dei Daticesari.di.unimi.it/teaching/SADcesari.pdfunique(x) #copia di x senza ripetizioni sample(x, n,replace =TRUE) #estrae n elementi a caso table(x)

EserciziCreare tre vettori distinti contenenti i seguenti valori

I 2.5, 2, 5, 1, 11, -0.1, 10, 9I 8 numeri equispaziati tra 10 e 6.5 (estremi inclusi)I I numeri interi tra 1 e 8 (estremi inclusi)

1. Calcolare massimo ed il minimo di ciascun vettore2. Calcolare la somma degli elementi di ciascun vettore3. Concatenare i tre vettori ed estrarre un campione casuale pari

al 30% di tutti gli elementi4. Contare il numero di elementi >= 5 per ciascun vettore5. Estrarre gli elementi diversi da 3 dal terzo vettore6. Sostituire il valore NA agli attuali valori presenti nella seconda e

nella sesta posizione del primo vettore7. Costruire un vettore logico contenente TRUE nelle posizioni in

cui il primo vettore contiene un NA, FALSE altrove. Utilizzarloper sostituire 1 a tutti gli NA

Page 17: Laboratorio di Statistica e Analisi dei Daticesari.di.unimi.it/teaching/SADcesari.pdfunique(x) #copia di x senza ripetizioni sample(x, n,replace =TRUE) #estrae n elementi a caso table(x)

EserciziI seguenti dati rappresentano il numero di giorni in cui ciascuno di20 lavoratori si è assentato per malattia nelle ultime sei settimane

I 2,2,0,0,5,8,3,4,1,0,0,7,1,7,1,5,4,0,4,0

I codici dei lavoratori sono "Lav_0", "Lav_2", . . . , "Lav_19"

1. Creare un vettore contenente i giorni di malattia e nel camponames i corrispondenti codici

2. Selezionare il numero di giorni di malattia di "Lav_6"3. Determinare quanti lavoratori hanno fatto 0 giorni di malattia e

stamparne i codici4. Estrarre il sottovettore contenente i giorni di malattia di tutti i

lavoratori eccetto "Lav_2" e "Lav_11"5. Estrarre un lavoratore con il minor numero di giorni di malattia6. Creare un vettore ordinato e non etichettato contenente gli

elementi distinti del vettore originario

Page 18: Laboratorio di Statistica e Analisi dei Daticesari.di.unimi.it/teaching/SADcesari.pdfunique(x) #copia di x senza ripetizioni sample(x, n,replace =TRUE) #estrae n elementi a caso table(x)

Data frame

Tabella con vettori colonna numerici, logici o a caratteri (fattori)

## Nome.Passato.Tentativi## 1 Pippo,FALSE,0## 2 Pluto,TRUE,1## 3 Paperino,FALSE,7## 4 Topolino,FALSE,1## 5 Minni,TRUE

Page 19: Laboratorio di Statistica e Analisi dei Daticesari.di.unimi.it/teaching/SADcesari.pdfunique(x) #copia di x senza ripetizioni sample(x, n,replace =TRUE) #estrae n elementi a caso table(x)

CSV

Rappresentazione testuale di un data frame: comma-separatedvalues

Nome,Passato,TentativiPippo,FALSE,0Pluto,TRUE,1Paperino,FALSE,7Topolino,FALSE,1Minni,TRUE

Page 20: Laboratorio di Statistica e Analisi dei Daticesari.di.unimi.it/teaching/SADcesari.pdfunique(x) #copia di x senza ripetizioni sample(x, n,replace =TRUE) #estrae n elementi a caso table(x)

Importare un data frame

I Creare un data frame a partire da un file csv

d1 <- read.delim(file="esami.csv", sep=",", dec=";")

Page 21: Laboratorio di Statistica e Analisi dei Daticesari.di.unimi.it/teaching/SADcesari.pdfunique(x) #copia di x senza ripetizioni sample(x, n,replace =TRUE) #estrae n elementi a caso table(x)

Accesso agli elementi di un data frame

I Se il data frame è etichettato il comando attach permette diaccedere alle colonne semplicemente

d1 <- read.delim(file="esami.csv", sep=",", dec=";")attach(d1)sum(Passato) # equivalente a sum(d1$Passato)

I Se il data frame non è etichettato, utilizzare coppie dicoordinate

d1[i,j] #restituisce l'elemento di posto (i,j)d1[i,] #restituisce la i-esima rigad1[,j] #restituisce la j-esima colonna

Page 22: Laboratorio di Statistica e Analisi dei Daticesari.di.unimi.it/teaching/SADcesari.pdfunique(x) #copia di x senza ripetizioni sample(x, n,replace =TRUE) #estrae n elementi a caso table(x)

Sotto-data-frameEstrarre un sottoinsieme di un data frame

subset(d1, !is.na(Tentativi), select=c(Nome, Tentativi))

## Nome Tentativi## 1 Pippo 0## 2 Pluto 1## 3 Paperino 7## 4 Topolino 1

subset(d1, Nome %in% c("Pippo","Pluto") & Passato==TRUE)

## Nome Passato Tentativi## 2 Pluto TRUE 1

Page 23: Laboratorio di Statistica e Analisi dei Daticesari.di.unimi.it/teaching/SADcesari.pdfunique(x) #copia di x senza ripetizioni sample(x, n,replace =TRUE) #estrae n elementi a caso table(x)

Esercizi

Scaricate il file dati-ospedali.csv dalla pagina del laboratorio

1. Visualizzare il dataframe2. Calcolare le frequenze assolute e relative dell’attributo Regione3. Estrarre il sotto-data-frame contenente nome (attributo

Denominazione.Str..Pubblica.New) e numero di medici(attributo Medici.SSN) degli ospedali con meno di 200 medici.

4. Visualizzare il nome degli ospedali della Lombardia5. Calcolare il numero medio di ingegneri (Ingegneri.SSN)

presenti negli ospedali campani6. Calcolare la varianza degli assistenti sociali

(Assistenti.sociali.SSN) presenti negli ospedali con più di400 medici

Page 24: Laboratorio di Statistica e Analisi dei Daticesari.di.unimi.it/teaching/SADcesari.pdfunique(x) #copia di x senza ripetizioni sample(x, n,replace =TRUE) #estrae n elementi a caso table(x)

Esercizi

7. Qual è la regione con più ospedali? E l’ospedale con menomedici?

8. Visualizzare in ordine alfabetico il nome delle 10 strutture conpiù medici

9. Visualizzare la riga contenente l’ospedale con meno ingegneri10. Visualizzare il numero di ospedali che ha dichiarato il numero

di odontoiatri (Odontoiatri.SSN)11. Calcolare le frequenze assolute del numero di odontoiatri.

Utilizzare questo numero per calcolare le frequenze relative

Page 25: Laboratorio di Statistica e Analisi dei Daticesari.di.unimi.it/teaching/SADcesari.pdfunique(x) #copia di x senza ripetizioni sample(x, n,replace =TRUE) #estrae n elementi a caso table(x)

Esercizi

12. Quanti sono gli ospedali presenti nel dataset?13. Quanti sono in tutto gli attributi del dataset che descrivono un

ospedale?14. Calcolare media, varianza e coefficiente di variazione degli

attributi Medici.SSN e Farmacisti.SSN15. Notate una relazione tra il numero di medici e il numero di

farmacisti presenti in un ospedale? In caso affermativo, diquale tipo di relazione si tratta? Supportate la vostra rispostacon il valore di un indice numerico

16. Calcolare le frequenze assolute congiunte degli attributiAvvocati.SSN e grande.struttura. Utilizzate i valori dellatabella per calcolare la tabella delle frequenze assolute marginalidel numero di avvocati e quella della tipologia di ospedale

Page 26: Laboratorio di Statistica e Analisi dei Daticesari.di.unimi.it/teaching/SADcesari.pdfunique(x) #copia di x senza ripetizioni sample(x, n,replace =TRUE) #estrae n elementi a caso table(x)

Grafici

Grafico di dispersione

x <- 1:10y <- x^2plot(x, y)

Page 27: Laboratorio di Statistica e Analisi dei Daticesari.di.unimi.it/teaching/SADcesari.pdfunique(x) #copia di x senza ripetizioni sample(x, n,replace =TRUE) #estrae n elementi a caso table(x)

Grafico di dispersione

2 4 6 8 10

020

4060

8010

0

x

y

Page 28: Laboratorio di Statistica e Analisi dei Daticesari.di.unimi.it/teaching/SADcesari.pdfunique(x) #copia di x senza ripetizioni sample(x, n,replace =TRUE) #estrae n elementi a caso table(x)

Grafico a barre

x <- c(5,5,1,2,2,3,4,2,4,5,5,6)barplot(prop.table(table(x)))

Page 29: Laboratorio di Statistica e Analisi dei Daticesari.di.unimi.it/teaching/SADcesari.pdfunique(x) #copia di x senza ripetizioni sample(x, n,replace =TRUE) #estrae n elementi a caso table(x)

Grafico a barre

1 2 3 4 5 6

0.00

0.05

0.10

0.15

0.20

0.25

0.30

Page 30: Laboratorio di Statistica e Analisi dei Daticesari.di.unimi.it/teaching/SADcesari.pdfunique(x) #copia di x senza ripetizioni sample(x, n,replace =TRUE) #estrae n elementi a caso table(x)

Istogramma

y <- rnorm(100) #ne parleremo in seguitohist(y)

Page 31: Laboratorio di Statistica e Analisi dei Daticesari.di.unimi.it/teaching/SADcesari.pdfunique(x) #copia di x senza ripetizioni sample(x, n,replace =TRUE) #estrae n elementi a caso table(x)

Istogramma

Histogram of y

y

Fre

quen

cy

−4 −3 −2 −1 0 1 2 3

010

2030

Page 32: Laboratorio di Statistica e Analisi dei Daticesari.di.unimi.it/teaching/SADcesari.pdfunique(x) #copia di x senza ripetizioni sample(x, n,replace =TRUE) #estrae n elementi a caso table(x)

Plot della cumulativa empirica

x <- c(5,5,1,2,2,3,4,2,4,5,5,6)y <- rnorm(100) #ne parleremo in seguitopar(mfrow=c(1,2)) #affianca due graficiplot(ecdf(x))plot(ecdf(y))par(mfrow=c(1,1)) #interrompe l'affiancamento

Page 33: Laboratorio di Statistica e Analisi dei Daticesari.di.unimi.it/teaching/SADcesari.pdfunique(x) #copia di x senza ripetizioni sample(x, n,replace =TRUE) #estrae n elementi a caso table(x)

Plot della cumulativa empirica

0 1 2 3 4 5 6 7

0.0

0.2

0.4

0.6

0.8

1.0

ecdf(x)

x

Fn(

x)

−2 −1 0 1 2

0.0

0.2

0.4

0.6

0.8

1.0

ecdf(y)

x

Fn(

x)

Page 34: Laboratorio di Statistica e Analisi dei Daticesari.di.unimi.it/teaching/SADcesari.pdfunique(x) #copia di x senza ripetizioni sample(x, n,replace =TRUE) #estrae n elementi a caso table(x)

Boxplot

Rappresenta la distribuzione di un vettore di numeri, cerchiando glioutlier (ne parleremo in seguito)

x <- c(5,5,1,2,2,3,4,2,4,5,5,6)z <- c(x, -5, 11, 12)boxplot(z)

Page 35: Laboratorio di Statistica e Analisi dei Daticesari.di.unimi.it/teaching/SADcesari.pdfunique(x) #copia di x senza ripetizioni sample(x, n,replace =TRUE) #estrae n elementi a caso table(x)

Boxplot−

50

510

Page 36: Laboratorio di Statistica e Analisi dei Daticesari.di.unimi.it/teaching/SADcesari.pdfunique(x) #copia di x senza ripetizioni sample(x, n,replace =TRUE) #estrae n elementi a caso table(x)

Qqplot

Grafico di dispersione dei quantili di due distribuzioni. Più ledistribuzioni sono simili, più si avvicina alla bisettrice del primoquadrante (ne riparleremo in seguito)

x <- c(5,5,1,2,2,3,4,2,4,5,5,6)n <- length(x)x1 <- sample(x,n)x2 <- 1:npar(mfrow=c(1,2)) #affianca due graficiqqplot(x,x1) #stessa distribuzioneqqplot(x,x2) #distribuzione molto diversa

Page 37: Laboratorio di Statistica e Analisi dei Daticesari.di.unimi.it/teaching/SADcesari.pdfunique(x) #copia di x senza ripetizioni sample(x, n,replace =TRUE) #estrae n elementi a caso table(x)

1 2 3 4 5 6

12

34

56

x

x1

1 2 3 4 5 6

24

68

1012

x

x2

Page 38: Laboratorio di Statistica e Analisi dei Daticesari.di.unimi.it/teaching/SADcesari.pdfunique(x) #copia di x senza ripetizioni sample(x, n,replace =TRUE) #estrae n elementi a caso table(x)

Diagramma di Pareto

Installare la libreria qcc con il comandoinstall.packages("qcc")

library(qcc) #carica la libreriax <- c(1,2,2,4,2,4,2,1,5,5,2,3,1)pareto.chart(prop.table(table(x)))

Page 39: Laboratorio di Statistica e Analisi dei Daticesari.di.unimi.it/teaching/SADcesari.pdfunique(x) #copia di x senza ripetizioni sample(x, n,replace =TRUE) #estrae n elementi a caso table(x)

Diagramma di Pareto

Generato con la libreria qcc

2 1 4 5 3

Fre

quen

cy

Pareto Chart for prop.table(table(x))

0.0

0.2

0.4

0.6

0.8

1.0

0%25

%50

%75

%10

0%

Cum

ulat

ive

Per

cent

age

#### Pareto chart analysis for prop.table(table(x))## Frequency Cum.Freq. Percentage Cum.Percent.## 2 0.38461538 0.38461538 38.46153846 38.46153846## 1 0.23076923 0.61538462 23.07692308 61.53846154## 4 0.15384615 0.76923077 15.38461538 76.92307692## 5 0.15384615 0.92307692 15.38461538 92.30769231## 3 0.07692308 1.00000000 7.69230769 100.00000000

Page 40: Laboratorio di Statistica e Analisi dei Daticesari.di.unimi.it/teaching/SADcesari.pdfunique(x) #copia di x senza ripetizioni sample(x, n,replace =TRUE) #estrae n elementi a caso table(x)

Curve ROCInstallare la libreria pROC con il comandoinstall.packages("pROC")

library(pROC) #carica la libreriaplot.roc(roc(Esito, ValoreTest))

Page 41: Laboratorio di Statistica e Analisi dei Daticesari.di.unimi.it/teaching/SADcesari.pdfunique(x) #copia di x senza ripetizioni sample(x, n,replace =TRUE) #estrae n elementi a caso table(x)

Curve ROCGenerato con la libreria pROC

Specificity

Sen

sitiv

ity

1.0 0.5 0.0

0.0

0.2

0.4

0.6

0.8

1.0

Page 42: Laboratorio di Statistica e Analisi dei Daticesari.di.unimi.it/teaching/SADcesari.pdfunique(x) #copia di x senza ripetizioni sample(x, n,replace =TRUE) #estrae n elementi a caso table(x)

Esercizi

1. Scaricare ed importare il file capelli.csv dalla pagina dellaboratorio

2. Calcolare la correlazione tra la lunghezza e le altre variabili3. Generare i relativi grafici di dispersione. Confermano il valore

numerico?4. Generare affiancati il boxplot e l’istogramma della colonna

spesaShampoMensile. Cosa li accomuna?

Page 43: Laboratorio di Statistica e Analisi dei Daticesari.di.unimi.it/teaching/SADcesari.pdfunique(x) #copia di x senza ripetizioni sample(x, n,replace =TRUE) #estrae n elementi a caso table(x)

Esercizi

1. Scaricare ed importare il file dati-ospedali.csv dalla paginadel laboratorio

2. Generare affiancati l’istogramma ed il grafico della cumulativaempirica dell’attributo Medici.SSN

3. Controllare con un qqplot se il numero di medici(Medici.SSN) e il numero di farmacisti (Farmacisti.SSN)hanno la stessa distribuzione

4. Generare il diagramma di Pareto ed il grafico a barre dellefrequenze relative del carattere Biologi.Universitari. Cosasi nota?

Page 44: Laboratorio di Statistica e Analisi dei Daticesari.di.unimi.it/teaching/SADcesari.pdfunique(x) #copia di x senza ripetizioni sample(x, n,replace =TRUE) #estrae n elementi a caso table(x)

Analisi Esplorative

1. Scaricare e svolgere l’analisi esplorativa finanziamenti dallink

I http://cesari.di.unimi.it/teaching/anexp-finanziamenti.pdf

2. Scaricare e svolgere l’analisi esplorativa cani dal linkI http://cesari.di.unimi.it/teaching/anexp-cani.pdf

Page 45: Laboratorio di Statistica e Analisi dei Daticesari.di.unimi.it/teaching/SADcesari.pdfunique(x) #copia di x senza ripetizioni sample(x, n,replace =TRUE) #estrae n elementi a caso table(x)

Calcolo Combinatorio

1. Un lucchetto per biciclette ha un dispositivo di chiusura acombinazione formato da tre rotelle dentellate imperniate,ognuna delle quali può essere ruotata su 10 posizioni numerateda 0 a 9. Quante combinazioni segrete si possono formare?

2. Il PIN di ogni tessera bancomat è costituito da 5 cifre. Quantisono i possibili codici segreti?

3. Supponiamo che in un certo paese straniero le targhe delleautomobili siano costituite da due lettere diverse dell’alfabetoitaliano e da tre cifre, dallo 0 al 9. Quante targhe si possonoformare?

4. Se gli studenti del corso di statistica sono n, qual è laprobabilità che non ci siano studenti che hanno il compleannonello stesso giorno? Qual è la probabilità che almeno duestudenti abbiano il compleanno nello stesso giorno?

Page 46: Laboratorio di Statistica e Analisi dei Daticesari.di.unimi.it/teaching/SADcesari.pdfunique(x) #copia di x senza ripetizioni sample(x, n,replace =TRUE) #estrae n elementi a caso table(x)

Calcolo delle probabilità

1. Si consideri il seguente esperimento casuale: “si lancia tre volteuna moneta”. Qual è lo spazio degli esiti di questo esperimentocasuale? Si scriva esplicitamente l’evento “si ottengono piùteste che croci”

2. Si consideri il seguente esperimento casuale: “Si tirano duedadi”. Si considerino gli eventi E = “la somma dei punteggi èdispari”, F = “il primo dado realizza un 1” e G = “la sommadei punteggi è 5”. Si descrivano gli eventi E ∩ F , E ∪ F ,F ∩G, E ∩ F c e E ∩ F ∩G

Page 47: Laboratorio di Statistica e Analisi dei Daticesari.di.unimi.it/teaching/SADcesari.pdfunique(x) #copia di x senza ripetizioni sample(x, n,replace =TRUE) #estrae n elementi a caso table(x)

Calcolo delle probabilità

3. Si consideri il seguente esperimento casuale: “Un sistema ècomposto da 4 componenti, ciascuno dei quali o funzionaoppure è guasto. Si osserva lo stato dei componenti ottenendoun vettore (x1, x2, x3, x4), dove xi è 1 oppure 0 a seconda cheil componente i-esimo funzioni oppure no”.3.1 Da quanti elementi è formato lo spazio degli esiti?3.2 Il sistema nel suo insieme funziona fintantoché entrambi i

componenti 1 e 2 oppure entrambi i componenti 3 e 4funzionano. Specifica tutti gli esiti dell’evento il “sistemafunziona”.

3.3 Sia E l’evento “i componenti 1 e 3 sono guasti”. Quanti esiticontiene?

4. Si dimostri che in uno spazio degli esiti Ω dotato di unaprobabilità P, per ogni evento E,F ⊂ Ω vale la disuguaglianzaseguente

P (E ∩ F ) ≥ P (E) + P (F )− 1.

Page 48: Laboratorio di Statistica e Analisi dei Daticesari.di.unimi.it/teaching/SADcesari.pdfunique(x) #copia di x senza ripetizioni sample(x, n,replace =TRUE) #estrae n elementi a caso table(x)

Calcolo delle probabilità

5. Un gruppo di 5 bambini e 10 bambine è in fila in ordinecasuale, nel senso che tutte le 15! possibili permutazioni sisuppongono equiprobabili.5.1 Qual è la probabilità che il quarto della fila sia un bambino?5.2 E il dodicesimo?5.3 Qual è la probabilità che un determinato bambino occupi la

terza posizione?

6. In un comune vi sono 5 alberghi. Se 3 persone devono scegliereun albergo in cui pernottare, qual è la probabilità che finiscanotutte in alberghi differenti? Che cosa stiamo assumendo senzadirlo esplicitamente?

Page 49: Laboratorio di Statistica e Analisi dei Daticesari.di.unimi.it/teaching/SADcesari.pdfunique(x) #copia di x senza ripetizioni sample(x, n,replace =TRUE) #estrae n elementi a caso table(x)

Calcolo delle probabilità

7. La media del salario annuale di un gruppo di 100 lavoratoriimpiegati nell’amministrazione di una grande azienda è di130 000 dollari con una deviazione standard di 20 000 dollari.Se si prende una persona a caso da questo gruppo cosapossiamo dire sulla probabilità che il suo salario sia7.1 tra i 90 000 e i 170 000 dollari.7.2 superiore a 150 000 dollari?

8. In una certa regione vi sono due ditte che producono forni amicroonde. Quelli della fabbrica A sono difettosi conprobabilità 0.05, mentre quelli della fabbrica B, con probabilità0.01. Supponi di aver acquistato due apparecchi prodotti dallastessa ditta, che può essere la A o la B con probabilità del50%. Se il primo microonde è difettoso, qual è la probabilitàcondizionata che sia difettoso anche il secondo?

Page 50: Laboratorio di Statistica e Analisi dei Daticesari.di.unimi.it/teaching/SADcesari.pdfunique(x) #copia di x senza ripetizioni sample(x, n,replace =TRUE) #estrae n elementi a caso table(x)

Calcolo delle probabilità9. Hai chiesto ad un vicino di innaffiare una piantina delicata

mentre sei in vacanza. Pensi che senza acqua la piantina muoiacon probabilità 0.8, mentre se innaffiata questa probabilità siridurrebbe a 0.15. La tua fiducia che il vicino si ricordi diinnaffiarla è del 90%.9.1 Qual è la probabilità che la pianta sia ancora viva al tuo ritorno?9.2 Se fosse morta, quale sarebbe la probabilità che il vicino si sia

dimenticato di innaffiarla?

10. Una compagnia di assicurazioni classifica i suoi clienti in trefasce: basso rischio, medio rischio, alto rischio. Le suestatistiche indicano che le probabilità che un cliente delle trefasce abbia un incidente entro un periodo di un anno sonorispettivamente 0.05, 0.15, e 0.30. Se il 20% dei clienti sono abasso rischio, il 50% a medio rischio e il 30% ad alto rischio,che percentuale dei clienti avrà mediamente incidenti in unlasso di un anno? Se un cliente non ha avuto incidenti nel 1987,qual è la probabilità che appartenga a ciascuna delle tre fasce?

Page 51: Laboratorio di Statistica e Analisi dei Daticesari.di.unimi.it/teaching/SADcesari.pdfunique(x) #copia di x senza ripetizioni sample(x, n,replace =TRUE) #estrae n elementi a caso table(x)

Calcolo delle probabilità

11. Dimostra che se X1 e X2 hanno la stessa distribuzione, allora

Cov(X1 +X2, X1 −X2) = 0.

12. Consideriamo una variabile aleatoria X che può assumere ivalori 1, 2 o 3. Se sappiamo che

fX(1) = 13 , fX(2) = 3

7 .

12.1 Quanto vale fX(3)?12.2 Disegnare il grafico di questa funzione di massa.12.3 Disegnare il grafico della relativa funzione di ripartizione.

Page 52: Laboratorio di Statistica e Analisi dei Daticesari.di.unimi.it/teaching/SADcesari.pdfunique(x) #copia di x senza ripetizioni sample(x, n,replace =TRUE) #estrae n elementi a caso table(x)

Calcolo delle probabilità

13. La funzione di ripartizione di X è definita come segue.

FX(x) =

0, x < 0x2 0 ≤ x < 123 1 ≤ x < 21112 2 ≤ x < 31 3 ≤ x

13.1 Se ne tracci il grafico13.2 Quanto vale P (X > 1/2)?13.3 Quanto vale P (2 ≤ X ≤ 4)?13.4 Quanto vale P (X ≤ 3)?13.5 Quanto vale P (X = 1)?

Page 53: Laboratorio di Statistica e Analisi dei Daticesari.di.unimi.it/teaching/SADcesari.pdfunique(x) #copia di x senza ripetizioni sample(x, n,replace =TRUE) #estrae n elementi a caso table(x)

Calcolo delle probabilità

14. Un tipo di prodotti vengono classificati a seconda dei lorodifetti e della fabbrica che li ha prodotti. Sia X1 il numero (1 o2) della fabbrica, e sia X2 il numero di difetti per pezzo (chepossono essere da 0 a 3), di un prodotto scelto a caso tra latotalità di quelli esistenti. La tabella seguente riporta lafunzione di massa di probabilità congiunta per queste duevariabili aleatorie discrete. Le righe si riferiscono alla variabileX1, mentre le colonne alla variabile X2

14.1 Trova le distribuzioni marginali di X1 e X2.14.2 Calcola media e varianza di X2.

0 1 2 3

1 1/8 1/16 3/16 1/82 1/16 1/16 1/8 1/4

Page 54: Laboratorio di Statistica e Analisi dei Daticesari.di.unimi.it/teaching/SADcesari.pdfunique(x) #copia di x senza ripetizioni sample(x, n,replace =TRUE) #estrae n elementi a caso table(x)

Distribuzioni in R

Esistono quattro comandi di base per ogni distribuzione:

I r: restituisce un vettore di numeri casuali estratti secondo ladistribuzione

I d: restituisce il vettore della densità (o funzione di massa) delladistribuzione valutata nei valori del vettore di input

I p: restituisce il vettore della funzione di ripartizione (ocumulativa) della distribuzione valutata nei valori del vettore diinput

I q: restituisce il vettore dei quantili della distribuzione valutatanei valori del vettore di input

Page 55: Laboratorio di Statistica e Analisi dei Daticesari.di.unimi.it/teaching/SADcesari.pdfunique(x) #copia di x senza ripetizioni sample(x, n,replace =TRUE) #estrae n elementi a caso table(x)

Variabili aleatorie discrete: Binomiale

I rbinom(n, size, prob): restituisce un vettore di nn numeriestratti secondo una distribuzione Binomiale di parametri size,prob

I dbinom(x, size, prob): restituisce la probabilità diottenere esattamente x successi in un esperimento dicotomicoripetuto size volte con una probabilità di successo prob (xpuò essere un vettore)

I pbinom(q, size, prob): restituisce il valore della funzionedi ripartizione in q (q può essere un vettore)

I qbinom(p, size, prob): restituisce il valore del quantile diordine p (p può essere un vettore)

La variabile aleatoria di Bernoulli si ottiene ponendo size = 1

Page 56: Laboratorio di Statistica e Analisi dei Daticesari.di.unimi.it/teaching/SADcesari.pdfunique(x) #copia di x senza ripetizioni sample(x, n,replace =TRUE) #estrae n elementi a caso table(x)

Variabili aleatorie discrete: Ipergeometrica

I rhyper(nn, m, n, k): restituisce un vettore di n numeriestratti secondo una distribuzione Ipergeometrica di parametrim, n, k

I dhyper(x, m, n, k): restituisce la probabilità di estrarreesattamente x elementi da un sottoinsieme di n elementi di uninsieme di n+m elementi usando k estrazioni senza reinserimento

I phyper(q, m, n, k): restituisce il valore della funzione diripartizione in q (q può essere un vettore)

I qhyper(p, m, n, k): restituisce il valore del quantile diordine p (p può essere un vettore)

Page 57: Laboratorio di Statistica e Analisi dei Daticesari.di.unimi.it/teaching/SADcesari.pdfunique(x) #copia di x senza ripetizioni sample(x, n,replace =TRUE) #estrae n elementi a caso table(x)

Variabili aleatorie discrete: Geometrica

I rgeom(n, prob): restituisce un vettore di n numeri estrattisecondo una distribuzione Geometrica di parametro p

I dgeom(x, prob): restituisce la probabilità di avere unsuccesso dopo esattamente x insuccessi in una successione diesperimenti dicotomici con una probabilità di successo prob (xpuò essere un vettore)

I pgeom(q, prob): restituisce il valore della funzione diripartizione in q (q può essere un vettore)

I qgeom(p, prob): restituisce il valore del quantile di ordine p(p può essere un vettore)

Page 58: Laboratorio di Statistica e Analisi dei Daticesari.di.unimi.it/teaching/SADcesari.pdfunique(x) #copia di x senza ripetizioni sample(x, n,replace =TRUE) #estrae n elementi a caso table(x)

Variabili aleatorie discrete: Poisson

I rpois(n, lambda): restituisce un vettore di n numeri estrattisecondo una distribuzione Poisson di parametro lambda

I dpois(x, lambda): restituisce il valore λx/(eλx!

)(x può

essere un vettore)I ppois(q, lambda): restituisce il valore della funzione di

ripartizione in q (q può essere un vettore)I qpois(p, lambda): restituisce il valore del quantile di ordine

p (p può essere un vettore)

Page 59: Laboratorio di Statistica e Analisi dei Daticesari.di.unimi.it/teaching/SADcesari.pdfunique(x) #copia di x senza ripetizioni sample(x, n,replace =TRUE) #estrae n elementi a caso table(x)

Variabili aleatorie continue: UniformeI runif(n, min, max): restituisce un vettore di n numeri

estratti dall’intervallo [min, max] secondo una distribuzioneuniforme continua

I dunif(x, min, max): restituisce il valore

1max− min

I[min, max](x)

della densità in x (x può essere un vettore)I punif(q, min, max): restituisce il valore della funzione di

ripartizione in q (q può essere un vettore), ovvero 0 se q <min, 1 se q > max e

q - minmax - min

se q ∈ [min, max]

I qunif(p, min, max): restituisce il valore del quantile diordine p (p può essere un vettore)

Page 60: Laboratorio di Statistica e Analisi dei Daticesari.di.unimi.it/teaching/SADcesari.pdfunique(x) #copia di x senza ripetizioni sample(x, n,replace =TRUE) #estrae n elementi a caso table(x)

Variabili aleatorie continue: Normale (o Gaussiana)

I rnorm(n, mean, sd): restituisce un vettore di n numeriestratti secondo una distribuzione Normale di parametri mean,sd

I dnorm(x, mean, sd): restituisce il valore

1sd√

2πe

− (x−mean)2

2(sd2)

(x può essere un vettore)I pnorm(q, mean, sd): restituisce il valore della funzione di

ripartizione in q (q può essere un vettore)I qnorm(p, mean, sd): restituisce il valore del quantile di

ordine p (p può essere un vettore)

Page 61: Laboratorio di Statistica e Analisi dei Daticesari.di.unimi.it/teaching/SADcesari.pdfunique(x) #copia di x senza ripetizioni sample(x, n,replace =TRUE) #estrae n elementi a caso table(x)

Variabili aleatorie continue: Esponenziale

I rexp(n, rate): restituisce un vettore di n numeri estrattisecondo una distribuzione Esponenziale di parametro rate

I dexp(x, rate): restituisce il valore rate · e−rate·x (x puòessere un vettore)

I pexp(q, rate): restituisce il valore della funzione diripartizione in q (q può essere un vettore)

I qexp(p, rate): restituisce il valore del quantile di ordine p (ppuò essere un vettore)

Page 62: Laboratorio di Statistica e Analisi dei Daticesari.di.unimi.it/teaching/SADcesari.pdfunique(x) #copia di x senza ripetizioni sample(x, n,replace =TRUE) #estrae n elementi a caso table(x)

Esercizi

1. Un’urna contiene 10 palline di cui 4 bianche e 6 nere. Sieseguono 5 estrazioni con reimmissione1.1 Tracciare grafico della funzione massa di probabilità della

variabile casuale X = "numero di palline biancheestratte"

1.2 Calcolare la probabilità di estrarre 2 palline bianche1.3 Calcolare la probabilità di estrarre al più 2 palline bianche1.4 Calcolare la probabilità di estrarre almeno 2 palline bianche1.5 Qual è il numero minimo x tale che la probabilità di estrarre al

più x palline bianche sia almeno 0.8?

Page 63: Laboratorio di Statistica e Analisi dei Daticesari.di.unimi.it/teaching/SADcesari.pdfunique(x) #copia di x senza ripetizioni sample(x, n,replace =TRUE) #estrae n elementi a caso table(x)

Esercizi

2. Si eseguono 10 estrazioni senza reimmissione da un’urna2.1 Tracciare il grafico della funzione massa di probabilità della

variabile casuale X = "numero di palline biancheestratte" nei seguenti casi:2.1.1 l’urna contenente 100 palline di cui 20 bianche e le restanti nere2.1.2 l’urna contiene 100 palline di cui 2 bianche e le restanti nere

2.2 Tracciare il grafico della funzione massa di probabilità dellavariabile casuale X nel caso dell’urna 1 se si eseguono 25estrazioni

2.3 Consideriamo l’urna 1 e k = 10 estrazioni. Si aumenti ilnumero totale M di palline nell’urna mantenendo uguale a 0.2 lafrazione di palline bianche. Per ciascun valore di M confrontaregraficamente la distribuzione di probabilità del numero di pallinebianche estratte nel caso di estrazioni con e senza reimmissione.Provare con 20, 40 e 200 palline bianche

Page 64: Laboratorio di Statistica e Analisi dei Daticesari.di.unimi.it/teaching/SADcesari.pdfunique(x) #copia di x senza ripetizioni sample(x, n,replace =TRUE) #estrae n elementi a caso table(x)

Esercizi

3. Calcolare la probabilità di ottenere più teste che croci lanciando7 volte una moneta truccata con probabilità di avere croce paria 0.45

4. Calcolare la probabilità di avere almeno 3 sei lanciando 5 dadia 12 facce

5. Calcolare la probabilità di estrarre 20 euro da un saccocontenente 47 monete da 1 centesimo e 53 da 2 euroestraendo (uniformemente) a caso 10 monete senza reinserirle

6. Un grammo di uranio emette mediamente 2152 particelle αogni millisecondo. Qual è con buona approssimazione laprobabilità che un grammo di uranio emetta al più 2000particelle α in un millisecondo?

Page 65: Laboratorio di Statistica e Analisi dei Daticesari.di.unimi.it/teaching/SADcesari.pdfunique(x) #copia di x senza ripetizioni sample(x, n,replace =TRUE) #estrae n elementi a caso table(x)

Esercizi

7. Si generi un campione di 10000 valori estratti da unadistribuzione geometrica di parametro p = 0.5

7.10 Si confrontino attraverso un qqplot la distribuzione empiricadei dati appena ottenuta e quella teorica

8. Un uomo si risveglia in mezzo al deserto senza acqua. Dopoogni minuto ha una probabilità del 3% di perdere conoscenzaper via delle condizioni estreme. Calcolare la probabilità chel’uomo perda conoscenza dopo almeno due ore e la probabilitàche l’uomo perda conoscenza dopo esattamente un quarto d’ora

9. Se un votante scelto a caso è favorevole ad una certa riformacon probabilità di 0.7, qual è la probabilità che su 10 votanti,esattamente 7 siano favorevoli?

Page 66: Laboratorio di Statistica e Analisi dei Daticesari.di.unimi.it/teaching/SADcesari.pdfunique(x) #copia di x senza ripetizioni sample(x, n,replace =TRUE) #estrae n elementi a caso table(x)

Esercizi10. Sia X una variabile aleatoria normale di parametri µ = 10 e

σ = 36. Calcola:10.1 P (X > 5)10.2 P (4 < X < 16)10.3 P (X < 8)

11. Il numero di errori tipografici per pagina di una certa rivistasegue una distribuzione di Poisson. Sapendo che mediamentesono presenti 0.2 errori per pagina, determinare la probabilitàche una pagina contenga:11.1 nessun refuso11.2 più refusi

12. Arrivi alla fermata dell’autobus alle 10:00 e sei certo che nepasserà uno in un momento distribuito uniformemente tra le10:00 e le 10:3012.1 Qual è la probabilità che tu debba aspettare più di 10 minuti?12.2 Se alle 10:15 l’autobus non è ancora arrivato, qual è la

probabilità che tu debba aspettare almeno altri 10 minuti?

Page 67: Laboratorio di Statistica e Analisi dei Daticesari.di.unimi.it/teaching/SADcesari.pdfunique(x) #copia di x senza ripetizioni sample(x, n,replace =TRUE) #estrae n elementi a caso table(x)

Esercizi

13. Il signor Jones è convinto che il tempo di vita di unaautomobile (in migliaia di chilometri percorse) sia una variabilealeatoria esponenziale di parametro 1/20. Il signor Smith hauna macchina usata da vendere che ha percorso circa 10 000chilometri13.1 Se il signor Jones decide di comprarla, che probabilità ha di farle

fare almeno altri 20 000 chilometri prima che sia da buttare?13.2 Il modello assunto dal signor Jones è ragionevole?

14. Sia X una variabile casuale binomiale di parametri n = 100 ep = 0.714.1 Tracciate la funzione di ripartizione di X14.2 Calcolate, con un unico comando, il primo quartile, il quantile di

ordine 0.9 e la mediana di X14.3 Calcolare la probabilità P (X ≤ 60)14.4 Calcolare la probabilità P (X > 88)14.5 Trovare il più piccolo valore x tale che P (X ≤ x) ≥ 0.9

Page 68: Laboratorio di Statistica e Analisi dei Daticesari.di.unimi.it/teaching/SADcesari.pdfunique(x) #copia di x senza ripetizioni sample(x, n,replace =TRUE) #estrae n elementi a caso table(x)

Esercizi

15. Un’urna contiene M = 50 palline di cui K = 5 bianche.Estraggo una pallina dall’urna, ne controllo il colore e registro 1se è bianca e 0 altrimenti; poi rimetto la pallina nell’urna15.2 Simulare questo esperimento per 100 volte. (Ciò equivale a

generare un vettore di 100 valori estratti da una distribuzionebernoulliana di parametro p = 1/10)

15.3 Verificare che le frequenze relative dei 100 risultati ottenuti(cioè delle 100 osservazioni) rispettino una legge bernoulliana diparametro p = 0.1

15.4 Tracciare il grafico della funzione di ripartizione teorica esovrapporgli utilizzando comando lines() il grafico dellafunzione cumulativa empirica

15.5 Verificare che la media e la varianza del campione generato siavvicinino al valore atteso e alla varianza del modello teoricoche lo ha generato

Page 69: Laboratorio di Statistica e Analisi dei Daticesari.di.unimi.it/teaching/SADcesari.pdfunique(x) #copia di x senza ripetizioni sample(x, n,replace =TRUE) #estrae n elementi a caso table(x)

Esercizi

16. Sia X una variabile aleatoria con varianza 1. Sia inoltreX1, . . . , Xn un campione aleatorio di numerosità n = 1000estratto da X, ovvero siano X1, . . . , Xn variabili aleatorieindipendenti, tutte distribuite come X16.1 Si fornisca uno stimatore per il valore atteso di X16.2 Si fornisca una maggiorazione della probabilità che si commetta,

nello stimare il valore atteso di X, un errore per eccesso o perdifetto superiore a 1/100

16.3 Si fornisca una condizione sufficiente sull’errore commesso pereccesso o per difetto nello stimare il valore atteso di X affinchéla probabilità di commettere al più tale errore sia almeno 0.99

Page 70: Laboratorio di Statistica e Analisi dei Daticesari.di.unimi.it/teaching/SADcesari.pdfunique(x) #copia di x senza ripetizioni sample(x, n,replace =TRUE) #estrae n elementi a caso table(x)

Esercizi di riepilogo su R

0. Sia X una variabile aleatoria bernulliana di parametro p=0.1.Tracciare il grafico della funzione massa di probabilità

Scaricare dalla pagina del corso il file regolarita-mensile-tgv.csv

1. Importare i dati (tenendo presente che il separatore di decimaliper i numeri è la virgola) e dire quanti casi sono presenti neldataset

2. Consideriamo il carattere Direttrice, che indica la zona lungo laquale circolano i treni2.1 Quante sono le direttrici di circolazione?2.2 Calcolare la tabella delle frequenze relative dei treni lungo le

diverse direttrici2.3 I Mostrare un grafico adeguato per riassumere la distribuzione

delle zone di circolazione

Page 71: Laboratorio di Statistica e Analisi dei Daticesari.di.unimi.it/teaching/SADcesari.pdfunique(x) #copia di x senza ripetizioni sample(x, n,replace =TRUE) #estrae n elementi a caso table(x)

Esercizi di riepilogo su R

3. Consideriamo il carattere NumeroTreniAnnullati

3.1 Calcolare la tabella delle frequenze assolute del numero di treniannullati

3.2 In totale, quanti sono stati i treni annullati?3.3 I Mostrare un grafico adeguato per riassumere la distribuzione

del numero di treni annullati3.4 L’informazione riguardo al numero di treni annullati è presente

per tutte le tratte?3.5 In media, quanti sono stati i treni annullati per tratta?3.6 Calcolare la deviazione standard del numero di treni annullati

4. In questo punto vogliamo studiare la possibile relazione tra ilnumero di treni annullati e il numero di treni programmato4.1 Visualizzare il diagramma di dispersione per gli attributi

NumeroTreniProgrammati e NumeroTreniAnnullati4.2 I Calcolare il coefficiente di correlazione tra i due attributi e

commentare il risultato ottenuto4.3 I Notate una relazione tra il numero di treni annullati e il numero

di treni programmato? Giustificate la risposta

Page 72: Laboratorio di Statistica e Analisi dei Daticesari.di.unimi.it/teaching/SADcesari.pdfunique(x) #copia di x senza ripetizioni sample(x, n,replace =TRUE) #estrae n elementi a caso table(x)

Esercizi di riepilogo su R

5. Prendiamo in considerazione l’IndiceRegolarita

5.1 Visualizzare l’istogramma5.2 Determinare la mediana5.3 Determinare il decimo percentile5.4 Tracciare il diagramma di dispersione per le seguenti coppie di

caratteri:5.4.1 IndiceRegolarita e PercentualeTreniCircolanti,5.4.2 IndiceRegolarita e PercentualeTreniAnnullati,5.4.3 IndiceRegolarita e PercentualeTreniInritardo

5.5 I Osservando i grafici ottenuti è facile concludere chel’IndiceRegolarita è un carattere derivato da un altrocarattere del dataset. Dire di quale carattere si tratta e scriverela relazione che esiste tra questo e l’IndiceRegolarita

5.6 Per ciascuna delle quattro direttrici stampare boxplot eistogrammi relativi al carattere IndiceRegolarità

Page 73: Laboratorio di Statistica e Analisi dei Daticesari.di.unimi.it/teaching/SADcesari.pdfunique(x) #copia di x senza ripetizioni sample(x, n,replace =TRUE) #estrae n elementi a caso table(x)

Esercizi di riepilogo su R

6. In questo esercizio considereremo solamente il sottoinsieme deldataset relativo alle tratte presenti nelle zone di circolazioneNord e SudEst (per “tratta” intendiamo la linea che collegauna stazione di Partenza con una di Arrivo)6.1 Quante sono in tutto le tratte presenti su queste due direttrici?6.2 Calcolare i valori minimo (nmin) e massimo (nmax) di treni

circolanti sulle tratte appartenenti alle due direttrici

Page 74: Laboratorio di Statistica e Analisi dei Daticesari.di.unimi.it/teaching/SADcesari.pdfunique(x) #copia di x senza ripetizioni sample(x, n,replace =TRUE) #estrae n elementi a caso table(x)

Esercizi di riepilogo su R

7. La carta dei servizi delle ferrovie garantisce agli utenti pendolariche viaggiano tra una città A e una città B (quindi sulle tratteda A verso B e da B verso A) un rimborso di partedell’abbonamento. Tale rimborso viene effettuato se daldataset utilizzato nei punti precedenti emerge chel’IndiceRegolarita è risultato inferiore a 0.85 almeno nel 10%dei casi sulle due tratte considerate. Per facilitare i calcoli chedevono essere fatti dall’ufficio rimborsi, il programmatore dellasocietà ha pensato di inserire nel dataset una nuova colonna,denominata RisarcUtenti. Ha poi calcolato il valore diRisarcUtenti nel seguente modo: se IndiceRegolarita èminore di 0.85, imposta RisarcUtenti ad 1, altrimenti a 0.Si pensi tale regola come ad un algoritmo e non come ad uncomando in un particolare linguaggio di programmazione.

Page 75: Laboratorio di Statistica e Analisi dei Daticesari.di.unimi.it/teaching/SADcesari.pdfunique(x) #copia di x senza ripetizioni sample(x, n,replace =TRUE) #estrae n elementi a caso table(x)

Esercizi di riepilogo su R

8. 8.1 Calcolare la media del carattere RisarcUtenteIndichiamo con SN il collegamento STRASBOURG-NANTES, inentrambe le direzioni

8.2 Quante volte l’indice di regolarità sull’asse SN ha assunto unvalore minore di 0.85?

8.3 Calcolare la media del carattere RisarcUtente estesa al solocollegamento SN

8.4 Io viaggio regolarmente sull’asse SN. Ho diritto al rimborso?8.5 L’algoritmo usato dal programmatore per calcolare il carattere

RisarcUtenti come si comporta nel caso sia mancante ilvalore IndiceDiRegolarità?

8.6 Ho ragione nel lamentarmi che utilizzare il contenuto delcarattere RisarcUtenti per decidere se rimborsare potrebbenon essere onesto nel confronto degli utenti? Si giustifichi larisposta