Calcolatore Chi-Quadro in R
Calcola il test chi-quadro per l’indipendenza o la bontà dell’adattamento con dati personalizzati
Risultati del Test Chi-Quadro
Guida Completa al Test Chi-Quadro in R
Il test chi-quadro (χ²) è uno dei test statistici più utilizzati per valutare l’indipendenza tra variabili categoriche o la bontà dell’adattamento di una distribuzione osservata rispetto a una distribuzione attesa. In questo articolo, esploreremo in dettaglio come eseguire il test chi-quadro in R, interpretare i risultati e applicare correttamente questa tecnica statistica.
1. Cos’è il Test Chi-Quadro?
Il test chi-quadro è un test non parametrico utilizzato per:
- Test di indipendenza: Verificare se esiste una relazione significativa tra due variabili categoriche
- Test di bontà dell’adattamento: Verificare se una distribuzione osservata si adatta a una distribuzione teorica attesa
La statistica test χ² misura la discrepanza tra le frequenze osservate e quelle attese sotto l’ipotesi nulla. Valori elevati di χ² indicano una maggiore discrepanza tra osservato e atteso.
2. Assunzioni del Test Chi-Quadro
Per applicare correttamente il test chi-quadro, è necessario verificare le seguenti assunzioni:
- Dati categorici: Le variabili devono essere categoriche (nominali o ordinali)
- Frequenze attese: Le frequenze attese in ogni cella devono essere ≥5 (per tabelle 2×2) o ≥1 (per tabelle più grandi, ma con non più del 20% delle celle con frequenze attese <5)
- Indipendenza: Le osservazioni devono essere indipendenti
Quando NON usare il test chi-quadro
- Con campioni molto piccoli (n<20)
- Quando più del 20% delle celle hanno frequenze attese <5
- Con variabili continue (usare invece test t o ANOVA)
3. Esecuzione del Test Chi-Quadro in R
R fornisce funzioni integrate per eseguire facilmente il test chi-quadro. Vediamo come implementare entrambi i tipi di test.
3.1 Test di Indipendenza
Per un test di indipendenza tra due variabili categoriche, utilizziamo la funzione chisq.test() su una tabella di contingenza:
Output tipico:
3.2 Test di Bontà dell’Adattamento
Per verificare se una distribuzione osservata segue una distribuzione attesa:
4. Interpretazione dei Risultati
La tabella seguente mostra come interpretare i risultati in base al p-value:
| p-value | Interpretazione | Decisione |
|---|---|---|
| p > 0.05 | Non c’è evidenza sufficiente per rifiutare H₀ | Non rifiutare l’ipotesi nulla |
| p ≤ 0.05 | C’è evidenza sufficiente per rifiutare H₀ | Rifiuta l’ipotesi nulla |
| p ≤ 0.01 | Evidenza molto forte contro H₀ | Rifiuta fortemente l’ipotesi nulla |
Per il test di indipendenza:
- H₀: Le variabili sono indipendenti
- H₁: Le variabili non sono indipendenti
Per il test di bontà dell’adattamento:
- H₀: I dati osservati seguono la distribuzione attesa
- H₁: I dati osservati non seguono la distribuzione attesa
5. Correzione per la Continuità di Yates
Per tabelle 2×2, R applica automaticamente la correzione di Yates, che ajusta il valore di χ² per migliorare l’approssimazione alla distribuzione chi-quadro. Questa correzione è conservativa e può essere disabilitata con correct=FALSE:
6. Test Chi-Quadro con Simulazione Monte Carlo
Quando le assunzioni non sono soddisfatte (frequenze attese troppo basse), possiamo usare la simulazione Monte Carlo:
Questo metodo:
- Genera 10.000 tabelle con le stesse marginali
- Calcola χ² per ciascuna tabella simulata
- Determina il p-value come proporzione di χ² simulati ≥ χ² osservato
7. Visualizzazione dei Risultati
Una buona pratica è visualizzare i risultati con un mosaico plot:
Questo mostra:
- Le dimensioni relative delle celle
- Le discrepanze tra osservato e atteso (ombreggiatura)
- Una rappresentazione visiva dell’indipendenza
8. Potenza del Test e Dimensione del Campione
La potenza del test chi-quadro dipende fortemente dalla dimensione del campione. La tabella seguente mostra la potenza per diversi effetti e dimensioni campionarie (per α=0.05):
| Dimensione Effetto (w) | n=50 | n=100 | n=200 | n=500 |
|---|---|---|---|---|
| 0.1 (piccolo) | 0.07 | 0.12 | 0.25 | 0.60 |
| 0.3 (medio) | 0.25 | 0.50 | 0.85 | 0.99 |
| 0.5 (grande) | 0.60 | 0.90 | 1.00 | 1.00 |
Per calcolare la potenza in R:
9. Errori Comuni da Evitare
❌ Ignorare le frequenze attese
Non verificare che le frequenze attese siano ≥5 può portare a risultati non validi, specialmente con campioni piccoli.
❌ Interpretazione errata del p-value
Un p-value basso non indica la forza dell’associazione, solo che c’è evidenza contro H₀. Usa misure come V di Cramer per la forza.
❌ Applicare a dati continui
Il chi-quadro è per dati categorici. Per dati continui, usa test t, ANOVA o regressione.
10. Alternative al Test Chi-Quadro
Quando le assunzioni non sono soddisfatte, considera:
- Test esatto di Fisher: Per tabelle 2×2 con campioni piccoli
- Test G: Alternative basate sulla verosimiglianza
- Test di McNemar: Per dati appaiati
- Test di Cochran-Mantel-Haenszel: Per tabelle stratificate
11. Applicazioni Pratiche
Il test chi-quadro viene utilizzato in numerosi contesti:
- Ricerca medica: Valutare l’associazione tra trattamento e esito
- Marketing: Analizzare le preferenze dei consumatori
- Scienze sociali: Studiare relazioni tra variabili demografiche
- Controllo qualità: Verificare la distribuzione dei difetti
- Genetica: Testare le proporzioni di Mendel
12. Risorse Addizionali
Per approfondire:
- NIST Engineering Statistics Handbook – Chi-Square Test (Fonte governativa USA)
- Documentazione ufficiale R per chisq.test
- Penn State Statistics – Chi-Square Tests (Risorsa accademica)
13. Esempio Completo con Dati Realistici
Consideriamo uno studio che valuta l’efficacia di una campagna vaccinale:
Output:
Interpretazione:
- p-value = 0.0007 → Evidenza molto forte che la vaccinazione e il contagio non sono indipendenti
- Odds Ratio = 0.32 → Il gruppo vaccinato ha ~68% in meno di probabilità di contrarre l’infezione
- Risk Ratio = 0.37 → Il rischio assoluto è ridotto del 63% nei vaccinati
14. Calcolo Manuale del Chi-Quadro
Per comprendere appieno il test, è utile vedere il calcolo manuale:
Formula:
Dove:
- Oᵢ = frequenza osservata
- Eᵢ = frequenza attesa
Esempio con i dati della vaccinazione:
| Cella | Osservato (O) | Atteso (E) | (O-E)²/E |
|---|---|---|---|
| Vaccinato & Contagiato | 10 | 20 | 5.00 |
| Vaccinato & Non contagiato | 90 | 80 | 1.25 |
| Non vaccinato & Contagiato | 30 | 20 | 5.00 |
| Non vaccinato & Non contagiato | 70 | 80 | 1.25 |
| Totale χ² | 12.50 | ||
Nota: La leggera differenza (12.50 vs 11.43) è dovuta alla correzione di Yates applicata automaticamente da R.
15. Limiti del Test Chi-Quadro
Nonostante la sua utilità, il test chi-quadro ha alcuni limiti:
- Sensibilità alla dimensione del campione: Con campioni molto grandi, anche differenze minime risultano significative
- Non misura la forza dell’associazione: Un p-value significativo non indica quanto sia forte la relazione
- Solo per dati categorici: Non può essere applicato a variabili continue
- Assunzione delle frequenze attese: Può essere problematico con campioni piccoli
16. Misure di Associazione per Tabelle di Contingenza
Quando il test chi-quadro mostra una relazione significativa, possiamo quantificarne la forza con:
| Misura | Intervallo | Interpretazione | Funzione R |
|---|---|---|---|
| Phi (φ) | 0 a 1 | Forza per tabelle 2×2 | sqrt(chisq.test(...)$statistic/n) |
| V di Cramer | 0 a 1 | Estensione di Phi per tabelle >2×2 | sqrt(chisq.test(...)$statistic/(n*min(df))) |
| Odds Ratio | 0 a ∞ | Rapporto tra odds in 2×2 | (a*d)/(b*c) |
| Risk Ratio | 0 a ∞ | Rapporto tra rischi in 2×2 | (a/(a+b))/(c/(c+d)) |
17. Test Chi-Quadro per Trend (Cochran-Armitage)
Quando le variabili ordinali mostrano un trend, possiamo usare una variante del chi-quadro:
18. Test Chi-Quadro in R con Dati Reali
Esempio con il dataset integrato HairEyeColor:
19. Reporting dei Risultati
Quando si riportano i risultati di un test chi-quadro, includere sempre:
- La statistica test (χ²) con gradi di libertà
- Il p-value esatto
- La dimensione del campione
- Eventuali correzioni applicate
- Una misura dell’effetto (es. V di Cramer)
Esempio di reporting:
20. Conclusione
Il test chi-quadro è uno strumento statistico fondamentale per analizzare dati categorici in R. Quando usato correttamente, fornisce informazioni preziose sulle relazioni tra variabili o sulla bontà dell’adattamento di distribuzioni. Ricorda sempre di:
- Verificare le assunzioni del test
- Considerare alternative quando le assunzioni non sono soddisfatte
- Interpretare correttamente il p-value
- Quantificare la forza dell’associazione con misure appropriate
- Visualizzare i risultati per una migliore comprensione
Con la pratica e l’attenta interpretazione, il test chi-quadro può diventare uno strumento potente nel tuo arsenale di analisi statistica.