Statistica descrittiva bivariata Massimo Aria

Documenti analoghi
statistica descrittiva bivariata

Statistica. Esercitazione 4 17 febbraio 2011 Medie condizionate. Covarianza e correlazione

Metodi Quantitativi per Economia, Finanza e Management. Lezione n 5 Analisi Bivariata I Parte

Corso di Laurea in Scienze dell Organizzazione Facoltà di Sociologia, Università degli Studi di Milano-Bicocca a.a. 2009/2010.

STATISTICA. Esonero 8 novembre 2014 Soluzione. Quesito 1.

Metodi Quantitativi per Economia, Finanza e Management. Lezione n 4 Analisi Bivariata I Parte

Analisi bivariata. Dott. Cazzaniga Paolo. Dip. di Scienze Umane e Sociali

Capitolo uno STATISTICA DESCRITTIVA BIVARIATA

Correlazione e regressione per problemi di Luciano Corso

REGISTRO DELLE LEZIONI

Statistica. Esercitazione 4 15 maggio 2012 Connessione. Medie condizionate. Covarianza e correlazione

REGISTRO DELLE LEZIONI

STATISTICA. Esonero 8 novembre 2014 Soluzione. Quesito 1.

Esercitazione finale - corso R base Francesco Vidoli Ottobre 2018

ESERCITAZIONI N. 3 corso di statistica

Statistica. Alfonso Iodice D Enza

Esercizi su distribuzioni doppie, dipendenza, correlazione e regressione (Statistica I, IV Canale)

Statistica. Variabili doppie. Domenico De Stefano. a.a. 2017/2018. Domenico De Stefano Descrittiva a.a. 2017/ / 62

Dipartimento di Sociologia e Ricerca Sociale. Corso di Laurea in Sociologia. Insegnamento di Statistica (a.a ) dott.ssa Gaia Bertarelli

Esercizio 4 (Regressione multipla)

Indice. centrale, dispersione e forma Introduzione alla Statistica Statistica descrittiva per variabili quantitative: tendenza

La Dipendenza. Monia Ranalli. Ranalli M. Dipendenza Settimana # 3 1 / 19

Uso della funzione FREQUENZA col foglio di calcolo CALC di OpenOffice 3.4

Statistica Descrittiva Soluzioni 8. Dipendenza

Analisi bivariata Il caso di caratteri qualitativi

Statistica descrittiva in due variabili

con fogli di calcolo Docente del laboratorio: Maria Silvia Pini

Corso in Statistica Medica

Esercizi di statistica

Istituzioni di Statistica

ANALISI STATISTICHE BIVARIATE. Tabelle di contingenza

Statistica Esercitazione. alessandro polli facoltà di scienze politiche, sociologia, comunicazione

ESERCITAZIONI N. 3 corso di statistica

Statistica Corso Base (Serale) Dott.ssa Cristina Mollica

INTRODUZIONE A R Lezione 2

Statistica bivariata Relazione tra variabili

Distribuzioni secondo due caratteri. Rappresentazioni e prime sintesi

Corso di Statistica. Distribuzioni doppie Relazioni tra due variabili. Prof.ssa T. Laureti a.a

STATISTICA (modulo I - Statistica Descrittiva) Soluzione Esercitazione I

La dipendenza. Antonello Maruotti

Esercitazione III Soluzione

Relazioni Statistiche

STATISTICA PER LA DIGITAL ECONOMY Marco Riani

Presentazione dell edizione italiana

E la rappresentazione grafica, in questo caso, è la dispersione x,y, cioè una nuvola di punti nel piano cartesiano

REGISTRO DELLE LEZIONI*

Statistica e informatica

Esercizi Svolti. 2. Costruire la distribuzione delle frequenze cumulate del tempo di attesa

Fondamenti e metodi analisi empirica nelle scienze sociali

Statistica. Alfonso Iodice D Enza

Statistica descrittiva con fogli di calcolo. Stoianov, Ceccato

DISTRIBUZIONI DOPPIE (ANALISI DESCRITTIVE) Fulvio De Santis a.a Prerequisiti Popolazione, unità, carattere Come nascono i dati:

1.1 Obiettivi della statistica Struttura del testo 2

Associazione tra caratteri quantitativi: gli indici di correlazione

Università del Piemonte Orientale. Corso di laurea in medicina e chirurgia. a.a Corso di Statistica Medica. Statistica Descrittiva

X \Y Liceo Classico Liceo Scientifico Altro le distribuzioni di frequenza marginali relative, f i. e f.

Università degli Studi di Padova Facoltà di Scienze Statistiche, CL. in Astronomia

ESEMPI DI DOMANDE PER LA PROVA SCRITTA DI STATISTICA SOCIALE

Prova Pratica di Statistica I+II - Prof. M. Romanazzi

Lezione 5 Corso di Statistica. Domenico Cucina

Metodi statistici per le ricerche di mercato

STATISTICA (I modulo - Statistica Descrittiva) Esercitazione I 24/02/2006

Corso di formazione per Mathesis

Statistica. Alfonso Iodice D Enza

Lezione 5 Corso di Statistica. Francesco Lagona

Corso di STATISTICA EGA - Classe 1 aa Docenti: Luca Frigau, Claudio Conversano

R - base Emanuele Taufer

Statistica. Relazioni tra variabili. Francesco Pauli A.A. 2015/2016

INFERENZA STATISTICA I (CANALE B)

Statistica descrittiva in due variabili

Lezione 6 Corso di Statistica. Domenico Cucina

Applicazioni statistiche e utilizzo del package statistico Spss - 7

L analisi dell associazione o connessione tra due caratteri statistici

Dispensa di Statistica

Analisi Bivariata. Metodi Quantitativi per Economia, Finanza e Management. Esercitazione n 4

Analisi esplorativa dei dati - Iris data set Emanuele Taufer

Corso di Laurea in Amministrazione Aziendale Complex Learning. Statistica per l azienda (T) SECS-S/01 a. a. 2017/2018

Quiz di verifica - Alberi e FC Strumenti Quantitativi per la gestione

Distribuzioni di due variabili aleatorie

INFERENZA STATISTICA I (CANALE B)

Metodi Quantitativi per Economia, Finanza e Management. Lezione n 5 Test d Ipotesi

LEZIONI DI STATISTICA MEDICA

Lab. 2 - Excel. Prof. De Michele e Farina

Ringraziamenti dell Editore

Modelli con predittori qualitativi e modelli con interazioni

Old Faithful, Yellowstone Park. Statistica e biometria. D. Bertacchi. Dati congiunti. Tabella. Scatterplot. Covarianza. Correlazione.

Copyright Esselibri S.p.A.

Analisi dell associazione tra due caratteri

Statistica descrittiva: analisi di regressione

CORSO DI STATISTICA (parte 1) - ESERCITAZIONE 5

La Matrice dei Dati Originari

Statistica Esercitazione. alessandro polli facoltà di scienze politiche, sociologia, comunicazione

Analisi bivariata. Il caso di caratteri quantitativi

Corso di Laurea in Economia Aziendale. Docente: Marta Nai Ruscone. Statistica. a.a. 2015/2016

STATISTICA DESCRITTIVA I

Dr. Marco Vicentini Anno Accademico Rev 02/04/2011

Ulteriori Conoscenze di Informatica e Statistica

Modelli con predittori qualitativi e modelli con interazioni. Strumenti quantitativi per la gestione

Transcript:

Statistica descrittiva bivariata Massimo Aria TABELLE DI CONTINGENZA # importare il dataframe automobile (fonte UCI Machine Learning repository) df=read.table("http://www.massimoaria.com/laboratorio/automobile.csv",header=true,sep=";",dec=",") str(df) ## 'data.frame': 205 obs. of 26 variables: ## $ symbolig : int 3 3 1 2 2 2 1 1 1 0... ## $ normlosses : int NA NA NA 164 164 NA 158 NA 158 NA... ## $ make : Factor w/ 22 levels "alfa-romero",..: 1 1 1 2 2 2 2 2 2 2... ## $ fuel : Factor w/ 2 levels "diesel","gas": 2 2 2 2 2 2 2 2 2 2... ## $ aspiration : Factor w/ 2 levels "std","turbo": 1 1 1 1 1 1 1 1 2 2... ## $ doors : Factor w/ 3 levels "","four","two": 3 3 3 2 2 3 2 2 2 3... ## $ body : Factor w/ 5 levels "convertible",..: 1 1 3 4 4 4 4 5 4 3... ## $ drivewheels : Factor w/ 3 levels "4wd","fwd","rwd": 3 3 3 2 1 2 2 2 2 1... ## $ enginelocation: Factor w/ 2 levels "front","rear": 1 1 1 1 1 1 1 1 1 1... ## $ wheelbase : num 88.6 88.6 94.5 99.8 99.4... ## $ length : num 169 169 171 177 177... ## $ width : num 64.1 64.1 65.5 66.2 66.4 66.3 71.4 71.4 71.4 67.9... ## $ height : num 48.8 48.8 52.4 54.3 54.3 53.1 55.7 55.7 55.9 52... ## $ curbweight : int 2548 2548 2823 2337 2824 2507 2844 2954 3086 3053... ## $ engine : Factor w/ 7 levels "dohc","dohcv",..: 1 1 6 4 4 4 4 4 4 4... ## $ cylinders : Factor w/ 7 levels "eight","five",..: 3 3 4 3 2 2 2 2 2 2... ## $ enginesize : int 130 130 152 109 136 136 136 136 131 131... ## $ fuelsystem : Factor w/ 8 levels "1bbl","2bbl",..: 6 6 6 6 6 6 6 6 6 6... ## $ bore : num 3.47 3.47 2.68 3.19 3.19 3.19 3.19 3.19 3.13 3.13... ## $ stroke : num 2.68 2.68 3.47 3.4 3.4 3.4 3.4 3.4 3.4 3.4... ## $ compression : num 9 9 9 10 8 8.5 8.5 8.5 8.3 7... ## $ hp : int 111 111 154 102 115 110 110 110 140 160... ## $ rpm : int 5000 5000 5000 5500 5500 5500 5500 5500 5500 5500... ## $ citympg : int 21 21 19 24 18 19 19 19 17 16... ## $ highwaympg : int 27 27 26 30 22 25 25 25 20 22... ## $ price : int 13495 16500 16500 13950 17450 15250 17710 18920 23875 NA... # rendiamo il data frame df come oggetto di default attach(df) # creazione di una tabella di contingenza con il comando table # tabella di frequenze assolute T <- table(body,fuel) T ## fuel ## body diesel gas ## convertible 0 6 ## hardtop 1 7 ## hatchback 1 69 ## sedan 15 81 1

## wagon 3 22 # tabella di frequenze relative table(body,fuel)/dim(df)[1] ## fuel ## body diesel gas ## convertible 0.000000000 0.029268293 ## hardtop 0.004878049 0.034146341 ## hatchback 0.004878049 0.336585366 ## sedan 0.073170732 0.395121951 ## wagon 0.014634146 0.107317073 # oppure prop.table(t) ## fuel ## body diesel gas ## convertible 0.000000000 0.029268293 ## hardtop 0.004878049 0.034146341 ## hatchback 0.004878049 0.336585366 ## sedan 0.073170732 0.395121951 ## wagon 0.014634146 0.107317073 # tabella di frequenze percentuali Tp=table(body,fuel)/dim(df)[1]*100 print(tp, digit=2) ## fuel ## body diesel gas ## convertible 0.00 2.93 ## hardtop 0.49 3.41 ## hatchback 0.49 33.66 ## sedan 7.32 39.51 ## wagon 1.46 10.73 # calcolo dei marginali di riga e colonna di una tabella doppia rowsums(t) # restituisce la somma per riga di una tabella ## convertible hardtop hatchback sedan wagon ## 6 8 70 96 25 colsums(t) ## diesel gas ## 20 185 # restituisce la somma per colonna di un tabella # identico risultato può essere ottenuto con il comando margin.table margin.table(t,1) # per i marignali di riga ## body ## convertible hardtop hatchback sedan wagon ## 6 8 70 96 25 margin.table(t,2) ## fuel # per i marginali di colonna 2

## diesel gas ## 20 185 sum(t) # restituisce la somma totale degli elementi di una tabella ## [1] 205 # DISTRIBUZIONI CONDIZIONATE # per ottenere a distribuzione condizionata di un carattere ad un attributo dell'altro carattere T[,1]/sum(T[,1]) # distribuzione della variabile body condizionata alla prima modalità (diesel) della va ## convertible hardtop hatchback sedan wagon ## 0.00 0.05 0.05 0.75 0.15 T[,2]/sum(T[,2]) # distribuzione della variabile body condizionata alla prima modalità (diesel) della va ## convertible hardtop hatchback sedan wagon ## 0.03243243 0.03783784 0.37297297 0.43783784 0.11891892 # con un ciclo for si possono ottenere tutte le distribuzioni condizionate # per riga for (i in 1:dim(T)[2]){ print(t[,i]/sum(t[,i])) } ## convertible hardtop hatchback sedan wagon ## 0.00 0.05 0.05 0.75 0.15 ## convertible hardtop hatchback sedan wagon ## 0.03243243 0.03783784 0.37297297 0.43783784 0.11891892 # e per colonna for (i in 1:dim(T)[1]){ print(t[i,]/sum(t[i,])) } ## diesel gas ## 0 1 ## diesel gas ## 0.125 0.875 ## diesel gas ## 0.01428571 0.98571429 ## diesel gas ## 0.15625 0.84375 ## diesel gas ## 0.12 0.88 MISURARE IL GRADO DI ASSOCIAZIONE IN UNA TABELLA DI CONTINGENZA Il grado di associazione si misura con l indice di associazione χ 2 di Pearson I J χ 2 (n ij n ij = )2 i=1 j=1 n ij dove n ij = n i+ n +j N 3

rappresenta la frequenza teorica per la generica cella (i,j) in caso di indipendenza assoluta tra le due variabili. # L'associazione può essere misurata con il comando summary applicato ad un oggetto della classe table summary(t) ## Number of cases in table: 205 ## Number of factors: 2 ## Test for independence of all factors: ## Chisq = 10.129, df = 4, p-value = 0.0383 ## Chi-squared approximation may be incorrect # ESERCIZIO: # Scrivere una funzione che calcola il Chi quadrato senza utilizzare il comando summary ANALISI DI REGRESSIONE Grafici di dispersione # installiamo il pacchetto gdata per poter importare file excel # install.packages("rio") #l'installazione va effettuata solo la prima volta # con il comando library carichiamo il pacchetto in memoria library(rio) # usiamo il comando import per leggere il file excel df <- import("http://www.massimoaria.com/laboratorio/impiegati.xlsx") str(df) ## 'data.frame': 474 obs. of 9 variables: ## $ gender : chr "Male" "Male" "Female" "Female"... ## $ educ : num 15 16 12 8 15 15 15 12 15 12... ## $ jobcat : chr "Manager" "Clerical" "Clerical" "Clerical"... ## $ salary : num 57000 40200 21450 21900 45000... ## $ salbegin: num 27000 18750 12000 13200 21000... ## $ jobtime : num 98 98 98 98 98 98 98 98 98 98... ## $ prevexp : num 144 36 381 190 138 67 114 0 115 244... ## $ minority: chr "No" "No" "No" "No"... ## $ age : num 49 43 72 54 46 43 45 35 55 55... attach(df) head(df) ## gender educ jobcat salary salbegin jobtime prevexp minority age ## 1 Male 15 Manager 57000 27000 98 144 No 49 ## 2 Male 16 Clerical 40200 18750 98 36 No 43 ## 3 Female 12 Clerical 21450 12000 98 381 No 72 ## 4 Female 8 Clerical 21900 13200 98 190 No 54 ## 5 Male 15 Clerical 45000 21000 98 138 No 46 ## 6 Male 15 Clerical 32100 13500 98 67 No 43 # installiamo il pacchetto ggplot2 per creare grafici con R # install.packages("ggplot2") # e carichiamo in memoria la libreria library(ggplot2) # usiamo la funzione qplot per disegnare istogrammi e scatterplot 4

?qplot ## starting httpd help server... done qplot(salary, geom="histogram") # istogramma del salario attuale ## `stat_bin()` using `bins = 30`. Pick better value with `binwidth`. 100 75 count 50 25 0 5e+04 1e+05 salary qplot(salbegin, geom="histogram") # istogramma del salario iniziale ## `stat_bin()` using `bins = 30`. Pick better value with `binwidth`. 5

150 100 count 50 0 20000 40000 60000 80000 salbegin qplot(educ, geom="bar") # diagramma a barre del livello di educazione 6

150 count 100 50 0 10 14 18 22 educ # scatterplot qplot(educ,salary) 7

1e+05 salary 5e+04 qplot(salbegin,salary) 8 12 16 20 educ 8

1e+05 salary 5e+04 # scatterplot con trasforazione logaritmica qplot(log(salbegin),log(salary)) 20000 40000 60000 80000 salbegin 9

11.5 log(salary) 11.0 10.5 10.0 9.0 9.5 10.0 10.5 11.0 log(salbegin) # con punti colorati per tipologia di impiego qplot(log(salbegin),log(salary),colour=jobcat) 10

11.5 log(salary) 11.0 10.5 jobcat Clerical Custodial Manager 10.0 9.0 9.5 10.0 10.5 11.0 log(salbegin) # e per genere qplot(log(salbegin),log(salary),colour=gender) 11

11.5 log(salary) 11.0 10.5 gender Female Male 10.0 9.0 9.5 10.0 10.5 11.0 log(salbegin) CORRELAZIONE LINEARE si misura con il coefficiente di correlazione lineare ρ di Bravais-Pearson ρ x,y = 1 N N i=1 (x i µ x ) (y i µ y ) σ x σ y dove x e y sono due generiche variabili numeriche, il numeratore rappresenta la misura della loro covarianza e al denominatore σ x e σ y rappresentano rispettivamente la deviazione standard di x e y in R è possibile calcolarlo attraverso la funzione cor?cor cor(salbegin,salary) ## [1] 0.8801175 cor(age,salary) ## [1] -0.145844 cor(log(salbegin),log(salary)) ## [1] 0.8863679 qplot(age, salary,colour=gender) 12

1e+05 salary gender Female Male 5e+04 30 40 50 60 70 age 13