
Supponiamo di voler testare l’effetto di tre diverse diete: dieta ipocalorica, dieta a basso contenuto di grassi e dieta a basso contenuto di carboidrati. Viene svolto un test a cui partecipa un quarto gruppo, definito di controllo.
A quest’ultimo gruppo non è somministrata alcuna dieta e serve da confronto con le tre precedenti.
Un totale di sessanta pazienti, con età inclusa tra 30 e 60 anni, partecipa allo studio e viene assegnato in modo casuale a uno dei gruppi di dieta (quindici membri per ogni gruppo). I pesi dei vari pazienti vengono misurati e dopo 8 settimane, il peso di ogni paziente viene nuovamente misurato. La differenza di peso viene calcolata sottraendo il peso a 8 settimane dal peso di riferimento iniziale.
In aggiunta a ciò vogliamo misurare come e se l’effetto di queste possa dipendere anche dall’età dei pazienti che decidono di parteciparvi.
La seguente tabella riassume i risultati ottenuti dai pazienti nelle varie diete (risultati positivi indicano perdita di peso, mentre risultati negativi aumento di peso) e l’età rispettiva dei vari pazienti che partecipano alle varie diete:
Abbiamo ripreso l’esempio proposto per l’analisi della varianza ad un fattore (ANOVA), solo che abbiamo aggiunto un fattore: l’età dei pazienti. Vogliamo capire se c’è differenza tra il risultato ottenuto dal paziente e se l’età può incidere in tale analisi oppure è vero il contrario.
Cos’è l’analisi della varianza a due fattori (ANOVA)?
L’ANOVA a due vie è un’estensione dell’ANOVA a una via. Il “doppio senso” deriva dal fatto che ogni oggetto è classificato in due modi, anziché in uno solo.
Ad esempio, la classificazione unidirezionale nell’ANOVA ad una via riguarda solo un fattore, come il risultato di una dieta. La classificazione a due vie, invece, considera un altro fattore oltre che la dieta, come l’età o il genere.
Ogni variabile di classificazione è chiamata fattore e quindi ci sono due fattori, chiamati rispettivamente “fattore di riga” e “fattore di colonna” perché i dati sono solitamente organizzati in formato tabellare.
Di ANOVA a due fattori ne esistono di due tipi:
- Con replica: considera nell’analisi anche l’interazione che i fattori riga e colonna potrebbero portare;
- Senza replica: non considera l’interazione ma solo il risultato dei fattori riga e colonna.
Nel proseguo dell’articolo ci concentreremo su quello con replica.
Ipotesi Anova a due vie
Come l’ANOVA a una via, l’analisi della varianza a due vie è un test basato su delle ipotesi.
Abbiamo sempre l’ipotesi nulla, definita come H0 e l’altra ipotesi definita come H1. L’obiettivo dell’ANOVA a due vie è quello di confermare le ipotesi nulle per ogni fattore (o nel caso contrario, di smentirle).
In particolare per il primo fattore (fattore riga) è verificata l’H0 o l’H1, che possiamo scrivere:
- H0: Le medie di ogni riga (dieta) sono uguali;
- H1: la media di almeno una riga (dieta) è diversa.
Per il secondo fattore (fattore colonna) consideriamo sempre l’H0 o l’H1, traducibili in:
- H0: le medie di ogni colonna (età) sono uguali;
- H1: la media di almeno una colonna (età) è diversa.
In aggiunta, si considerano le ipotesi di interazione tra i fattori riga e colonna. Anche per l’interazione tra i due fattori vale l’ipotesi nulla o l’H1:
- H0: non c’è interazione tra la riga (dieta) e la colonna (età);
- H1: c’è interazione tra la riga (dieta) e la colonna (età).
Applicazione Anova a due fattore in Excel
Vediamo ora di risolvere l’esempio proposto ad inizio articolo utilizzando Excel.
Partiamo mostrando nuovamente i dati dell’esempio analizzato:
Per eseguire il test Anova a due fattori basta andare sul menù Dati nella tab Analisi e selezionare Analisi Dati.
Comparirà la seguente form:
Scegliamo Analisi Varianza: a due fattori con replica e clicchiamo su ok. Comparirà la seguente schermata:
Inseriamo nell’intervallo di input le celle dove sono stati inseriti i gruppi da analizzare (nell’esempio $B$3:$E$23). Nella casella di testo di Righe per campione inseriamo 5 (perché i campioni per ogni dieta che stiamo analizzando sono cinque), e infine definiamo se vogliamo il risultato dell’analisi in un nuovo foglio di lavoro oppure nello stesso (nell’esempio scegliamo la cella H3, dove partire ad inserire i risultati dell’analisi).
Cliccando su ok, compariranno tutta una serie di tabelle di riepilogo dei fattori scelti inizialmente, più la tabella analisi della varianza.
Per semplicità commenteremo prima le tabelle di riepilogo, che vengono riassunte dalla seguente immagine, e successivamente la tabella riassuntiva di analisi della varianza.
Abbiamo quattro tabelle che fanno riferimento alle diete che stiamo analizzando (dieta ipocalorica, a basso contenuto di grassi, a basso contenuto di carboidrati e il gruppo di controllo). Vediamo i risultati della prima tabella Ipocalorica (in quanto gli altri risultati si ricavano allo stesso modo).
La riga Conteggio indica il numero di campioni analizzati per la dieta, che sono sempre cinque, sia per il fattore dieta, sia per il fattore età. La colonna totale (L7) indica la somma delle tre celle (I7 + J7 + K7).
La riga Somma indica la somma dei risultati nella dieta ipocalorica ottenuti dalle persone con diverse età. In particolare la cella I8 assume valore 33 (ottenuto dalla somma delle prime cinque righe, colonna età 30-40, 8 + 9 + 6 + 7 + 3). Lo stesso vale se si considera la cella J8: 23 è pari alla somma dei risultati ottenuti dalle persone che sono state assegnate alla prima dieta e che hanno età tra i 40 e 50 anni (in particolare 3 + 4 + 7 + 2 + 7). Idem se considero le persone associate alla stessa dieta con età tra i 50 e 60 anni: 22 è la somma di 4 + 8 + 3 + 2 + 5. Infine si ha il totale (cella L8), pari a 78, somma delle celle (I8 + J8 +K8).
La riga Media indica la media dei risultati ottenuti nella prima dieta. Per il primo gruppo di persone (età 30-40) il risultato è pari a 33/5= 6,6. Per il secondo gruppo di persone (età 40-50) il risultato è pari a 23/5 = 4,6. Idem per quanto il terzo gruppo: 22/5 = 4,4. Il totale 5,2 (cella L9), contrariamente ai casi precedenti, si ottiene dividendo 78 (cella L8) per 15 (cella L7). Oppure (6,6+4,6+4,4) /3.
La riga varianza viene calcolata con la formula Var.C(). In altre parole il risultato si calcola nel seguente modo:
Lo stesso procedimento viene utilizzato per calcolare il riepilogo delle tabelle dieta a basso contenuto di grassi, dieta a basso contenuto di carboidrati e gruppo di controllo.
L’ultima tabella di riepilogo è la tabella totale.
Anche qua è molto simile. Vediamo di commentare brevemente:
- Riga Conteggio: indica il numero di campioni totali analizzati. Sono 20, (5 per ogni gruppo di dieta, e per ogni fattore età).
- Riga Somma: è la somma dei valori Somma delle precedenti tabelle. Il valore 71 (cella I32) è pari alla somma di 33 + 15 + 17 + 6 (rispettivamente celle I8 + I14 + I20 + I26). Lo stesso vale per il gruppo età di 40-50 anni: 91 è la somma di 23 + 36 + 28 + 4 (rispettivamente celle J8 + J14 + J20 + J26) e per il gruppo età 50-60 anni: 69 è la somma di 22 + 27 + 22 + (-2) (rispettivamente celle K8 + K14 + K20 + K26).
- Riga Media: lo si può calcolare in due modi. Il più semplice è fare (71/20) per il primo gruppo di pazienti. Per il secondo gruppo di pazienti (40-50 anni) la media si può ottenere dividendo 91 per 20 (fa proprio 4,55). Infine per il terzo gruppo (50-60 anni) la media si ottiene dividendo 69 per 20 (=3,45).
- Riga Varianza. Indica la varianza totale di tutti i gruppi di dieta ed età dei pazienti analizzati. La formula di calcolo è la seguente:
Passiamo ora alla tabella Analisi della varianza.
Per comprendere i calcoli vediamo di riassumere i valori delle colonne. Mostreremo per ogni colonna il valore delle formule e come Excel calcola i risultati riportati nell’immagine sopra.
Somma dei quadrati o SQ (colonna I)
La colonna I indica la somma dei quadrati (sigla SQ, o SS dall’inglese Sum of Squares). La prima riga, dove troviamo il valore di 225,3833 indica la somma dei quadrati del fattore riga (Sum of Squares rows, o SSr), calcolabile dalla seguente formula:
Ciò significa che la riga 1 fa riferimento alla dieta ipocalorica. La riga 2 alla dieta a basso contenuto di grassi, la riga 3 alla dieta a basso contenuto di carboidrati, e infine la riga 4 al gruppo di controllo. Per queste righe occorre considerare anche il fattore età suddiviso per dieta. Onde capire meglio, vediamo come viene calcolata la formula appena vista che ci darà il risultato della cella I39.
Siccome la seconda parte l’abbiamo calcolata per l’SSr (2) non cambia in questo caso.
Quindi SSc è pari a (3) – (2):
SSc = 904,15 – 889,35 = 14,8
Calcoliamo ora la cella I42, la somma entro i quadrati (Sum o Squares Within, o SSW). La formula per calcolarla è la medesima:
Per quanto riguarda il secondo membro avremo:
Calcoliamo i quadrati dei valori appena trovati:
Questi sono valori che abbiamo già trovato. Pertanto avremo che
SST = (4) – (1a) / Ntot = 1453 – 53361/60 = 563,65
Per differenza ora possiamo trovare il valore SS Interazione (Sum of Squares rows x columns, o SS r x c) pari a:
SSr x c = SST – (SSR + SSC +SSW) = 563,65 – (225,3833 + 14,8 + 260) = 63,4667
Gradi di libertà o gdl (Colonna J)
Nella colonna J abbiamo i gradi di libertà, che condizionano il calcolo di F.
I gradi di libertà per le righe, (cella J39), sono calcolati tramite seguente formula:
glr = numero di righe – 1 = 4 – 1 = 3
I gradi di libertà per le colonne, (cella J40), vengono calcolati tramite seguente formula:
glc = numero di colonne – 1 = 3 – 1 = 2
I gradi di libertà per l’interazione (cella J41) sono calcolati tramite seguente formula:
glr x c = (numero di righe – 1 ) * (numero di colonne – 1) = (4 – 1) * (3 – 1) = 3 * 2 = 6
I gradi di libertà per entro i gruppi, (cella J42), vengono calcolati tramite seguente formula:
glW = Numero Totale – numero di celle = 60 – 12 = 48
I gradi di libertà totali (cella J44), saranno dati da:
glT = Numero Totale – 1 = 60 – 1 = 59
Media dei quadrati o MQ (colonna K)
La cella K39, che indica la media dei quadrati delle righe (Mean of Squares rows, o MSr), si calcola dalla seguente formula:
MSr = SSr / glr = 225,3833 / 3 = 75,12778
La cella K40, che indica la media dei quadrati delle colonne (Mean of Squares columns, o MSc), si calcola analogamente a prima:
MSc = SSc / glc = 14,8 / 2 = 7,4
Idem per la media dei quadrati entro i gruppi (cella K42, Mean of Squares within, o MSw) e la media dei quadrati per l’interazione (cella K41, Mean of Squares for interation, MSr x c)
MSw = 260 / 48 = 5,416667 e MSr x c = 63,46667 / 6 = 10,57778
Valore F (colonna L)
Il valore di F per le righe è calcolato tramite seguente formula:
Cella L39 -> Fr = MSr / MS w = 75,12778 / 5,416667 = 13,86974
Cella L40 -> Fc = MSc / MS w = 7,4 / 5,416667 = 1,366154
Cella L39 -> Fr x c = MSr x c / MS w = 10,57778/ 5,416667 = 1,952821
F crit (colonna N)
Il valore critico F statistico (colonna N) lo si ricava scegliendo dalla tabella della distribuzione F, valutando i gradi di libertà, considerando:
- Per le righe i gl 3 e 48 (troviamo dalla tabella valore di 2,80);
- Per le colonne i gl 2 e 48 (troviamo dalla tabella valore 3,19);
- Per l’interazione righe colonne 6 e 48 gl (troviamo dalla tabella valore 2,30).
Valore di significatività (colonna M)
Infine, i valori di significatività (colonna M) vengono trovati dalla funzione di distribuzione F sostituendo nell’asse delle ascisse il valore del test F (colonna L). Sotto possiamo vedere le tre immagini che calcolano il valore di significatività per i due fattori (più anche per l’interazione tra i due fattori), calcolate utilizzando il link gratuito per determinare graficamente i valori della funzione di distribuzione F.



Possiamo quindi concludere che:
- Fattore Riga: Poiché il valore p (dieta) è pari a 1,21814E-06 (numero piccolo) ed è minore del livello di significatività 0,05 (alfa) possiamo rifiutare l’ipotesi nulla e concludere che le diete sono statisticamente differenti.
- Fattore Colonna: Poiché il valore p (età) è pari a 0,2648 ed è maggiore del livello di significatività 0,05 (alfa) non possiamo rifiutare l’ipotesi nulla. Possiamo concludere, con un livello di confidenza del 95%, che non ci sono differenze significative nel risultato ottenuto dalla dieta per i differenti gruppi di età.
- Interazione tra fattore riga e colonna: Poiché il valore p (interazione) è pari a 0,0912 ed è maggiore del livello di significatività 0,05 (alfa) non possiamo rifiutare l’ipotesi nulla. Con un livello di confidenza del 95% concludiamo che non vi è alcuna interazione significativa tra i risultati delle quattro diete e l’età dei pazienti studiati.
Quest’ultimo risultato lo si può verificare tracciando le interazioni medie tra i livelli dei due fattori. Otterremo una tabella come la seguente:
Da questa tabella possiamo ricavare i seguenti due grafici a linee:
Il primo grafico rappresenta i gruppi di età per risultati medi ottenuti dalle varie diete. Le linee che sono approssimativamente parallele sono indicazioni della mancanza di interazione, mentre le linee che non sono approssimativamente parallele indicano l’interazione.
Si potrebbe pensare che esista interazione. In realtà osservando meglio il grafico si vede che i gruppi dieta 40-50 e 50-60 hanno lo stesso andamento, l’unica che ha andamento quasi opposto è il primo gruppo di età (30-40), ma poi torna decrescente come gli altre due.
Dal secondo grafico, invece, notiamo i risultati medi della dieta ottenuti per gruppo di età. Vediamo che quello che più differente è la dieta ipocalorica, che ha esattamente un trend opposto alle altre tre.
Lascio la possibilità di scaricare il file Excel d’esempio cliccando sul seguente bottone:
Conclusione
Vorrei concludere l’articolo con le seguenti tre considerazioni:
1) L’esempio proposto è un test per dimostrare esclusivamente come funziona l’analisi della varianza Anova a due vie con replica in Excel, e non vuole far credere al lettore che il risultato di tale test sia esaustivo (tieni a mente che i valori sono stati definiti casualmente e il test non si è eseguito nella realtà).
2) l’analisi della varianza a due fattori è molto più complicata di quella ad un fattore, e può generare risultati completamente diversi.
3) Un limite di Excel è che non si riescono ad eseguire analisi della varianza ANOVA con dati con un formato molto comune come il testo, ma solo con dati di tipo numerico (si noti che il risultato della dieta ed età sono entrambi valori numerici). Se avessi voluto analizzare il risultato delle diete rispetto al genere dell’individuo e non all’età, ad esempio, non avrei ottenuto alcun risultato, ma avrei dovuto utilizzare un software più specifico di statistica come SPSS o R.