Calculando erro padrão após uma transformação de log

19

Considere um conjunto aleatório de números que são normalmente distribuídos:

x <- rnorm(n=1000, mean=10)

Gostaríamos de saber a média e o erro padrão da média, para que façamos o seguinte:

se <- function(x) { sd(x)/sqrt(length(x)) }
mean(x) # something near 10.0 units
se(x)   # something near 0.03 units

Ótimo!

No entanto, vamos supor que não sabemos necessariamente que nossa distribuição original segue uma distribuição normal. Transformamos os dados em log e realizamos o mesmo cálculo de erro padrão.

z <- log(x, base=10)
mean(z) # something near 1 log units
se(z)   # something near 0.001 log units

Legal, mas agora precisamos voltar a transformar para obter nossa resposta em unidades, NÃO em unidades de log.

10^mean(z) # something near 10.0 units
10^se(z)   # something near 1.00 units

Minha pergunta: Por que, para uma distribuição normal, o erro padrão difere dependendo se foi calculado a partir da própria distribuição ou se foi transformado, calculado e retrotraduzido? Nota: os meios saíram da mesma forma, independentemente da transformação.

EDIT # 1: Por fim, estou interessado em calcular intervalos médios e de confiança para dados distribuídos normalmente, portanto, se você puder fornecer algumas orientações sobre como calcular ICs de 95% em dados transformados, incluindo como retroceder em suas unidades nativas , Eu adoraria isso!
END EDIT # 1

EDIÇÃO # 2: Tentei usar a função quantil para obter os intervalos de confiança de 95%:

quantile(x, probs = c(0.05, 0.95))     # around [8.3, 11.6]
10^quantile(z, probs = c(0.05, 0.95))  # around [8.3, 11.6]

Então, isso convergiu para a mesma resposta, o que é bom. No entanto, o uso desse método não fornece exatamente o mesmo intervalo usando dados não normais com tamanhos de amostra "pequenos":

t <- rlnorm(10)
mean(t)                            # around 1.46 units
10^mean(log(t, base=10))           # around 0.92 units
quantile(t, probs = c(0.05, 0.95))                     # around [0.211, 4.79]
10^(quantile(log(t, base=10), probs = c(0.05, 0.95)))  # around [0.209, 4.28]

Qual método seria considerado "mais correto". Presumo que alguém escolheria a estimativa mais conservadora?

Como exemplo, você reportaria esse resultado para os dados não normais (t) como tendo uma média de 0,92 unidades com um intervalo de confiança de 95% de [0,211, 4,79]?
END EDIT # 2

Obrigado pelo seu tempo!

perplexo
fonte
1
SE é SD dividido por raiz quadrada de N. Não apenas N.
Penguin_Knight
3
Obrigado! Eu consertei esse problema. A questão que estou tendo permanece embora.
confundido

Respostas:

12

esd(log(Y))sd(Y)

sd(Y)sd(log(Y))

Var(g(X))(g(μX))2σX2.

Xg(X)=exp(X)

Var(exp(X))exp(μX)2σX2

sd(exp(X))exp(μX)σX

Essas noções são transmitidas para distribuições de amostragem.

Isso tende a funcionar razoavelmente bem se o desvio padrão for realmente pequeno comparado à média, como no seu exemplo.

> mean(y)
[1] 10
> sd(y)
[1] 0.03
> lm=mean(log(y))
> ls=sd(log(y))
> exp(lm)*ls
[1] 0.0300104 

Se você deseja transformar um IC para um parâmetro , isso funciona transformando os pontos de extremidade.

E(exp(X))exp(μX)(1+σX2/2)(c.exp(L),c.exp(U))L,Uc1+σX2/2

Se seus dados forem aproximadamente normais na escala de log, convém tratá-lo como um problema de produção de um intervalo para uma média lognormal.

Glen_b -Reinstate Monica
fonte
1
Graças à Glen_b. Eu nunca aprendi isso na aula de estatística.
perplexo
2
E[f(X)]f(μX)+f(μX)2σX2=exp(μX)(1+σX22)
exp(μx)σX2E[exp(X)]
Obrigado @Dezmond. Sim esta correto. Vou acrescentar uma correção à minha resposta, que parte dela no final é bastante fragmentada.
Glen_b -Reinstala Monica
0

Parece que você deseja efetivamente o erro padrão geométrico, semelhante à média geométrica exp(mean(log(x))).

Embora possa parecer razoável calcular isso como:

exp(sd(log(x)/sqrt(n-1)))

Você e outras pessoas já apontaram que isso não está correto por alguns motivos. Em vez disso, use:

exp(mean(log(x))) * (sd(log(x))/sqrt(n-1))

Qual é a média geométrica multiplicada pelo erro padrão do log. Isso deve aproximar muito bem o erro padrão "natural".

Fonte: https://www.jstor.org/stable/pdf/2235723.pdf

dmp
fonte