# PUNTO 5 ------------------------------------------------
HW 07 - Intervalli di confidenza
Data di consegna: venerdì 29 maggio 2026
Introduzione
In questo compito calcolerai intervalli di confidenza per i principali parametri di interesse in problemi ad una e due popolazioni, prima a mano (usando tavole statistiche e calcolatrice) e poi in R. Per ciascun intervallo imparerai quale funzione R usare — o come scriverne una — e come interpretare il risultato alla luce del principio del campionamento ripetuto.
Obiettivi di apprendimento
Lo svolgimento di questo compito ti permetterà di:
- applicare la procedura di inversione della statistica pivotale per costruire un intervallo di confidenza
- calcolare IC per la media, la varianza e la proporzione in problemi ad una popolazione
- calcolare IC per la differenza tra medie, il rapporto tra varianze e la differenza tra proporzioni in problemi a due popolazioni
- visualizzare in R la copertura di un IC tramite simulazione Monte Carlo
- scrivere funzioni R per l’IC sulla proporzione (singolo campione e due campioni) basate sull’approssimazione normale di Wald
Istruzioni per l’uso
Esercizi carta e penna
Rispondi ai vari punti su un foglio in cui scrivi chiaramente cognome, nome e matricola e numero del compito: ad esempio nel mio caso sarebbe Vistocco Domenico, matricola 123456, soluzione compito
#07Per rispondere ad ogni punto scrivi chiaramente il punto cui stai rispondendo. Ad esempio, per rispondere al punto 1 del compito, scrivi
RISPOSTA PUNTO 1Per ogni intervallo di confidenza: scrivi la statistica pivotale usata, la sua distribuzione, i valori critici ricavati dalle tavole e l’intervallo finale nella forma \((L,\; U)\).
Esercizi in R
Rispondi ai vari punti salvando le risposte in un file R con il nome “hw07_cognome_nome.R”: ad esempio nel mio caso il nome del file sarebbe “hw07_vistocco_domenico.R”.
Per rispondere ad ogni punto inserisci un’etichetta di sezione (che puoi inserire nello script usando la combinazione di tasti CTRL/CMD + SHIFT + R) utilizzando il punto cui stai rispondendo. Ad esempio, per rispondere al punto 5 del compito, usa un’etichetta di sezione:
Utilizza i commenti per rispondere alle domande in cui viene chiesta un’interpretazione da parte tua: lo script deve cioè essere funzionante quando si eseguono tutti i comandi con il pulsante Source.
Lo script viene valutato sia in base alla correttezza del codice che in base alla qualità (stile utilizzato per rendere lo script leggibile ed ordinato).
Esercizi
Parte 1: esercizi carta e penna
Il tempo di risposta (in millisecondi) di un sistema informatico segue una distribuzione normale. Si dispone di due studi separati:
Studio A — Da calibrazioni tecniche si sa che \(\sigma = 18\) ms. Un campione di \(n = 25\) misurazioni fornisce \(\bar{x} = 142\) ms.
Studio B — La variabilità non è nota. Un campione di \(n = 20\) misurazioni fornisce \(\bar{x} = 138\) ms e \(s = 21\) ms.
Per lo Studio A, costruisci un IC al 95% e un IC al 99% per \(\mu\). Commenta: come cambia l’ampiezza al variare del livello di confidenza?
Per lo Studio B, costruisci un IC al 95% per \(\mu\) usando la distribuzione \(t\) di Student con i gradi di libertà appropriati.
Confronta gli intervalli al 95% ottenuti nei due studi. Hanno la stessa ampiezza? Perché?
Un processo di produzione di bulloni deve mantenere una variabilità contenuta nel diametro (in mm). Si suppone che i diametri seguano una distribuzione normale con media incognita. Un campione di \(n = 16\) bulloni fornisce \(\bar{x} = 10{,}02\) mm e \(s^2 = 0{,}0036\) mm\(^2\).
Costruisci un IC al 95% per \(\sigma^2\) usando la distribuzione \(\chi^2\) con i gradi di libertà appropriati. Ricava anche l’IC per la deviazione standard \(\sigma\).
L’IC ottenuto è simmetrico attorno a \(s^2\)? Perché ci aspettiamo o non ci aspettiamo simmetria?
Ripeti il calcolo per un IC al 90%. Come cambia l’intervallo? Quale dei due livelli ti sembra più prudente in un contesto di controllo qualità?
In un sondaggio su \(n = 400\) elettori, \(x = 172\) dichiarano di sostenere una certa proposta di legge.
Calcola la proporzione campionaria \(\hat{\pi}\) e costruisci un IC al 95% per \(\pi\) usando l’approssimazione normale di Wald: \[\hat{\pi} \pm z_{\alpha/2}\sqrt{\frac{\hat{\pi}(1-\hat{\pi})}{n}}\] Verifica che le condizioni di applicabilità dell’approssimazione siano soddisfatte.
Costruisci anche un IC al 90% e un IC al 99%. Riporta i tre intervalli in una piccola tabella e commenta la relazione tra livello di confidenza e ampiezza.
Si confrontano due stabilimenti produttivi (1 e 2) per quanto riguarda la percentuale di pezzi difettosi e la durata media (in giorni) dei macchinari.
Dati per la proporzione:
- Stabilimento 1: \(n_1 = 300\), \(x_1 = 18\) difettosi
- Stabilimento 2: \(n_2 = 250\), \(x_2 = 22\) difettosi
Dati per la media (varianze incognite, assumerle diseguali):
- Stabilimento 1: \(n_1 = 12\), \(\bar{x}_1 = 84{,}3\) giorni, \(s_1 = 9{,}7\)
- Stabilimento 2: \(n_2 = 10\), \(\bar{x}_2 = 78{,}6\) giorni, \(s_2 = 11{,}2\)
Costruisci un IC al 95% per \(\pi_1 - \pi_2\) usando l’approssimazione normale. Verifica le condizioni di applicabilità.
Per il confronto tra le medie, calcola prima la statistica per il rapporto tra le varianze e costruisci un IC al 95% per \(\sigma^2_1/\sigma^2_2\). Sulla base di questo intervallo, è ragionevole assumere \(\sigma^2_1 = \sigma^2_2\)?
Costruisci un IC al 95% per \(\mu_1 - \mu_2\) usando la statistica appropriata (varianze incognite e non necessariamente uguali — approssimazione di Welch).
Quando le varianze sono incognite e non si assume \(\sigma^2_1 = \sigma^2_2\), i gradi di libertà dell’approssimazione di Welch sono: \[\nu = \frac{\left(\frac{s_1^2}{n_1} + \frac{s_2^2}{n_2}\right)^2}{\frac{(s_1^2/n_1)^2}{n_1-1} + \frac{(s_2^2/n_2)^2}{n_2-1}}\] Arrotonda \(\nu\) all’intero inferiore.
Parte 2: esercizi in R
Per gli esercizi in R lavorerai su dati reali forniti direttamente nel testo. Copia i vettori nel tuo script prima di iniziare.
# Studio A — tempi di risposta (ms), sigma = 18 nota, n = 25
studio_A <- c(146.7, 175.0, 135.9, 158.1, 150.8, 119.4, 142.4, 161.6, 139.6,
122.6, 157.4, 135.4, 145.0, 119.6, 168.3, 141.9, 141.6, 142.6,
121.0, 132.6, 166.7, 167.4, 134.8, 134.1, 160.2)
# Studio B — tempi di risposta (ms), sigma incognita, n = 20
studio_B <- c(178.1, 162.0, 121.9, 107.4, 115.0, 144.2, 138.1, 162.3, 182.8,
143.0, 111.0, 138.7, 171.0, 141.3, 122.3, 115.6, 103.8, 115.6,
137.5, 144.7)
# Bulloni — diametri (mm), n = 16
bulloni <- c(10.102, 9.986, 10.042, 10.058, 10.044, 10.014, 10.111, 10.014,
10.141, 10.016, 10.098, 10.157, 9.937, 10.003, 10.012, 10.058)
# Stabilimento 1 — durata macchinari (giorni), n = 12
stab1 <- c(106.5, 72.7, 77.6, 80.3, 74.9, 75.1,
91.6, 83.2, 85.8, 105.5, 87.8, 110.7)
# Stabilimento 2 — durata macchinari (giorni), n = 10
stab2 <- c(72.0, 78.9, 61.6, 63.3, 91.8, 68.1, 93.4, 85.6, 78.1, 67.4)Calcola le statistiche descrittive di base (
mean,sd,length) perstudio_Aestudio_Be commentale: i valori sono compatibili con il DGP che ha generato i dati?Costruisci l’IC al 95% per la media di
studio_A(varianza nota, \(\sigma = 18\)) in due modi e verifica che i risultati coincidano:- manualmente con
qnorm, applicando direttamente la formula - con la funzione
z.testdel pacchettoTeachingDemos:
# install.packages("TeachingDemos") # esegui solo se non installato library(TeachingDemos) z.test(studio_A, sigma.x = 18, conf.level = 0.95)Ripeti per il livello di confidenza al 99% e commenta come cambia l’ampiezza.
- manualmente con
Costruisci l’IC al 95% per la media di
studio_B(varianza incognita) cont.test. Costruisci anche l’IC al 99% e confronta i due intervalli con quelli ottenuti perstudio_A.Simula la copertura dell’IC al 95% per la media con varianza nota: usando i parametri stimati da
studio_A(\(\hat{\mu} = \bar{x}\), \(\sigma = 18\)), genera \(B = 2\,000\) campioni di dimensione \(n = 25\) da una \(N(\hat{\mu}, 18^2)\), calcola per ciascuno l’IC e verifica quanti contengono il vero valore \(\hat{\mu}\). Rappresenta i primi 100 intervalli in un grafico a trattini orizzontali, colorando in rosso quelli che non contengono \(\hat{\mu}\) e in grigio quelli che lo contengono.
plot(0, type = "n", xlim = range(ic_mat) + c(-5, 5), ylim = c(1, 100),
xlab = "IC", ylab = "Campione")
for (i in 1:100) {
contiene <- ic_mat[i, 1] <= mu_hat & ic_mat[i, 2] >= mu_hat
lines(ic_mat[i, ], c(i, i), col = ifelse(contiene, "grey70", "red"), lwd = 1.5)
}
abline(v = mu_hat, lty = 2)dove ic_mat è una matrice \(2000 \times 2\) con gli estremi degli IC nelle colonne e mu_hat <- mean(studio_A).
Calcola le statistiche descrittive di base per
bullonie costruisci l’IC al 95% per \(\sigma^2\) in due modi, verificando che i risultati coincidano:- manualmente con
qchisq - con la funzione
varTestdel pacchettoEnvStats:
# install.packages("EnvStats") # esegui solo se non installato library(EnvStats) varTest(bulloni, conf.level = 0.95)Scrivi poi una funzione
ic_varianza(x, conf = 0.95)che, dato un vettorex, restituisca l’IC per \(\sigma^2\) comec(lower, upper).- manualmente con
La funzione varTest del pacchetto EnvStats calcola l’IC per la varianza di un singolo campione basandosi sulla distribuzione \(\chi^2\): è quella che fa al caso nostro. Non confonderla con var.test del pacchetto base di R, che calcola invece il test \(F\) per il confronto tra le varianze di due campioni. L’IC si estrae con varTest(x)$conf.int.
- Scrivi una funzione
ic_prop(x, n, conf = 0.95)che calcoli l’IC per \(\pi\) con l’approssimazione normale di Wald e restituiscac(lower, upper). Applicala ai dati dell’Esercizio 3 (\(x = 172\), \(n = 400\)) per i tre livelli di confidenza (90%, 95%, 99%) e riporta i risultati in una tabella di commento.
La funzione prop.test di R non usa l’approssimazione normale di Wald: implementa l’intervallo di Wilson, che risolve un’equazione quadratica in \(\pi\) e ha migliori proprietà di copertura soprattutto per \(\hat{\pi}\) vicino a 0 o 1. Per applicare la formula vista a lezione è quindi necessario scrivere la funzione custom.
Scrivi una funzione
ic_diff_prop(x1, n1, x2, n2, conf = 0.95)per l’IC sulla differenza \(\pi_1 - \pi_2\) con approssimazione normale. Applicala ai dati dell’Esercizio 4 (\(x_1 = 18\), \(n_1 = 300\), \(x_2 = 22\), \(n_2 = 250\)) e confronta il risultato con quello ottenuto a mano.Usando i vettori
stab1estab2, costruisci in R:- l’IC al 95% per il rapporto tra varianze \(\sigma^2_1/\sigma^2_2\) con
var.test(stab1, stab2)$conf.int - l’IC al 95% per la differenza tra medie \(\mu_1 - \mu_2\) con
t.test(stab1, stab2, var.equal = FALSE)$conf.int
Commenta i risultati: l’IC per il rapporto tra varianze è compatibile con l’ipotesi \(\sigma^2_1 = \sigma^2_2\)? L’IC per la differenza tra medie è compatibile con l’ipotesi \(\mu_1 = \mu_2\)?
- l’IC al 95% per il rapporto tra varianze \(\sigma^2_1/\sigma^2_2\) con
Consegna
Puoi inviare la tua soluzione scannerizzando i fogli relativi agli esercizi carta e penna, comprimendo il file ottenuto insieme al file
.Rin un file.zipe caricando il file in risposta al compito assegnato su Teams.Puoi consegnare al docente il compito svolto in aula durante la lezione del martedì, stampando il file
.Re consegnandolo insieme alle soluzioni agli esercizi numerici. In questo caso, in risposta al compito assegnato su Teams carica un file di testo o MS-Word scrivendo semplicementeconsegnato in aula.
Valutazione
Totale punti disponibili: 110 punti
| Componente | Punti |
|---|---|
| Es 1 - 6 | 100 |
| Workflow & formattazione | 101 |
Footnotes
La valutazione al “Workflow & formattazione” tiene conto:
- per gli esercizicarta e penna, dell’ordine con cui svolgi gli esercizi e delle argomentazioni date alle risposte aperte
- per gli esercizi suR, del principio di riproducibilità del codice: lo script caricato deve funzionare senza errori su qualunque PC dando gli stessi risultati↩︎