Analisi di potenza per dati binomiali quando l'ipotesi nulla è che


10

Vorrei fare un'analisi di potenza per un singolo campione da dati binomiali, con , rispetto a , dove è la proporzione di successi nella popolazione. Se , potrei usare l'approssimazione normale al binomio o -test, ma con , entrambi falliscono. Mi piacerebbe sapere se esiste un modo per fare questa analisi. Gradirei qualsiasi suggerimento, commento o riferimento. Grazie molto!H0:p=0H1:p=0.001p0<p<1χ2p=0


Allora perché non usi l'esatto test Clopper-Pearson?
Stéphane Laurent,

2
Spero che tu abbia un campione davvero grande! Sarà difficile testarlo.
Peter Flom

Risposte:


13

Hai un'ipotesi alternativa esatta unilaterale dove e . p 1 = 0,001 p 0 = 0p1>p0p1=0.001p0=0

  • Il primo passo è identificare una soglia per il numero di successi in modo tale che la probabilità di ottenere almeno successi in un campione di dimensione sia molto bassa sotto l'ipotesi nulla (convenzionalmente ). Nel tuo caso, , indipendentemente dalla tua particolare scelta per e .ccnα=0.05c=1n1α>0
  • Il secondo passo è scoprire la probabilità di ottenere almeno successi in un campione di dimensione sotto l'ipotesi alternativa: questo è il tuo potere. Qui, hai bisogno di una fissa tale che la distribuzione binomiale sia completamente specificata.cnnB(n,p1)

Il secondo passo in R con :n=500

> n  <- 500                 # sample size
> p1 <- 0.001               # success probability under alternative hypothesis
> cc <- 1                   # threshold
> sum(dbinom(cc:n, n, p1))  # power: probability for cc or more successes given p1
[1] 0.3936211

Per avere un'idea di come cambia la potenza con la dimensione del campione, è possibile disegnare una funzione di potenza: inserisci qui la descrizione dell'immagine

nn   <- 10:2000                 # sample sizes
pow  <- 1-pbinom(cc-1, nn, p1)  # corresponding power
tStr <- expression(paste("Power for ", X>0, " given ", p[1]==0.001))
plot(nn, pow, type="l", xaxs="i", xlab="sample size", ylab="power",
     lwd=2, col="blue", main=tStr, cex.lab=1.4, cex.main=1.4)

Se si desidera sapere quali dimensioni del campione sono necessarie per ottenere almeno una potenza predefinita, è possibile utilizzare i valori di potenza calcolati sopra. Supponiamo che tu voglia una potenza di almeno .0.5

> powMin <- 0.5
> idx    <- which.min(abs(pow-powMin))  # index for value closest to 0.5
> nn[idx]     # sample size for that index
[1] 693

> pow[idx]    # power for that sample size
[1] 0.5000998

Quindi hai bisogno di una dimensione del campione di almeno per raggiungere una potenza di .6930.5


Secondo pwr.p.test, per una potenza di 0,5, sono necessarie almeno 677 osservazioni. Ma la potenza = 0,5 è molto bassa!
Jessica,

@caracal Stai usando un'approssimazione normale per ottenere la tua curva di potenza? Un'esatta funzione di potenza binomiale non sarebbe così fluida. In realtà è a dente di sega che è possibile vedere se l'asse delle dimensioni del campione è ingrandito. Ne discuto nel mio articolo del 2002 sullo Statistico americano scritto in collaborazione con Christine Liu. Anche il binomio è così fortemente inclinato a p molto basso che n deve essere grande affinché l'approssimazione normale funzioni bene.
Michael R. Chernick,

2
@MichaelChernick No, questo proviene dalle distribuzioni binomiali, non da una normale approssimazione. Ovviamente hai ragione sul fatto che, in generale, la potenza di un test binomiale è una funzione a dente di sega che non è monotona. Ma nota che qui abbiamo un caso speciale con . Ciò significa che la regione di accettazione per l'ipotesi alternativa inizia sempre da 1, indipendentemente da . Con una soglia costante , una costante , la potenza è una funzione strettamente in aumento di . p0=0nc=1p1=0.001n
Caracal,

@Jessica Nota che pwr.p.test()utilizza un'approssimazione normale, non le esatte distribuzioni binomiali. Basta digitare pwr.p.testper dare un'occhiata al codice sorgente. Troverai le chiamate per pnorm()indicare che viene utilizzata un'approssimazione.
Caracal,

1
@caracal Quindi posso guardarlo in questo modo: sotto l'ipotesi nulla la probabilità di successo è 0, quindi se vedi mai un successo puoi rifiutare l'ipotesi nulla. Ecco perché dici che la soglia è 1 perché se la somma binomiale arriva a 1 puoi rifiutare con un errore di tipo 2 pari a 0! Ora, in alternativa, la probabilità del primo successo nell'ennesima prova è (1-p) p. Questa probabilità va a 0 come n va all'infinito. Quindi una regola sequenziale va in stop quando S = 1 avrebbe potenza 1 per qualsiasi p> 0. n1n
Michael R. Chernick,

3

Puoi rispondere facilmente a questa domanda con il pwrpacchetto in R.

Dovrai definire un livello di significatività, potenza e dimensione dell'effetto. In genere, il livello di significatività è impostato su 0,05 e la potenza è impostata su 0,8. Una potenza maggiore richiederà più osservazioni. Un livello di significatività inferiore riduce la potenza.

La dimensione dell'effetto per le proporzioni utilizzate in questo pacchetto è la h di Cohen. Il valore soglia per una piccola h è spesso considerato 0,20. Il taglio effettivo varia in base all'applicazione e potrebbe essere più piccolo nel tuo caso. Una h più piccola significa che saranno necessarie più osservazioni. Hai detto che la tua alternativa è . Questo è molto piccolop=0.001

> ES.h(.001, 0)
[1] 0.0632561

Ma possiamo ancora procedere.

 > pwr.p.test(sig.level=0.05, power=.8, h = ES.h(.001, 0), alt="greater", n = NULL)

 proportion power calculation for binomial distribution (arcsine transformation) 

          h = 0.0632561
          n = 1545.124
  sig.level = 0.05
      power = 0.8
alternative = greater

Utilizzando questi valori, sono necessarie almeno 1546 osservazioni.


1

Nel tuo caso specifico esiste una soluzione esatta semplice:

Sotto la particolare ipotesi nulla non dovresti mai osservare un successo. Quindi non appena si osserva un successo, si può essere sicuri che .H0:p=0p0

In alternativa Il numero di prove richieste per osservare almeno 1 successo segue una distribuzione geometrica. Quindi, al fine di ottenere la dimensione minima del campione per ottenere una potenza di , è necessario trovare il k più piccolo tale che,H1:p=0.0011β

1β1(1p)(k1)

Quindi con per ottenere l' potenza occorrono almeno 1610 campioni.p=0.00180


Leggendo i commenti alla soluzione 1, mi rendo conto che questa è essenzialmente la stessa soluzione di quella che ottieni se ti attieni a rispondere. Tuttavia, non è mai dannoso precisare alcuni risultati di base della teoria della probabilità, senza la necessità di arrivare lì per intuizione.
Galleggia il
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.