Due server hanno lo stesso tempo medio di risposta: 100 millisecondi. Il primo risponde sempre tra 95 e 105, il secondo oscilla tra 40 e 160. Per un utente sono esperienze molto diverse, ma la media non lo dice. Gli indici di dispersione completano gli indici di posizione: misurano quanto i dati si allontanano dal centro, e senza di essi qualunque riassunto numerico è incompleto.
Il campo di variazione
L'indice più semplice è il campo di variazione, la differenza tra il valore massimo e il minimo. È immediato ma fragile: dipende da due soli valori, e un unico dato anomalo lo stravolge. Inoltre tende a crescere con il numero di osservazioni, perché più dati si raccolgono più è probabile incontrare estremi.
Varianza e deviazione standard
La varianza misura la media dei quadrati degli scarti dalla media. La deviazione standard è la sua radice quadrata e ha il vantaggio di essere espressa nella stessa unità dei dati.
Perché si divide per n − 1
Quando si calcola la varianza di un campione per stimare quella della popolazione, si divide la somma dei quadrati degli scarti per n − 1 invece che per n. Il motivo è che gli scarti sono calcolati rispetto alla media del campione, che è per costruzione il punto più vicino ai dati stessi: dividendo per n la varianza risulterebbe in media sottostimata. La correzione, nota come correzione di Bessel, elimina questa distorsione. Con campioni grandi la differenza è trascurabile, con campioni piccoli no.
L'esempio dei due server
Cinque misure per ciascun server, in millisecondi:
- Server A: 95, 98, 100, 102, 105
- Server B: 40, 60, 100, 140, 160
Entrambi hanno media 100. Per A la somma dei quadrati degli scarti è 25 + 4 + 0 + 4 + 25 = 58; divisa per 4 dà una varianza di 14,5 e una deviazione standard di circa 3,8 ms. Per B la somma è 3.600 + 1.600 + 0 + 1.600 + 3.600 = 10.400; divisa per 4 dà 2.600, con deviazione standard di circa 51 ms. Il numero riassume bene la differenza che a occhio era evidente.
Il limite
Come la media, anche la deviazione standard è sensibile ai valori estremi, anzi di più, perché gli scarti vengono elevati al quadrato. Un singolo valore molto lontano può dominarla.
Indici robusti
Lo scarto interquartile
I quartili dividono i dati ordinati in quattro parti uguali. Il primo quartile Q1 lascia sotto di sé il 25% dei dati, il terzo quartile Q3 il 75%. Lo scarto interquartile è IQR = Q3 − Q1 e misura l'ampiezza della metà centrale dei dati, ignorando le code. È robusto: i valori estremi non lo influenzano.
Esistono metodi leggermente diversi per calcolare i quartili, che su campioni piccoli danno risultati un po' differenti.
La deviazione assoluta mediana
La MAD (median absolute deviation) si calcola così: si trova la mediana dei dati, si calcolano le distanze assolute di ogni valore da essa, e si prende la mediana di queste distanze. È ancora più robusta dell'IQR e viene spesso usata per individuare anomalie nei dati di monitoraggio.
Individuare i valori anomali
Una regola molto diffusa, usata anche nei grafici a scatola (boxplot), considera potenzialmente anomali i valori:
- inferiori a Q1 − 1,5 · IQR;
- superiori a Q3 + 1,5 · IQR.
Supponiamo che le latenze di un servizio abbiano Q1 = 40 ms e Q3 = 80 ms. L'IQR è 40 ms, quindi la soglia superiore è 80 + 60 = 140 ms. Le richieste sopra i 140 ms vengono segnalate.
Attenzione però: un valore anomalo non è automaticamente un errore. Può essere un errore di misura da correggere, ma anche il dato più importante dell'intero insieme: la richiesta lenta che rivela un problema, la transazione fraudolenta, il guasto incipiente. Eliminare gli outlier senza capirli è uno degli errori più comuni nell'analisi dei dati. Nel lavoro di analisi forense, per esempio, sono spesso proprio i valori fuori norma a indicare dove guardare.
Il coefficiente di variazione
Per confrontare la variabilità di grandezze con scale diverse si usa il coefficiente di variazione, il rapporto tra deviazione standard e media. Una deviazione standard di 5 ms è enorme per un servizio che risponde in media in 10 ms (CV = 50%), trascurabile per uno che risponde in 1.000 ms (CV = 0,5%). Ha senso solo per grandezze positive con uno zero significativo: non va usato, per esempio, con temperature in gradi Celsius.
Riepilogo
| Indice | Robusto | Uso tipico |
|---|---|---|
| Campo di variazione | No | Prima occhiata, limiti fisici |
| Deviazione standard | No | Dati simmetrici, base dei metodi classici |
| Scarto interquartile | Sì | Dati asimmetrici, boxplot |
| MAD | Sì | Rilevamento di anomalie |
| Coefficiente di variazione | No | Confronti tra scale diverse |
Buone pratiche
- Accompagna sempre una media con una misura di dispersione.
- Per dati asimmetrici usa mediana e IQR invece di media e deviazione standard.
- Prima di eliminare un outlier, scopri da dove viene.
- Indica se la deviazione standard è campionaria (n − 1) o di popolazione (n).
In sintesi
- La dispersione dice quanto i dati si allontanano dal centro e completa la media.
- La varianza campionaria si divide per n − 1 per non sottostimare quella vera.
- Deviazione standard e campo di variazione sono sensibili agli estremi; IQR e MAD no.
- La regola di 1,5 IQR segnala possibili outlier, che vanno capiti prima di essere scartati.
- Il coefficiente di variazione permette confronti tra grandezze con scale diverse.