In statistica inferenziale siamo interessati a dare delle stime di quantità ignote; tali stime possono essere puntuali (singolo valore) oppure intervallari. In quest’ultimo caso, oltre agli estremi dell’intervallo in cui cade la stima, il ricercatore fissa a-priori la probabilità che il vero valore del parametro cada nell’intervallo ottenuto. Tale probabilità prende il nome di livello di confidenza \(1-\alpha\) ed è di solito pari al 95% o 99%.
Si può dimostrare che all’intervallo di confidenza per un parametro \(\theta \in \Theta\) a livello di confidenza \(1-\alpha\) corrisponde la regione di accettazione di un test d’ipotesi del tipo \(H_{0} : \theta = 0\) vs \(H_{1} : \theta \ne 0\).
Il complementare \(\alpha\) si chiama livello di significatività e coincide alla probabilità di errore di tipo 1 (cioè la prob. di rifiutare H0 quando è vera) nel test d’ipotesi di cui sopra. Intuitivamente, vogliamo una grande prova empirica del fatto che H0 è falsa prima di poterla rifiutare.
Spesso è impossibile osservare tutta la popolazione, perché la numerosità \(N\) è troppo elevata (approx. con \(+\infty\)). Per questo si preferisce lavorare con un campione di numerosità \(n < N\) ed utilizzare le informazioni contenute nel campione per fare inferenza sui parametri ignoti della popolazione.
Il requisito fondamentale che deve rispettare il campione \((x_{1}, ... ,x_{n})\) è quello di essere rappresentativo della popolazione \(X\): se \(X\) assume K modalità differenti, tutte e K devono essere presenti nel campione e con una variabilità simile a quella che esiste nella popolazione \(X\).
Il benchmark dei diversi metodi di campionamento è il CCS: campionamento casuale semplice. Con il CCS vengono estratte a caso \(n\) unità statistiche a partire dalle \(N\) unità della popolazione, con reinserimento - in modo che la probabilità di ciascuna osservazione di essere estratta almeno una volta è pari a \(\frac{n}{N}\). Nella pratica spesso \(N \rightarrow +\infty\) quindi la prob. di osservare due volte la stessa osservazione è nulla. Il CCS garantisce che il campione \(x_{i}\) è \(iid\) (indipendente e identicamente distribuito) \(f_{X}(x_{i}, \theta)\) per \(i = 1,..,n\)
La teoria del campionamento è focalizzata sull’errore standard delle stime, cioè sulla deviazione standard dello stimatore (funzione del campione), che misura fluttuazioni del valore assunto dalla distribuzione campionaria dovute al caso. In particolare, spesso i parametri d’interesse sono la media \(\mu\) della popolazione, la proporzione \(P\) con cui si manifesta una particolare modalità oppure il totale \(N\mu = \sum_{i=1}^N{Y_{i}}\).
Vediamo tutti e tre gli esempi nel caso di CCS. Dopodiché, valuteremo l’efficienza di metodi di campionamento differenti dal CCS attraverso il rapporto delle varianze degli stimatori ottenuti con i due diversi metodi, ponendo al denominatore quella dello stimatore ottenuto con CCS. Se tale rapporto, detto Design Effect è maggiore di 1, allora la varianza dello stimatore ottenuto con campionamento alternativo è maggiore di quella ottenuta con CCS e quindi è da preferire il CCS; viceversa, se il Design Effect è minore di 1, allora il metodo di campionamento alternativo è da preferire al CCS.
Iniziamo con la stima del parametro media \(\mu = \mathbb{E}(X)\) con popolazione \(X\) infinita e finita.
# STIMA PER MEDIA
# vera popolazione X ~ Exp(1/12)
# campione di ampiezza n; POPOLAZIONE INFINITA N=10000
N = 10000
n = 100
mu = 12 #ignoto
set.seed(123) # riproducibilità
x = rexp(n=n, rate=solve(mu)) # campione di n osservazioni prese da X
media = sum(x)/n # media campionaria
varianza = sum((x-media)^2)/(n-1) # varianza campionaria
# plot dati vs data-genereting process
hist(x, freq=F, main='', ylim=c(0,0.1))
curve(dexp(x, rate=1/mu), add=T)
correzione = (N-n)/N # fattore di correzione (1-f) per popolazioni finite (qui non necessario)
st.error = sqrt(correzione*varianza/n)
# stima intervallare con confidenza 95%
q_0.025 = qnorm(p=0.025)
q_0.975 = qnorm(p=0.975)
# la vera media della popolazione (12) è compresa tra 10.11 e 14.97 circa (ampiezza d=4.86)
c(media + q_0.025*st.error , media + q_0.975*st.error)
## [1] 10.11808 14.97917
# se fisso l'ampiezza dell'intervallo d, il livello di confidenza 1-alpha e la varianza dello stimatore, allora posso trovare l'ampiezza campionaria n che mi garantisce quell'ampiezza d.
# mi aspetto n_star = 100, visto che ho fatto plug-in dei valori precedenti
d = 4.86
var_stimatore = correzione*varianza/n
dev_stimatore = n*var_stimatore
n_star = dev_stimatore * (q_0.975/(d/2))^2
round(n_star,0)
## [1] 100
# STIMA PER MEDIA
# vera popolazione X ~ Exp(1/12)
# campione di ampiezza n; POPOLAZIONE FINITA N=100
N = 100
n = 10
mu = 12 #ignoto
set.seed(321) # riproducibilità
x = rexp(n=n, rate=solve(mu)) # campione di n osservazioni prese da X
media = sum(x)/n # media campionaria
varianza = sum((x-media)^2)/(n-1) # varianza campionaria
# plot dati vs data-genereting process
hist(x, freq=F, main='', ylim=c(0,0.1))
curve(dexp(x, rate=1/mu), add=T)
correzione = (N-n)/N # fattore di correzione (1-f) per popolazioni finite (NECESSARIO)
st.error = sqrt(correzione*varianza/n)
# stima intervallare con confidenza 95%
q_0.025 = qnorm(p=0.025)
q_0.975 = qnorm(p=0.975)
# la vera media della popolazione (12) è compresa tra 5.6423 e 17.8847 circa (ampiezza d=12.2424)
c(media + q_0.025*st.error , media + q_0.975*st.error)
## [1] 5.642315 17.884720
# mi aspetto n_star = 10 visto che ho fatto plug-in dei valori precedenti
d = 12.2424
var_stimatore = correzione*varianza/n
dev_stimatore = n*var_stimatore
n_star = dev_stimatore * (q_0.975/(d/2))^2
n_star
## [1] 10.00001
# quante osservazioni per d_star = 4.86 con popolazione finita N=100? n_star = 64
d_star = 4.86
n_star2 = dev_stimatore * (q_0.975/(d_star/2))^2
n_star2
## [1] 63.45428
Segue la stima del parametro proporzione \(P\) con cui si manifesta una particolare modalità del carattere, che indichiamo genericamente con “successo”. Nel caso in cui questa modalità non si manifesta, i.e. l’osservazione non gode di questo attributo, raggruppiamo tutte le altre modalità in “fallimento”. La popolazione \(X\) è quindi distribuita secondo una bernoulliana con parametro \(P\) che indica la proporzione (vera) nella popolazione di individui che manifestano la modalità “successo”.
Noi, però, non osserviamo la popolazione. L’informazione inferenziale è contenuta nel campione casuale semplice che indichiamo con \(\underline{X} = (X_{1}, .., X_{n}) \sim Bin(n, P)\).
# STIMA PROPORZIONE
# vera popolazione X ~ Bernoulli(P=0.25)
# campione d'ampiezza n; POPOLAZIONE INFINITA N=10000
N=10000; n=N/100; P=0.25
set.seed(312)
x=rbinom(n=n, size=1, prob=0.25)
s=sum(x) # successi totali
# momenti campionari
Phat = s/n
varX = Phat*(1-Phat)
var_Phat = varX/n
std_error = sqrt(var_Phat)
# stima intervallare 95%
z = qnorm(0.975)
c(Phat - z*std_error, Phat + z*std_error)
## [1] 0.1475183 0.3124817
# ampiezza intervallo
2*z*std_error
## [1] 0.1649633
# stima puntuale
Phat
## [1] 0.23
# quante osservazioni campionare per un IC livello 95% con ampiezza d=0.1 ?
d = 0.1
n_star = (z^2)*varX/(d/2)^2
n_star
## [1] 272.1289
# STIMA PROPORZIONE
# vera popolazione X ~ Bernoulli(P=0.25)
# campione d'ampiezza n; POPOLAZIONE FINITA N=100
N=100; n=N/10; P=0.25
set.seed(321)
x=rbinom(n=n, size=1, prob=0.25)
s=sum(x) # successi totali
correzione = (N-n)/N
# momenti campionari
Phat = s/n
varX = Phat*(1-Phat)
var_Phat = correzione*varX/n
std_error = sqrt(var_Phat)
# stima intervallare 95%
z = qnorm(0.975)
c(Phat - z*std_error, Phat + z*std_error)
## [1] 0.0305495 0.5694505
# ampiezza intervallo MOLTO maggiore (0.53 contro 0.16 nel caso pop. infinita)
2*z*std_error
## [1] 0.538901
# stima puntuale più lontana dal vero valore
Phat
## [1] 0.3
# quante osservazioni campionare per un IC livello 95% con ampiezza d=0.2 ?
d = 0.2
n_star = (z^2)*correzione*varX/(d/2)^2
# quasi la totalità della popolazione (n=73 quando N=100)
n_star
## [1] 72.60357