Como posso calcular o intervalo de confiança de uma média em uma amostra distribuída normalmente?

19

Como posso calcular o intervalo de confiança de uma média em uma amostra distribuída normalmente?

Entendo que os métodos de autoinicialização são comumente usados ​​aqui, mas estou aberto a outras opções. Enquanto procuro uma opção não paramétrica, se alguém puder me convencer de que uma solução paramétrica é válida, tudo bem. O tamanho da amostra é> 400.

Se alguém pudesse dar uma amostra em R, seria muito apreciado.

fmark
fonte
3
O Teorema do Limite Central implica que a distribuição limitadora da média da amostra é normal, independentemente da distribuição dos dados originais (sob algumas condições). Em muitos casos, um tamanho de amostra é grande o suficiente para que a aproximação normal seja bastante precisa, mas a precisão depende da distribuição dos pais - isso pode ajudar se você, por exemplo, postou um histograma dos dados originais. n>400
Macro

Respostas:

18

Antes de tudo, eu verificaria se a média é um índice apropriado para a tarefa em questão. Se você estiver procurando por "um valor típico / ou central" de uma distribuição distorcida, a média poderá indicar um valor não representativo. Considere a distribuição log-normal:

x <- rlnorm(1000)
plot(density(x), xlim=c(0, 10))
abline(v=mean(x), col="red")
abline(v=mean(x, tr=.20), col="darkgreen")
abline(v=median(x), col="blue")

Média (vermelho), média aparada de 20% (verde) e mediana (azul) para a distribuição log-normal

A média (linha vermelha) está bem longe da maior parte dos dados. A média aparada de 20% (verde) e a mediana (azul) estão mais próximas do valor "típico".

Os resultados dependem do tipo de sua distribuição "não normal" (um histograma dos seus dados reais seria útil). Se não estiver inclinado, mas tiver caudas pesadas, seus ICs serão muito amplos.

De qualquer forma, acho que o bootstrap é realmente uma boa abordagem, pois também pode fornecer ICs assimétricos. O Rpacote simplebooté um bom começo:

library(simpleboot)
# 20% trimmed mean bootstrap
b1 <- one.boot(x, mean, R=2000, tr=.2)
boot.ci(b1, type=c("perc", "bca"))

... fornece o seguinte resultado:

# The bootstrap trimmed mean:
> b1$t0
[1] 1.144648

BOOTSTRAP CONFIDENCE INTERVAL CALCULATIONS
Based on 2000 bootstrap replicates
Intervals : 
Level     Percentile            BCa          
95%   ( 1.062,  1.228 )   ( 1.065,  1.229 )  
Calculations and Intervals on Original Scale
Felix S
fonte
Muito obrigado pela resposta detalhada. Gostaria de comentar a diferença (mínima) entre as estatísticas de percentil e percentil ajustado (BCa)?
fmark
"O intervalo acelerado corrigido pela polarização de inicialização (BCa) é uma modificação do método de percentil que ajusta os percentis para corrigir a polarização e a distorção" (Hesterberg, T., Monaghan, S., Moore, D., Clipson, A., & Epstein, R. (2005) Métodos de bootstrap e testes de permutação Introdução à prática da estatística, 14.1-14.70. Sempre que o software permite que ele, use o BCa corrigido CI (nota: ele precisa> 1000 resamples)
Felix S
Parece na documentação do pacote simpleboot que o argumento para aparar não é mais suportado. :(
et é
8

κ^/(6s2n)κ^O(n-1/2)O(n-1)n1/2>20n>400

(exp(1)+2)exp(1)-1kappa = (exp(1)+2)*sqrt( exp(1) - 1) = 6.184877s = sqrt( (exp(1)-1)*exp(1) ) = 2.1611972*s*qnorm(0.975)/sqrt(n) = 0.2678999kappa*s/(6*n) = 0.00222779kappa

StasK
fonte
2

Tente uma distribuição normal de log, calculando:

  1. Logaritmo dos dados;
  2. Média e desvio padrão de (1)
  3. Intervalo de confiança correspondente a (2)
  4. Exponencial de (3)

Você terminará com um intervalo de confiança assimétrico em torno do valor esperado (que não é a média dos dados brutos).

Felipe G. Nievinski
fonte