Cálculo do erro padrão na estimativa da média ponderada

16

Suponha que w1,w2,,wn e x1,x2,...,xn são cada iid extraído de algumas distribuições, com wi independente de xi . O wi é estritamente positivo. Você observa todo o wi , mas não o xi ; em vez disso você observa ixiwi . Estou interessado em estimar E[x] partir desta informação. Claramente, o estimador

x¯=iwixiiwi
é imparcial, e pode ser calculada tendo em conta a informação na mão.

Como posso calcular o erro padrão deste estimador? Para o sub-caso em que xi obtém apenas os valores 0 e 1, tentei ingenuamente

sex¯(1x¯)iwi2iwi,
basicamente ignorando a variabilidade nawi, mas descobriu que este mau desempenho de amostras de tamanho menor do que em torno de 250. (E isso provavelmente depende da variação do .) Parece que talvez eu não fazer tenha informações suficientes para calcular um erro padrão 'melhor'.wi
shabbychef
fonte

Respostas:

17

Encontrei o mesmo problema recentemente. A seguir, o que eu encontrei:

Diferentemente de uma amostra aleatória simples com pesos iguais, não existe uma definição amplamente aceita de erro padrão da média ponderada . Hoje em dia, seria fácil executar uma inicialização e obter a distribuição empírica da média e, com base nessa estimativa, o erro padrão.

E se alguém quisesse usar uma fórmula para fazer essa estimativa?

A principal referência é este artigo , de Donald F. Gatz e Luther Smith, onde três estimadores baseados em fórmulas são comparados com os resultados de bootstrap. A melhor aproximação ao resultado do bootstrap vem de Cochran (1977):

(SEMw)2=n(n1)(Pi)2[(PiXiP¯X¯w)22X¯w(PiP¯)(PiXiP¯X¯w)+X¯w2(PiP¯)2]

A seguir, está o código R correspondente que veio desse encadeamento do R listserve .

weighted.var.se <- function(x, w, na.rm=FALSE)
#  Computes the variance of a weighted mean following Cochran 1977 definition
{
  if (na.rm) { w <- w[i <- !is.na(x)]; x <- x[i] }
  n = length(w)
  xWbar = weighted.mean(x,w,na.rm=na.rm)
  wbar = mean(w)
  out = n/((n-1)*sum(w)^2)*(sum((w*x-wbar*xWbar)^2)-2*xWbar*sum((w-wbar)*(w*x-wbar*xWbar))+xWbar^2*sum((w-wbar)^2))
  return(out)
}

Espero que isto ajude!

Ming K
fonte
Isso é muito legal, mas para o meu problema que eu nem sequer observar a , em vez observo a soma Σ i P i X i . Minha pergunta é muito estranha porque envolve alguma assimetria de informação (um terceiro está relatando a soma e tentando talvez ocultar alguma informação). PiXiiPiXi
shabbychef
Puxa, você está certo, desculpe, eu não entendi completamente a pergunta que você fez. Suponha que ferver o seu problema até o caso mais simples onde todos são Bernoulli RV. Então você está essencialmente observando a soma de um subconjunto aleatório de n RVs. Meu palpite é que não há muita informação aqui para se estimar. Então, o que você acabou fazendo pelo seu problema original? win
Ming K
@ Ming-ChihKao esta fórmula cochran é interessante, mas se você construir um intervalo de confiança com isso quando os dados não forem normais, não há uma interpretação consistente correta? Como você lidaria com intervalos médios de confiança médios ponderados não normais? Quantis ponderados?
user3022875
Eu acho que há um erro com a função. Se você substituir w=rep(1, length(x)), então weighted.var.se(rnorm(50), rep(1, 50))é sobre 0.014. Eu acho que falta a fórmula sum(w^2)no numerador, desde quando P=1, a variação é 1/(n*(n-1)) * sum((x-xbar)^2). Não posso verificar o artigo citado, pois está atrás de um paywall, mas acho essa correção. Curiosamente, a solução (diferente) da Wikipedia se deteriora quando todos os pesos são iguais: en.wikipedia.org/wiki/… .
Max Candocia
Isso pode funcionar melhor em geral: analyticalgroup.com/download/WEIGHTED_MEAN.pdf
Max Candocia
5

wi

wi2Var(X)(wi)2=Var(X)wi2(wi)2.
wi
Var(X)E(wi2(wi)2)
XiVar(X), without making rather severe assumptions.
guest
fonte
at least in the specific case where xi have a Bernoulli distribution I can estimate the variance of x by x¯(1x¯) as noted above. Even in this case, as noted in the question, I need a larger sample size than I would have expected.
shabbychef