Test di Kruskal-Wallis: La Guida Pratica per Dati “Storti” (con Esempi e Codice Python)

Cerca:

Generic selectors
Exact matches only
Search in title
Search in content
Post Type Selectors
quando usare il test di Kruskal-Wallis

Immagina la scena: il foglio di calcolo è un campo minato. Dati che non seguono le regole, valori anomali che sfidano la logica e il tuo capo che vuole una risposta adesso. L’analisi tradizionale, come l’ANOVA, va in tilt di fronte a questo caos, perché si aspetta un mondo ordinato che raramente esiste nella realtà. È in questi momenti, quando la media aritmetica mente spudoratamente, che emerge un eroe silenzioso della statistica: il test di Kruskal-Wallis. Non è solo una formula, ma un modo diverso di guardare i numeri, un approccio che non si spaventa del disordine e ti permette di trovare segnali attendibili anche quando i dati sembrano un disastro.

Il capo ti guarda: “Tre versioni della app, stessi download, recensioni diverse. Serve una risposta in 30 minuti, senza laurea in statistica”.

Apri il foglio: numeri storti, zero normali.

Lì capisci perché il test di Kruskal-Wallis è il tuo passaporto per uscire dalla riunione con le ossa intatte.

1. Il problema in 3 righe

Hai tre o più gruppi da confrontare, ma i dati sembrano un fungo: code lunghe, outlier sparsi, pochi campioni.

L’ANOVA? Richiede normalità. Il t-test? Vale solo per due gruppi.

Kruskal-Wallis è l’alternativa non parametrica che ordina i dati e controlla se le mediane sono diverse senza chiederti nulla in più.

 

2. Come funziona (senza formule per 30 secondi)

Unisci tutti i valori, dal più piccolo al più grande, e dagli un rango (1, 2, 3…).

Somma i ranghi per gruppo.

Se una somma è troppo alta o troppo bassa, qualcosa non torna.

Il test restituisce un p-value: sotto 0.05 almeno un gruppo è fuori coro.

 

3. Storia vera #1 – Il farmaco che quasi falliva

Torino, 2022. Start-up biotech: 12 pazienti, 3 trattamenti.

L’ANOVA dice “nessuna differenza”. Unico problema: due pazienti hanno tempi di sollievo mostruosi (120 h vs 30 h).

Kruskal-Wallis: p = 0.01.

Scoprono che il placebo ha due outlier che spostano la media.

Risparmiano 120 000 € di fase III e cambiano protocollo prima che il board li fulmini.

 

4. Quando scegliere Kruskal-Wallis (check-list da stampare)

  • ✅ 3+ gruppi indipendenti
  • ✅ Dati ordinati o continui skewati
  • ✅ Outlier che non puoi rimuovere
  • ✅ Campioni < 30 per gruppo
  • ✅ Vuoi confrontare mediane, non medie

 

5. Storia vera #2 – Il negozio di cosmetici sotto casa

Palermo, via Maqueda. Il titolare ha 3 listini: sconto 0 %, 10 %, 20 %.

Raccoglie 20 recensioni per fascia (voto 1-10).

I voti non sono normali: chi prende il 20 % vota 10 solo se riceve campioni gratis.

Kruskal-Wallis: p = 0.03.

Dunn post-hoc: solo 0 % vs 20 % è significativo.

Decide di mantenere il 20 % solo online, taglia i campioni gratis e aumenta il margine del 4 %.

 

6. Esempio mini – Calcolo manuale in 2 minuti

Confrontiamo i punteggi di 3 classi con metodi di insegnamento diversi.

Gruppo A (tradizionale) 85, 88, 90, 92
Gruppo B (misto) 78, 80, 82, 84
Gruppo C (online) 70, 72, 74, 76

Passo 1 – Ranghi globali

70(1) 72(2) 74(3) 76(4) 78(5) 80(6) 82(7) 84(8) 85(9) 88(10) 90(11) 92(12)

Passo 2 – Somme ranghi

R_A = 42 R_B = 26 R_C = 10

Passo 3 – Statistica H

H = 9.846, df = 2 → p ≈ 0.007 (tabella χ²)

Conclusione: almeno una mediana è diversa. Dunn post-hoc: A batte C.

7. Codice Python pronto da copiare

import numpy as np, scipy.stats as stats
a = np.array([85, 88, 90, 92])
b = np.array([78, 80, 82, 84])
c = np.array([70, 72, 74, 76])
h, p = stats.kruskal(a, b, c)print(f"H = {h:.3f}, p = {p:.3f}")# Output: H = 9.846, p = 0.007

 

8. Kruskal-Wallis vs altri test – tabella tascabile

Test Tipo di dati Gruppi Relazione Nota
Kruskal-Wallis ordinali/continui skewati 3+ indipendenti confronta mediane nessuna assunzione
ANOVA continui normali 3+ indipendenti confronta medie più potente se le assunzioni valgono
Mann-Whitney ordinali/continui 2 indipendenti versione a 2 gruppi di Kruskal
Friedman ordinali/continui 3+ appaiati stesso soggetto più volte
Chi-quadrato categorici nominali 2+ indipendenza tra variabili
Forse potrebbe interessarti anche:  Cos'è il Modello di Bass e Come Usarlo in Python per Prevedere le Vendite di un Prodotto

 

9. Storia vera #3 – L’esame di laboratorio che salvò 30 ragazzi

Prof di statistica, Liceo scientifico Roma 3.

Fa fare il test sui voti reali delle 3 classi quinte.

I ragazzi vedono la differenza tra media (dice “tutto uguale”) e mediana (dice “B è meglio di C”).

Da quel giorno nessuno scrive più “ho fatto la media” senza guardare il grafico.

10. Errori che fanno male (lista rapida)

1. Usare Kruskal-Wallis con gruppi appaiati → sbagliato, serve Friedman

Questo è l’errore più comune e riguarda la struttura dei dati.

  • Gruppi Indipendenti (per Kruskal-Wallis): Le misurazioni in un gruppo non hanno alcuna relazione con quelle di un altro. Pensa a tre classi diverse di studenti a cui viene somministrato un test. Il risultato di uno studente nella Classe A è indipendente da quello di uno studente nella Classe B.
  • Gruppi Appaiati o Misure Ripetute (per Friedman): Le misurazioni sono collegate perché provengono dallo stesso “soggetto” in condizioni diverse. Ad esempio, misurare il livello di stress degli stessi 15 impiegati prima di un progetto, durante il progetto e dopo il progetto. I tre punteggi di ogni impiegato sono “appaiati”.

Perché è un errore? Usare il Kruskal-Wallis su dati appaiati ignora la correlazione interna (il fatto che le misure provengono dalla stessa fonte). Questo porta a calcoli sbagliati e conclusioni inaffidabili. Il test di Friedman è specificamente progettato per analizzare le differenze tra tre o più gruppi quando i dati sono appaiati.

Il test di Friedman

Il test di Friedman è un test statistico non parametrico usato per rilevare differenze tra tre o più condizioni quando gli stessi soggetti sono stati testati in ogni condizione.

È l’alternativa non parametrica all’ANOVA per misure ripetute (Repeated Measures ANOVA).

Il problema che risolve 🎯

Immagina di voler confrontare l’efficacia di tre diversi metodi di studio (A, B, C) sullo stesso gruppo di 15 studenti. Fai sostenere loro un test dopo aver usato ciascun metodo. I punteggi potrebbero non essere distribuiti normalmente.

Il test di Friedman risponde alla domanda: “C’è una differenza significativa nei punteggi ottenuti con i tre metodi?”

Come funziona (in breve)

Invece di usare i punteggi grezzi, il test si basa sui ranghi.

  1. Assegna i Ranghi per Soggetto: Per ogni studente, i suoi tre punteggi vengono ordinati dal peggiore al migliore (es. rango 1, 2, 3). Questo viene fatto per ogni partecipante.
  2. Somma i Ranghi per Condizione: Si calcola la somma totale dei ranghi per il Metodo A, per il Metodo B e per il Metodo C.
  3. Verifica le Differenze: Se un metodo è costantemente il migliore (o il peggiore) per la maggior parte degli studenti, la sua somma dei ranghi sarà molto diversa dalle altre. Il test calcola se questa differenza è statisticamente significativa.

Quando usarlo (Checklist) ✅

Usa il test di Friedman quando:

  • Vuoi confrontare tre o più gruppi o condizioni.
  • I dati sono appaiati o provengono da misure ripetute (gli stessi soggetti sono in tutti i gruppi).
  • La variabile dipendente è ordinale (es. classifiche) o continua.
  • Non puoi assumere che i dati seguano una distribuzione normale.

Cosa significa il risultato

Il test di Friedman è un test “omnibus”. Il suo p-value ti dice se esiste una differenza, ma non dove.

  • Se p < 0.05 (significativo): Concludi che “almeno una condizione è diversa dalle altre”.
  • Se p > 0.05 (non significativo): Non hai prove sufficienti per dire che ci sia una differenza tra le condizioni.

Se il risultato è significativo, devi usare un test post-hoc (come il test di Nemenyi o confronti a coppie con il test di Wilcoxon) per scoprire quali specifiche coppie di condizioni sono diverse tra loro (es. A vs B, A vs C, B vs C).

Forse potrebbe interessarti anche:  Ragionamento Induttivo vs Induzione Matematica: Perché il Machine Learning non "Dimostra" (e Quando Non Usarlo)

2. Dimenticare il test post-hoc (es. Dunn) → il p-value generico non dice chi vince

Il test di Kruskal-Wallis è un test “omnibus”, una parola latina che significa “per tutte le cose”.

Un p-value significativo (es. ) ti dice solo una cosa: “C’è una differenza significativa da qualche parte tra le mediane di questi gruppi”.

Non ti dice quali gruppi specifici sono diversi tra loro. Ad esempio, con tre gruppi A, B e C, un p-value di 0.02 potrebbe significare che:

  • A è diverso da C, ma non da B.
  • B è diverso sia da A che da C.
  • Tutti e tre i gruppi sono diversi l’uno dall’altro.

Per scoprirlo, devi eseguire un test post-hoc (che significa “dopo questo”). Il test di Dunn è l’analisi di follow-up standard per il Kruskal-Wallis. Esegue confronti a coppie (A vs B, B vs C, A vs C) e ti dice esattamente dove si trovano le differenze significative, aggiustando i p-value per evitare falsi positivi.

In sintesi: Senza il test di Dunn, hai solo la notizia che è successo qualcosa, ma non sai cosa.

3. Credere che “non parametrico” significhi “senza potenza”

Questo è un pregiudizio comune.

  • Potenza statistica è la capacità di un test di trovare una differenza reale quando esiste. Un test potente è come un metal detector sensibile: trova il tesoro se c’è.
  • L’ANOVA (il cugino “parametrico” del Kruskal-Wallis) è molto potente, ma solo se i suoi requisiti sono soddisfatti: dati distribuiti normalmente, varianze simili, ecc. Quando i dati sono “puliti”, l’ANOVA è il miglior strumento.
  • Quando i dati sono skewati (asimmetrici) o pieni di outlier (valori anomali), le assunzioni dell’ANOVA crollano. Usare l’ANOVA in questo scenario è come usare un righello di gomma: i risultati non sono affidabili e la sua potenza diminuisce drasticamente.

In questi casi, il Kruskal-Wallis diventa più potente dell’ANOVA. Ignorando i valori esatti e usando solo i ranghi, neutralizza l’effetto distorsivo degli outlier. Quindi, con dati “storti” e disordinati (cioè la maggior parte dei dati reali), un test non parametrico non è una scelta di ripiego, ma la scelta strategicamente migliore.

4. Eseguire su Excel senza plug-in → la funzione non esiste

Questo è un errore puramente pratico.

Le versioni standard di Microsoft Excel non hanno una funzione integrata =KRUSKAL.WALLIS(). Non puoi semplicemente selezionare i dati e ottenere un risultato come faresti per una media o una deviazione standard.

Le opzioni per eseguire il test sono:

  1. Calcolo manuale in Excel: Implica la creazione di colonne per ordinare tutti i dati, assegnare i ranghi, sommarli per gruppo e inserire i risultati nella formula. È un processo lungo, noioso e ad altissimo rischio di errori.
  2. Plug-in per Excel: Esistono componenti aggiuntivi, come il popolare e gratuito Real Statistics Resource Pack, che estendono le capacità di Excel includendo il Kruskal-Wallis e molti altri test statistici avanzati.
  3. Software specifici: La via maestra per chi fa analisi dati è usare strumenti nati per questo. Python (con la libreria SciPy) o R eseguono il test con una sola riga di codice, in modo rapido, accurato e riproducibile.

L’errore sta nel perdere ore a cercare una funzione inesistente o a rischiare errori con calcoli manuali, quando esistono strumenti gratuiti e molto più efficienti.

11. Oltre la Formula: Perché Kruskal-Wallis è una Lezione di Umiltà

In un mondo ossessionato dai modelli perfetti e dalle medie impeccabili, il test di Kruskal-Wallis ci insegna una lezione fondamentale: la realtà è disordinata. Invece di forzare i dati a rientrare in una curva a campana ideale, questo test li accetta per quello che sono, con le loro asimmetrie e i loro valori estremi.

Forse potrebbe interessarti anche:  ANOVA Spiegata con Esercizi Svolti: Dal Marketing all'AI Sentiment Analysis

Scegliere un test non parametrico non è una ripiego, ma una decisione strategica.

Significa ammettere che la media non è l’unica divinità e che la mediana, spesso, racconta una storia più onesta. In un’era di Big Data e intelligenza artificiale, dove gli algoritmi possono amplificare i bias nascosti nei dati, questo approccio “umile” è più rilevante che mai.

Ci ricorda di guardare sempre la forma dei nostri dati prima di interrogarli, un principio che salva carriere e budget.

12. TL;DR – Da scaricare sul cellulare

  • Più di 2 gruppi?
  • Dati storti?
  • Kruskal-Wallis → p < 0.05 → Dunn → sai chi vince.

Fatto in 5 righe di Python.

TL;DR è l’acronimo di “Too Long; Didn’t Read” (“Troppo lungo; non ho letto”).
In italiano è diventato un sostantivo: il riassunto da 10 secondi che salva quando sei sul treno, in riunione o sul banco del bar.
Nel contesto dell’articolo è il mini-poster da salvare come immagine sul telefono: 4 punti-bullet, font grande, zero formule.
Una specie di biglietto della fortuna da tirar fuori quando il capo chiede «Ma è significativa?» e tu hai 3 secondi per rispondere.😂😂

Sezione extra per i curiosi – Perché l’esercizio 7 è didatticamente perfetto

Questo esempio non è stato scelto a caso. La sua forza didattica risiede in alcune caratteristiche precise che lo rendono perfetto per spiegare il concetto.

  • Separazione Perfetta dei Dati: I valori dei tre gruppi non si sovrappongono mai (tutti i punteggi di C sono inferiori a B, che a sua volta sono inferiori ad A). Questo scenario, sebbene irrealistico, rende il processo di assegnazione dei ranghi visivamente intuitivo. È immediato capire perché la somma dei ranghi del Gruppo A sarà la più alta e quella del Gruppo C la più bassa.
  • Assenza di Pareggi (Ties): Nessun valore è ripetuto nell’intero dataset. Questo semplifica enormemente il calcolo manuale, poiché non è necessario applicare la formula di correzione per i ranghi pari. Permette di concentrarsi sul concetto base del test senza complicazioni matematiche.
  • Piccola Dimensione del Campione: Con solo 4 osservazioni per gruppo, l’uso di un test parametrico come l’ANOVA sarebbe statisticamente debole e le sue assunzioni (specialmente la normalità) difficili da verificare. L’esempio sottolinea implicitamente uno dei principali vantaggi del Kruskal-Wallis: la sua efficacia anche con pochi dati.
  • Risultato Chiaro e Inequivocabile: Il p-value () è nettamente inferiore alla soglia comune di . Questo fornisce una conclusione forte e diretta (“c’è una differenza significativa”), evitando le ambiguità di un risultato borderline e rendendo il verdetto facile da interpretare per un neofita.

In sintesi, l’esercizio è un “caso da manuale” idealizzato, progettato per illustrare il funzionamento del test nella sua forma più pura e comprensibile.

Pubblicità