Anche oggi, invece di farmi cattivo sangue con Draghi & C., ho deciso di divertirmi con un po’ di matematica…
Ho ripreso il pezzo di ieri (v. Esercizio di statistica) e vi ho (quasi) subito trovato un errore! Ma procediamo con ordine…
Nella simulazione fatta per calcolare le varie percentuali ero stato molto scrupoloso e avevo considerato non solo i 38 morti ma l’intero campione di 44.000 pazienti (metà con placebo e metà vaccinati). Casualmente sceglievo una persona dal gruppo dei 44.000 (di cui 38 morte) e l’assegnavo al gruppo dei vaccinati o a quello del placebo. Questo significa che se uno dei due gruppi era già pieno (arrivato a 22.000 membri) tutti i rimanenti pazienti (eventuali morti compresi) finivano nell’altro gruppo. C'era quindi un certo (piccolo) condizionamento su come i 38 morti venivano distribuiti.
L’alternativa più semplice sarebbe stata quella di assegnare solo i 38 morti casualmente a un gruppo o all’altro. Secondo me infatti se la popolazione totale è molto più grande del numero dei morti allora non dovrebbe fare troppa differenza (*1).
Ho così riscritto il programma per usare questo metodo più semplice e sono passato da 1.000 a 10.000 simulazioni.
Anche in questo caso il risultato è stato analogo a quello ottenuto con l’algoritmo più complesso. Non sto a riportare tutte le cifre perché mi fa fatica ma solo quelle finali:
Delta - %
26 – 0,005%
24 – 0%
22 – 0,035%
20 – 0,035%
18 – 0,16%
16 – 0,405%
14 – 1,11%
12 – 2,105%
10 – 3,605%
Sommando questi valori da Delta-26 a Delta-12 ottengo 3,855% (minore del famigerato 5%) ma se vi aggiungo anche Delta-10 arrivo a 7,46% che quindi “sballa”. In altre parole anche questa simulazione conferma che il numero di morti significative si ha quando la differenza è di 12 o più.
Ma veniamo all’errore.
Nella simulazione di ieri ero rimasto stupito che la percentuale per Delta-0 fosse minore della media di Delta±2. Nella relativa nota 2 spiegavo di aver verificato manualmente per un numero di morti pari a 2 e a 4 ottenendo la conferma cercata che definivo “controintuitiva”.
Ma qualcosa evidentemente non mi tornava a livello inconscio e così oggi ho affrontato la questione matematicamente.
Mi sono reso conto che i vari Delta-K corrispondono alle combinazioni di K elementi sul numero totale di morti.
In particolare trovare Delta-0 equivale a trovare il numero di combinazioni in cui si possono distribuire la metà degli elementi. Supponiamo di avere 4 elementi e che lo 0 corrisponda al gruppo dei vaccinati e 1 a quello col placebo.
Le varie possibilità sono:
0000
0001
0010
0011
0100
0101
0110
0111
1000
1001
1010
1011
1100
1101
1110
1111
Il numero di combinazioni che danno Delta-0 è dato dal numero di ennuple con due “1” e due “0”: ovvero C(4,2) = 4!/(2!2!) = 6
Delta±2 sarà dato dal numero di ennuple con tre “1” o con tre “0”: siccome c’è simmetria mi basta considerare il numero di ennuple con tre “1” e moltiplicarlo per 2. Quindi C(4,3)*2 = 4*2 = 8. Quindi Delta±2 è maggiore di Delta-0.
Da notare che se il numero di morti è 2 si ha Delta-0 = C(2,1) = 2 e Delta±2 = C(2,2)*2 = 2. In questo caso i due valori sono quindi uguali.
Fin qui confermo quanto avevo concluso nella nota 2 di Esercizio di statistica.
Ma a questo punto è facile generalizzare.
Se il numero di morti è 2N allora Delta-0 sarà C(2N,N) mentre Delta±2 sarà C(2N,N+1)*2. Esplicitando devo verificare che la seguente disequazione sia vera al variare di N.
(2N)!/(N!N!) < (2N)!*2/((N+1)!(N-1)!)
Moltiplico entrambi i termini per (N!N!) ottenendo:
(2N)! < (2N)!*2N/(N+1)
Ora divido entrambi i termini per (2N)! ottenendo:
1 < 2N/(N+1)
E qui mi fermo: come si vede per N=1 (quindi per 2 morti) si ha 1 = 1 mentre per N=2 (quindi 4 morti) si ha 1 < 4/3 che è certamente vero.
Quindi dov’è l’errore?
Beh, era sotto il mio (ma anche vostro) naso!
Per verificare la forma a “campana” non dovevo confrontare Delta-0 con Delta±2 ma solo o con Delta-2 o con Delta+2!!
Probabilmente mi ero confuso perché nelle mie simulazioni facevo la media di Delta-N e Delta+N, cioè li sommavo insieme e poi dividevo il risultato per 2…
In altre parole Delta-0 dovrebbe avere una percentuale maggiore di Delta+2 (o Delta-2): il fatto che non sia stato così nelle mie simulazioni è probabilmente dovuto solo a un po’ di sfortuna.
In effetti poi mentre la differenza di ieri ottenuta su 1.000 simulazioni era significativa (media 131,5 contro 121) già quella di oggi su 10.000 è molto minore: media 1227 contro 1218.
A questo punto, visto che ormai avevo tutte le formule, mi sono scritto un programmino che calcola le probabilità teoriche dei vari Delta per 38 morti.
Ecco i valori ottenuti:
Delta: -38 = 3.63797880709171295166015625E-12
Running Total: 3.63797880709171295166015625E-12
Delta: -36 = 1.382431946694850921630859375E-10
Running Total: 1.4188117347657680511474609375E-10
Delta: -34 = 2.55749910138547420501708984375E-9
Running Total: 2.69938027486205101013183593750E-9
Delta: -32 = 3.0689989216625690460205078125E-8
Running Total: 3.338936949148774147033691406250E-8
Delta: -30 = 2.6853740564547479152679443359375E-7
Running Total: 3.0192677513696253299713134765625E-7
Delta: -28 = 0.0000018260543583892285823822021484375
Running Total: 0.00000212798113352619111537933349609375
Delta: -26 = 0.00001004329897114075720310211181640625
Running Total: 0.00001217128010466694831848144531250000
Delta: -24 = 0.000045912223868072032928466796875
Running Total: 0.00005808350397273898124694824218750000
Delta: -22 = 0.000177909867488779127597808837890625
Running Total: 0.00023599337146151810884475708007812500
Delta: -20 = 0.00059303289162926375865936279296875
Running Total: 0.00082902626309078186750411987304687500
Delta: -18 = 0.001719795385724864900112152099609375
Running Total: 0.00254882164881564676761627197265625000
Delta: -16 = 0.0043776609818451106548309326171875
Running Total: 0.00692648263066075742244720458984375000
Delta: -14 = 0.009849737209151498973369598388671875
Running Total: 0.01677621983981225639581680297851562500
Delta: -12 = 0.01969947441830299794673919677734375
Running Total: 0.03647569425811525434255599975585937500
Delta: -10 = 0.035177632889826782047748565673828125
Running Total: 0.07165332714794203639030456542968750000
Delta: -8 = 0.056284212623722851276397705078125
Running Total: 0.12793753977166488766670227050781250000
Delta: -6 = 0.0809085556466015987098217010498046875
Running Total: 0.20884609541826648637652397155761718750
Delta: -4 = 0.104705189660307951271533966064453125
Running Total: 0.31355128507857443764805793762207031250
Delta: -2 = 0.1221560546036926098167896270751953125
Running Total: 0.43570733968226704746484756469726562500
Delta: 0 = 0.12858532063546590507030487060546875
Running Total: 0.56429266031773295253515243530273437500
Delta: 2 = 0.1221560546036926098167896270751953125
Running Total: 0.68644871492142556235194206237792968750
Delta: 4 = 0.104705189660307951271533966064453125
Running Total: 0.79115390458173351362347602844238281250
Delta: 6 = 0.0809085556466015987098217010498046875
Running Total: 0.87206246022833511233329772949218750000
Delta: 8 = 0.056284212623722851276397705078125
Running Total: 0.92834667285205796360969543457031250000
Delta: 10 = 0.035177632889826782047748565673828125
Running Total: 0.96352430574188474565744400024414062500
Delta: 12 = 0.01969947441830299794673919677734375
Running Total: 0.98322378016018774360418319702148437500
Delta: 14 = 0.009849737209151498973369598388671875
Running Total: 0.99307351736933924257755279541015625000
Delta: 16 = 0.0043776609818451106548309326171875
Running Total: 0.99745117835118435323238372802734375000
Delta: 18 = 0.001719795385724864900112152099609375
Running Total: 0.99917097373690921813249588012695312500
Delta: 20 = 0.00059303289162926375865936279296875
Running Total: 0.99976400662853848189115524291992187500
Delta: 22 = 0.000177909867488779127597808837890625
Running Total: 0.99994191649602726101875305175781250000
Delta: 24 = 0.000045912223868072032928466796875
Running Total: 0.99998782871989533305168151855468750000
Delta: 26 = 0.00001004329897114075720310211181640625
Running Total: 0.99999787201886647380888462066650390625
Delta: 28 = 0.0000018260543583892285823822021484375
Running Total: 0.99999969807322486303746700286865234375
Delta: 30 = 2.6853740564547479152679443359375E-7
Running Total: 0.99999996661063050851225852966308593750
Delta: 32 = 3.0689989216625690460205078125E-8
Running Total: 0.99999999730061972513794898986816406250
Delta: 34 = 2.55749910138547420501708984375E-9
Running Total: 0.99999999985811882652342319488525390625
Delta: 36 = 1.382431946694850921630859375E-10
Running Total: 0.99999999999636202119290828704833984375
Delta: 38 = 3.63797880709171295166015625E-12
Running Total: 1.00000000000000000000000000000000000000
Ecco quindi svelato il “mistero”: la differenza teorica in percentuale fra Delta-0 e Delta+2 è di circa lo 0,64% mentre, per esempio, fra Delta+2 e Delta+4 è dell’1,74% ovvero quasi tre volte maggiore.
In breve ero semplicemente stato un po’ sfortunato…
Sicuramente lo avrete già notato ma anche qui il punto critico lo si ha fra Delta+10 e Delta+12: cioè solo quando in gruppo si hanno 12 morti più che nell’altro allora la faccenda diviene “statisticamente significativa”.
È da notare come questa “significatività” sembra dipendere (sarò curioso di verificare quando mi deciderò a riprendere lo studio del corso di statistica) solo dal numero di morti e non dalla dimensione della popolazione (nel nostro esempio di partenza 44.000).
Allora ho voluto verificare come variasse la soglia Delta-N di “significatività statistica” al variare del numero di morti. Con una minuscola modifica al programma ho ottenuto i seguenti valori:
Morti 2 Bingo a 2 con 1.00000
Morti 4 Bingo a 4 con 1.00000
Morti 6 Bingo a 4 con 0.98438
Morti 8 Bingo a 4 con 0.96485
Morti 10 Bingo a 6 con 0.98926
Morti 12 Bingo a 6 con 0.98072
Morti 14 Bingo a 6 con 0.97132
Morti 16 Bingo a 6 con 0.96160
Morti 18 Bingo a 6 con 0.95188
Morti 20 Bingo a 8 con 0.97931
Morti 22 Bingo a 8 con 0.97377
Morti 24 Bingo a 8 con 0.96805
Morti 26 Bingo a 8 con 0.96225
Morti 28 Bingo a 8 con 0.95643
Morti 30 Bingo a 8 con 0.95064
Morti 32 Bingo a 10 con 0.97495
Morti 34 Bingo a 10 con 0.97120
Morti 36 Bingo a 10 con 0.96738
Morti 38 Bingo a 10 con 0.96353
Morti 40 Bingo a 10 con 0.95966
Morti 42 Bingo a 10 con 0.95579
Morti 44 Bingo a 10 con 0.95193
Morti 46 Bingo a 12 con 0.97297
Morti 48 Bingo a 12 con 0.97027
Morti 50 Bingo a 12 con 0.96755
Morti 52 Bingo a 12 con 0.96481
Morti 54 Bingo a 12 con 0.96205
Morti 56 Bingo a 12 con 0.95929
Morti 58 Bingo a 12 con 0.95653
Morti 60 Bingo a 12 con 0.95377
Morti 62 Bingo a 12 con 0.95103
Morti 64 Bingo a 14 con 0.97003
Morti 66 Bingo a 14 con 0.96800
Morti 68 Bingo a 14 con 0.96595
Morti 70 Bingo a 14 con 0.96389
Morti 72 Bingo a 14 con 0.96182
Morti 74 Bingo a 14 con 0.95975
Morti 76 Bingo a 14 con 0.95768
Morti 78 Bingo a 14 con 0.95561
Morti 80 Bingo a 14 con 0.95355
Morti 82 Bingo a 14 con 0.95149
Morti 84 Bingo a 16 con 0.96852
Morti 86 Bingo a 16 con 0.96693
Morti 88 Bingo a 16 con 0.96533
Morti 90 Bingo a 16 con 0.96373
Morti 92 Bingo a 16 con 0.96212
Morti 94 Bingo a 16 con 0.96052
Morti 96 Bingo a 16 con 0.95891
Morti 98 Bingo a 16 con 0.95730
Morti 100 Bingo a 16 con 0.95569
Su come interpretare i primi due casi (morti = 2 e 4) non sono sicuro ma per 6 morti in totale il “bingo”=4 indica che se ci sono 5 o 6 morti in un gruppo (e quindi al massimo 1 nell’altro) allora si ha una differenza statisticamente significativa.
Conclusione: vabbè, niente di che, ma ho la sensazione di iniziare a capirci qualcosa...
Nota (*1): in realtà forse non fa comunque differenza ma dovrei ragionarci meglio per esserne sicuro...
Il post sentenza
5 ore fa
Nessun commento:
Posta un commento