Come calcolare gli intervalli di confidenza per i rapporti?


12

Considera un esperimento che genera un rapporto compreso tra 0 e 1. Il modo in cui questo rapporto viene ottenuto non dovrebbe essere rilevante in questo contesto. È stato elaborato in una versione precedente di questa domanda , ma rimosso per chiarezza dopo una discussione su meta .Xi

Questo esperimento si ripete volte, mentre n è piccolo (circa 3-10). Si presume che X i sia indipendente e distribuito in modo identico. Da questi stimiamo la media calcolando la media ¯ X , ma come calcolare un intervallo di confidenza corrispondente [ U , V ] ?nnXiX¯[U,V]

Quando si utilizza l'approccio standard per il calcolo degli intervalli di confidenza, a volte è maggiore di 1. Tuttavia, la mia intuizione è che l'intervallo di confidenza corretto ...V

  1. ... dovrebbe essere compreso tra 0 e 1
  2. ... dovrebbe ridursi con l'aumento di n
  3. ... è all'incirca nell'ordine di quello calcolato usando l'approccio standard
  4. ... è calcolato con un metodo matematicamente valido

Questi non sono requisiti assoluti, ma vorrei almeno capire perché il mio intuito è sbagliato.

Calcoli basati su risposte esistenti

Di seguito, gli intervalli di confidenza risultanti dalle risposte esistenti vengono confrontati per .{Xi}={0.985,0.986,0.935,0.890,0.999}

Approccio standard (alias "School Math")

,σ2=0,0204, quindi l'intervallo di confidenza del 99% è[0.865,1.053]. Ciò contraddice l'intuizione 1.X¯=0.959σ2=0.0204[0.865,1.053]

Ritaglio (suggerito da @soakley nei commenti)

Basta usare l'approccio standard e fornire come risultato è facile da fare. Ma ci è permesso farlo? Non sono ancora convinto che il limite inferiore rimanga costante (-> 4.)[0.865,1.000]

Modello di regressione logistica (suggerito da @Rose Hartman)

Dati trasformati: in [ 0,173 , 7,87 ] , la sua trasformazione indietro risulta in [ 0,543 , 0,999 ] . Ovviamente, il 6.90 è un valore anomalo per i dati trasformati mentre lo 0.99 non è per i dati non trasformati, con un intervallo di confidenza molto ampio. (-> 3.){4.18,4.25,2.09,2.66,6.90}[0.173,7.87][0.543,0.999]

Intervallo di confidenza proporzionale binomiale (suggerito da @Tim)

L'approccio sembra abbastanza buono, ma sfortunatamente non si adatta all'esperimento. Basta unire i risultati e interpretarli come un grande esperimento ripetuto di Bernoulli come suggerito da @ZahavaKor:

su 5 1000 in totale. Inserendo questo nell'Aggi. Il calcolatore di Wald dà [ 0.9511 , 0.9657 ] . Questo non sembra essere realistici, perché non un solo X i è dentro quell'intervallo! (-> 3.)985+986+890+935+999=479551000[0.9511,0.9657]Xi

Bootstrapping (suggerito da @soakley)

Con abbiamo 3125 possibili permutazioni. Prendendo il 3093n=5media delle permutazioni medie, otteniamo[0,91,0,99]. Non sembra poicosìmale, anche se mi aspetterei un intervallo maggiore (-> 3.). Tuttavia, non è mai più grande di[min(Xi),max(Xi)] per costruzione. Quindi per un piccolo campione crescerà piuttosto che ridursi per aumentaren(-> 2.). Questo è almeno ciò che accade con i campioni sopra riportati.30933125=0.99[0.91,0.99][min(Xi),max(Xi)]n


Hai ragione nel tuo secondo approccio. Non sono sicuro del primo: non è indicato chiaramente in termini statistici. Per quanto ne so, la riproducibilità significa che lo stesso esperimento viene eseguito da un altro ricercatore e ottengono risultati simili. Devi specificare il tuo obiettivo in modo più chiaro, preferibilmente in termini di un'ipotesi statistica relativa al parametro che stai cercando di stimare. Il solo fatto di usare il termine "riproducibilità" è troppo vago secondo me.
Zahava Kor,

Hai ragione, la ripetibilità è il termine corretto e non la riproducibilità. Proverò a costruire una definizione in termini statistici.
Koalo,

@ZahavaKor Ho rimosso il mio esempio non specificato sulla ripetibilità e ho specificato la mia applicazione effettiva sperando che chiarisse il mio problema e non confondesse.
Koalo,

Se stai davvero prendendo campioni di dimensioni 1000, allora non hai applicato correttamente l'approccio di ricampionamento. Ma con così tanti dati, non hai bisogno di ricampionare e dovresti ottenere buoni risultati (cioè intervalli di confidenza ristretti) con l'approccio binomiale standard, come hai trovato sopra. Solo perché i tuoi punti dati individuali non rientrano nell'intervallo risultante non significa che l'intervallo non sia corretto.
Soakley,

1
Bene, pensaci. Prendi 10 oggetti e ottieni 9 successi. Campione 1000 e ottengo 900 successi. Chi avrà la stima più accurata della media? Prova a usare la formula a cui fa riferimento Tim se l'intuizione non è ancora presente. Quindi, nell'ultimo esempio della tua domanda, la dimensione del campione non è 5, è 5000!
Soakley,

Risposte:


6

In primo luogo, per chiarire, ciò di cui hai a che fare non è una distribuzione binomiale, come suggerisce la tua domanda (ti riferisci ad esso come un esperimento di Bernoulli). Le distribuzioni binomiali sono discrete --- il risultato è o successo o fallimento. Il risultato è un rapporto ogni volta che si esegue l'esperimento , non un insieme di successi e insuccessi su cui si calcola quindi un rapporto di riepilogo. Per questo motivo, i metodi per calcolare un intervallo di confidenza proporzionale binomiale elimineranno molte delle tue informazioni. Eppure hai ragione a dire che è problematico trattarlo come se fosse normalmente distribuito poiché puoi ottenere un elemento della configurazione che si estende oltre l'intervallo possibile della tua variabile.

Consiglio di pensarci in termini di regressione logistica. Esegui un modello di regressione logistica con la variabile ratio come risultato e senza predittori. L'intercettazione e il relativo elemento della configurazione ti daranno ciò di cui hai bisogno nei logit, quindi puoi riconvertirlo in proporzioni. Puoi anche fare tu stesso la conversione logistica, calcolare l'IC e poi riconvertirlo nella scala originale. Il mio pitone è terribile, ma ecco come potresti farlo in R:

set.seed(24601)
data <- rbeta(100, 10, 3)
hist(data)

istogramma di dati grezzi

data_logits <- log(data/(1-data)) 
hist(data_logits)

istogramma dei dati trasformati logit

# calculate CI for the transformed data
mean_logits <- mean(data_logits)
sd <- sd(data_logits)
n <- length(data_logits)
crit_t99 <- qt(.995, df = n-1) # for a CI99
ci_lo_logits <- mean_logits - crit_t * sd/sqrt(n)
ci_hi_logits <- mean_logits + crit_t * sd/sqrt(n)

# convert back to ratio
mean <- exp(mean_logits)/(1 + exp(mean_logits))
ci_lo <- exp(ci_lo_logits)/(1 + exp(ci_lo_logits))
ci_hi <- exp(ci_hi_logits)/(1 + exp(ci_hi_logits))

Ecco i limiti inferiore e superiore su un CI del 99% per questi dati:

> ci_lo
[1] 0.7738327
> ci_hi
[1] 0.8207924

Sembra un buon approccio, tuttavia i risultati non sono quelli che mi aspetterei intuitivamente: data_logits per 0.99,0.94,0,94 è 4,59,2,75,2,75, con un intervallo di confidenza di [-2,73,9,47]. Trasformare questo ritorno dà [0,061,0,999] - molto più grande di quanto mi aspetterei.
Koalo,

1
Solo per tre osservazioni, dovresti aspettarti un intervallo di confidenza molto ampio. Dal tuo istogramma, sembra che tu abbia molte più di tre osservazioni --- Ho supposto che il tuo esempio con 0,99,0,94,0,94 fosse solo per illustrare. Se la dimensione effettiva del campione è tre, non consiglio affatto di calcolare gli intervalli di confidenza (o mezzi, del resto).
Rose Hartman,

L'istogramma sopra viene dallo script Python per illustrare il mio problema. Non sono in grado di ottenere così tante misurazioni dall'esperimento del mondo reale. Almeno non per ogni combinazione di parametri. Concordo sul fatto che 3 potrebbe essere troppo piccolo e forse circa 10 saranno possibili nella valutazione finale, ma sicuramente non molto di più. Quindi cosa dovrei fare per dimostrare che non sono stato solo fortunato ad ottenere una singola misurazione, ma che ripetere l'esperimento non dà risultati completamente diversi?
Koalo,

@RoseHartman Questa è una bella descrizione chiara ma sarebbe anche bello vedere il tuo metodo applicato al campione di dati (n = 5) nella domanda.
PM.

@scitamehtam Ho scritto la mia risposta prima che koalo fornisse i dati di esempio e chiarissi che la dimensione del campione sarebbe stata di 10 o meno osservazioni. koalo da allora ha aggiornato la domanda originale per includere esempi funzionanti di ciascun metodo di risposta con i dati n = 5, molto utili.
Rose Hartman,

3

Potresti provare a ricampionare / avviare il bootstrap. Diamo un'occhiata al semplice caso che hai citato.

Con 3 punti dati di 0,99, 0,94 e 0,94, non dovresti nemmeno effettuare il ricampionamento perché puoi semplicemente elencare tutte le 27 possibili permutazioni, trovare la media in ogni caso e quindi ordinare i mezzi.

25/27=26/27=

n

La domanda qui: come possiamo creare un intervallo di confidenza per il parametro di un test di permutazione? fornisce maggiori dettagli, incluso un po 'di codice R.


Come scritto in un altro commento, n non sarà "molto maggiore di 3", ma forse n = 10 è possibile se necessario. Mentre questo approccio garantisce che il mio intervallo di confidenza non andrà oltre 1.0, sembra sottovalutare considerevolmente l'intervallo di confidenza dato da altri metodi. In realtà, non sarà mai maggiore dell'intervallo [min, max].
Koalo,

Quanto spesso pensi che la media sarà al di fuori di [min, max]?
Soakley,

Probabilmente raramente, ma ciò significa anche che se l'intervallo [min, max] è abbastanza piccolo da dimostrare il supporto delle mie affermazioni, posso dimenticare l'intervallo di confidenza e fornire semplicemente [min, max]? Nella mia esperienza, per campioni di piccole dimensioni, l'intervallo di confidenza è piuttosto ampio rispetto a [min, max].
Koalo,

2

Gli intervalli di confidenza binomiale sono stati a lungo oggetto di dibattiti statistici. Il tuo problema considera un rapporto inferiore al 100%, ma diventa ancora più problematico se utilizziamo il 100%. Un modo perspicace di porre la domanda è:

Dato che il sole è aumentato senza sosta ogni giorno negli ultimi 2000 anni, qual è la probabilità che sorgerà domani?

p=1

Esistono diversi metodi per calcolare queste code. Ti consiglierei di consultare Wikipedia per la matematica, o se vuoi solo la risposta, cerca un calcolatore di intervalli binomiali come questo (che sembra avere anche qualche spiegazione in più della matematica dietro di esso).


Questo è molto vicino a quello che sto cercando, ma le formule sembrano solo calcolare l'intervallo di confidenza per il risultato di una singola serie del mio esperimento e non un intervallo di confidenza per la media di diversi esperimenti.
Koalo,

Non importa se hai una o più corse, a condizione che il denominatore (100 pacchetti nel tuo esempio) rimanga lo stesso in tutte le corse. L'esecuzione di 3 esperimenti di 100 ciascuno è matematicamente la stessa dell'esecuzione di un esperimento con 300 pacchetti e puoi usare le formule binomiali, ma con n = 300 e non n = 100. Se i denominatori non sono uguali, è necessario trovare la media ponderata (ponderata dalle n) e la nuova n sarà la somma delle n.
Zahava Kor,

@ZahavaKor Dato che è troppo lungo per un commento, ho aggiunto una modifica alla mia domanda. Non dico che è sbagliato, ma non corrisponde alla mia attuale comprensione.
Koalo,

2

Un approccio bayesiano:

BB


p=n/mp
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.