Webtudordimatematica

Boxplot: grafico con 5 indici di posizione

Il grafico boxplot è un grafico a forma di scatola con baffi molto usato in statistica descrittiva per condurre un'analisi esplorativa dei dati mediante il calcolo di 5 indici di sintesi. Come puoi vedere dall'immagine qui sotto, tale grafico prende il nome dalla sua forma, ("box" in inglese significa appunto "scatola"). Tuttavia, alcune volte è anche chiamato "whisker plot" (whisker infatti significa "baffo" in inglese) per la presenza dei due baffi che fuoriescono dalla scatola. Può essere graficato o verticalmente oppure orizzontalmente. Nel primo caso i valori della variabile crescono percorrendo il grafico dal basso verso l'alto, mentre invece nel secondo caso la scala dei valori si legge orizzontalmente da sinistra a destra.

boxplot verticaleboxplot orizzontale

Come detto, il boxplot serve a descrivere la distribuzione di una variabile quantitativa o numerica mediante la visualizzazione di 5 indici di posizione:

  1. LIMITE INFERIORE: fine del baffo inferiore che identifica il valore non anomalo più piccolo dei dati;
  2. PRIMO QUARTILE Q1: il valore sotto il quale risiede il 25% della distribuzione;
  3. SECONDO QUARTILE Q2 o MEDIANA: rappresenta il valore centrale della distribuzione ossia quello che la spezza in due parti uguali;
  4. TERZO QUARTILE Q3: ci dice dove cade il 75% dei dati;
  5. LIMITE SUPERIORE: fine del baffo superiore che indica il valore non anomalo massimo presente tra i dati.

I 5 indici del grafico boxplot

I valori anomali chiamati anche OUTLIERS sono quei valori che si distaccano troppo dal resto dei dati. Se ce ne sono, questi compariranno sotto il limite inferiore o sopra il limite superiore. Se invece la variabile non ha valori estremanti, allora la fine dei baffi rappresenteranno rispettivamente valore MINIMO e MASSIMO.

Come calcolare limite inferiore e superiore del boxplot

Come già detto, i limiti inferiore e superiore (che indico con $L_i$ e $L_s$) rappresentano rispettivamente le soglie minima e massima entro cui cadono i valori NON anomali della variabile. In altre parole, valori più piccoli di $L_i$ e più grandi di $L_s$ si considerano outliers. Ma come calcolare mediante formule queste soglie che ci permettono di verificare se la variabile in esame presenta valori anomali o meno?

Prima di tutto è necessario calcolare il cosiddetto range interquartile (interquartile range in inglese), ossia la differenza tra terzo e primo quartile:

 $$IQR=Q_3-Q_1$$

L'IQR, detto anche differenza interquartile, non è altro che l'altezza della scatola e contiene il 50% dei valori della variabile.

Fatto ciò, il troncamento inferiore e superiore si calcolano con le seguenti formule:

$$\begin{array}{l}
L_i=Q_1-1.5\cdot IQR\\
L_s=Q_3+1.5\cdot IQR\end{array}$$

Ribadisco che il limite inferiore e superiore non coincidono necessariamente con il minimo e il massimo valore della variabile misurata. Questo accade solo quando non vi sono valori anomali, ossia tutti i valori assunti dalla variabile ricadono nell'intervallo $(L_i, L_s)$

 

Come si interpreta un boxplot?

Di seguito gli aspetti da attenzionare:

  • Guarda la scala di misura per capire quali sono i valori assunti dalla variabile in esame.
  • Guarda la lunghezza della scatola e dei baffi: più lunghi sono più dispersa sarà la variabile.
  • Verifica se sono presenti valori outliers sotto o sopra i baffi e considera se tenerli o eliminarli dalle tue analisi.

 

Come graficare un boxplot in R

La sintassi base del comando R è:
boxplot(nome_variabile_numerica)
ma tra parentesi puoi specificare altri parametri opzionali per personalizzare il grafico. Ad esempio:

  • il parametro main indica il titolo del grafico;
  • i parametri xlab e ylab servono a dare un’etichetta all’asse x e all’asse y rispettivamente
  • il parametro col mediante il quale si assegna un colore alla scatola. Il colore può essere specificato usando i nomi dei colori in inglese come red, blue, yellow, ecc oppure inserendo il codice esadecimale che indica una particolare tonalità.

Un esempio potrebbe essere il seguente:

data("ChickWeight")
data <- ChickWeight
boxplot(data$weight,
        main="Boxplot ChickWeight",
        col = "#144471")

Nota che ho considerato il dataset "ChickWeight" presente già nell'ambiente di sviluppo di R. Richiama l'help tramite il comando ?ChickWeight per ulteriori dettagli.

Boxplot di gruppo in R

In R si può produrre anche un boxplot di gruppo per confrontare le distribuzioni di una variabile numerica spaccata per categoria o modalità. Questo è possibile solo quando hai una variabile numerica e una categoriale.
La sintassi base della funzione R è:
boxplot(var_numerica ~ var_categoriale)
dove il simbolo "~" si chiama tilde. Al solito è possibile aggiungere ulteriori parametri per personalizzare il plot secondo i propri gusti. Considerando il dataset precedente, possiamo confrontare le distribuzioni dei pesi dei pulcini a seconda della dieta somministrata:

boxplot(data\$weight ~ data\$Diet,
        xlab = "Diet",
        ylab = "Weight",
        main="Boxplot ChickWeight by diet",
        col = "#ff6600")

Guarda il video qui sotto per vedere i comandi R in azione!

Il quaderno degli appunti
Statistica e Probabilità

Tavola della distribuzione normale standard: come leggerla

La tavola della distribuzione normale standard ti permette di calcolare la probabilità a sinistra di un dato quantile o viceversa trovare il valore d
Analisi matematica

Calcolo delle derivate

La teoria dell'analisi matematica ci dice che, a norma di definizione, il calcolo della derivata di una funzione equivale al calcolo del limite del ra
Trigonometria

Teorema della corda, teorema delle proiezioni, teorema dei seni e dei coseni

Teorema della corda La misura di una corda di una circonferenza è uguale al prodotto tra la misura del diametro ed il seno di uno qualunque degli ang