Análise de potência para dados binomiais quando a hipótese nula é de que

10

Eu gostaria de fazer uma análise de potência para uma única amostra de dados binomiais, com vs. , em que é a proporção de sucessos na população. Se , eu poderia usar a aproximação normal ao binômio ou -test, mas com , ambos falham. Eu adoraria saber se existe uma maneira de fazer essa análise. Eu gostaria muito de receber sugestões, comentários ou referências. Muito Obrigado!H 1 : p = 0,001 p 0 < p < 1 χ 2 p = 0H0:p=0H1:p=0.001p0<p<1χ2p=0

user765195
fonte
Então, por que você não usa o teste exato de Clopper-Pearson?
Stéphane Laurent
2
Espero que você tenha uma amostra realmente grande! Isso vai ser difícil de testar.
Peter Flom - Restabelece Monica

Respostas:

13

Você tem um one-sided, hipótese exata alternativa onde e . p 1 = 0,001 p 0 = 0p1>p0p1=0.001p0=0

  • O primeiro passo é identificar um limite para o número de sucessos, de modo que a probabilidade de obter pelo menos sucessos em uma amostra de tamanho seja muito baixa sob a hipótese nula (convencionalmente ). No seu caso, , independentemente da sua escolha específica para e .ccnα=0.05c=1n1α>0
  • O segundo passo é descobrir a probabilidade de obter pelo menos sucessos em uma amostra de tamanho sob a hipótese alternativa - esse é o seu poder. Aqui, você precisa de um fixo para que a distribuição Binomial seja totalmente especificada.cnnB(n,p1)

O segundo passo em R com :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

Para ter uma idéia de como a energia muda com o tamanho da amostra, você pode desenhar uma função de energia: insira a descrição da imagem aqui

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 você deseja saber qual tamanho de amostra precisa para obter pelo menos uma potência pré-especificada, use os valores de potência calculados acima. Digamos que você queira uma potência de pelo menos .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

Portanto, você precisa de um tamanho de amostra de pelo menos para obter uma potência de .6930.5

caracal
fonte
De acordo com pwr.p.test, para uma potência de 0,5, você precisa de pelo menos 677 observações. Mas poder = 0,5 é muito baixo!
1112 Jessica
@caracal Você está usando uma aproximação normal para obter sua curva de potência? Uma função exata de potência binomial não seria tão suave. Na verdade, é um dente de serra que você pode ver se o eixo do tamanho da amostra é ampliado. Discuto isso em meu artigo de 2002 no American Statistician, em co-autoria com Christine Liu. Além disso, o binômio é tão altamente inclinado em p muito baixo que n deve ser grande para que a aproximação normal funcione bem.
Michael R. Chernick
2
@MichaelChernick Não, isso é das distribuições binomiais, não de uma aproximação normal. É claro que você está certo de que - em geral - a potência de um teste binomial é uma função dente de serra que não é monotônica. Mas observe que temos um caso especial aqui com . Isso significa que a região de aceitação para a hipótese alternativa sempre começa em 1, independentemente de . Com um limite constante , uma constante , a potência é uma função estritamente crescente de . p0=0nc=1p1=0.001n
caracal
@ Jessica Note que pwr.p.test()usa uma aproximação normal, não as distribuições binomiais exatas. Basta digitar pwr.p.testpara dar uma olhada no código fonte. Você encontrará as chamadas para pnorm()indicar que uma aproximação é usada.
Caracal #
11
@caracal Então, posso olhar para o seguinte: sob a hipótese nula, a probabilidade de sucesso é 0; portanto, se você vir um sucesso, poderá rejeitar a hipótese nula. É por isso que você diz que o limite é 1 porque, se a soma binomial chegar a 1, você poderá rejeitar com um erro do tipo 2 de 0! Agora, sob a alternativa, a probabilidade do primeiro sucesso no enésimo teste é (1-p) p. Essa probabilidade vai para 0 quando n vai para o infinito. Portanto, uma regra seqüencial quando S = 1 teria potência 1 para qualquer p> 0. n1n
Michael R. Chernick
3

Você pode responder facilmente a essa pergunta com o pwrpacote em R.

Você precisará definir um nível de significância, poder e tamanho de efeito. Normalmente, o nível de significância é definido como 0,05 e o poder é definido como 0,8. Maior poder exigirá mais observações. Um nível de significância mais baixo diminuirá o poder.

O tamanho do efeito para as proporções usadas neste pacote é o h de Cohen. O ponto de corte para um pequeno h geralmente é de 0,20. O limite real varia de acordo com a aplicação e pode ser menor no seu caso. H menor significa que mais observações serão necessárias. Você disse que sua alternativa é . Isso é muito pequenop=0.001

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

Mas ainda podemos prosseguir.

 > 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

Usando esses valores, você precisa de pelo menos 1546 observações.

Jessica
fonte
1

No seu caso específico, há uma solução exata simples:

Sob a hipótese nula específica você nunca deve observar um sucesso. Portanto, assim que você observar um sucesso, tenha certeza de que .p 0H0:p=0p0

Sob a alternativa O número de tentativas necessárias para observar pelo menos 1 sucesso segue uma distribuição geométrica. Portanto, para obter o tamanho mínimo da amostra para atingir uma potência de , é necessário encontrar o menor k de modo que,1 - β 1 - β 1 - ( 1 - p ) ( k - 1 )H1:p=0.0011β

1β1(1p)(k1)

Portanto, com para obter potência, você precisaria de pelo menos 1610 amostras.80p=0.00180

flutuador
fonte
Ao ler os comentários da solução 1, percebo que essa é essencialmente a mesma solução que a que você obtém se preferir responder a uma. No entanto, nunca é difícil explicar alguns resultados básicos da teoria das probabilidades, sem a necessidade de chegar lá por intuição.
flutuador