22 votos

Calculando el error estándar en la estimación de la media ponderada

Supongamos que $w_1,w_2,\ldots,w_n$ y $x_1,x_2,...,x_n$ se extraen i.i.d. de algunas distribuciones, con $w_i$ independiente de $x_i$. Los $w_i$ son estrictamente positivos. Observas todos los $w_i$, pero no los $x_i$; en su lugar, observas $\sum_i x_i w_i$. Estoy interesado en estimar $\operatorname{E}\left[x\right]$ a partir de esta información. Claramente, el estimador $$ \bar{x} = \frac{\sum_i w_i x_i}{\sum_i w_i} $$ es insesgado, y se puede calcular dados los datos disponibles.

¿Cómo podría calcular el error estándar de este estimador? Para el subcaso donde $x_i$ toma solo valores 0 y 1, intenté ingenuamente $$ se \approx \frac{\sqrt{\bar{x}(1-\bar{x})\sum_i w_i^2}}{\sum_i w_i}, $$ básicamente ignorando la variabilidad en los $w_i$, pero encontré que esto funcionaba mal para tamaños de muestra menores a alrededor de 250. (Y esto probablemente depende de la varianza de los $w_i$.) Parece que tal vez no tengo suficiente información para calcular un error estándar 'mejor'.

22voto

David Rabinowitz Puntos 130

Recientemente me encontré con el mismo problema. A continuación te presento lo que encontré:

A diferencia de una muestra aleatoria simple con pesos iguales, no hay una definición ampliamente aceptada del error estándar de la media ponderada. En la actualidad, sería sencillo realizar un bootstrap y obtener la distribución empírica de la media, y basándose en eso estimar el error estándar.

¿Qué pasaría si alguien quisiera usar una fórmula para realizar esta estimación?

La referencia principal es este documento, de Donald F. Gatz y Luther Smith, en el que se comparan 3 estimadores basados en fórmulas con resultados de bootstrap. La mejor aproximación al resultado de bootstrap proviene de Cochran (1977):

$(SEM_w)^2={\dfrac{n}{(n-1)(\sum {P_i})^2}}[\sum (P_i X_i-\bar{P}\bar{X}_w)^2-2 \bar{X}_w \sum (P_i-\bar{P})(P_i X_i-\bar{P}\bar{X}_w)+\bar{X}^2_w \sum (P_i-\bar{P})^2]$

A continuación se muestra el código R correspondiente que proviene de este hilo de correo electrónico de la lista R.

weighted.var.se <- function(x, w, na.rm=FALSE)
# Calcula la varianza de una media ponderada siguiendo la definición de Cochran 1977
{
  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 esto te ayude!

0 votos

Esto es bastante genial, pero para mi problema ni siquiera observo $P_iX_i$, sino que observo la suma $\sum_i P_iX_i$. Mi pregunta es muy extraña porque implica cierta asimetría de la información (un tercero está informando la suma e intentando quizás ocultar cierta información).

0 votos

¡Vaya, tienes razón, lo siento no entendí completamente la pregunta que planteaste. Supongamos que simplificamos tu problema al caso más simple donde todos los $w_i$ son variables aleatorias de Bernoulli. Entonces básicamente estás observando la suma de un subconjunto aleatorio de $n$ variables aleatorias. Supongo que aquí no hay mucha información para estimar. ¿Qué hiciste al final para tu problema original?

0 votos

@Ming-ChihKao esta fórmula de Cochran es interesante pero si construyes un intervalo de confianza en función de esto cuando los datos no son normales, ¿no hay una interpretación consistente correcta? ¿Cómo manejarías los intervalos de confianza medios promedio ponderados no normales? ¿Cuantiles ponderados?

8voto

guest Puntos 1851

La varianza de su estimación dada la $w_i$ es $$ \frac{\sum w_i^2 Var(X)}{(\sum w_i)^2} = Var(X) \frac{\sum w_i^2 }{(\sum w_i)^2}. $$ Porque su estimación es insesgada para cualquier $w_i$, la varianza de su media condicional es cero. Por lo tanto, la varianza de su estimación es $$ Var(X) \mathbb{E}\left(\frac{\sum w_i^2 }{(\sum w_i)^2}\right) $$ Con todos los datos observados, sería fácil estimar empíricamente. Pero con solo una medida de la localización de los $X_i$ observados, y no su dispersión, no veo cómo será posible obtener una estimación de $Var(X)$, sin hacer suposiciones bastante severas.

0 votos

Al menos en el caso específico donde $x_i$ tiene una distribución de Bernoulli puedo estimar la varianza de $x$ por $\bar{x}(1-\bar{x}) como se mencionó anteriormente. Incluso en este caso, como se señaló en la pregunta, necesito un tamaño de muestra más grande de lo que hubiera esperado.

2voto

La ecuación de @Ming K no me está funcionando. @Hugh mencionó Hmisc::wtd.var(x, w), pero esto es para la varianza, si te estás preguntando sobre el error estándar ponderado, esto sería útil. Pero lee las suposiciones y la ecuación aquí, a continuación $$ \sigma _{x}^{-} = \sigma \sqrt{\sum_{i=1}^{n}\omega _{i}^{'2}} $$

Para tu conveniencia, los copio aquí.

wtd.stderror <- function(x, weights){
  var <- Hmisc::wtd.var(x, weights)
  weights <- sum( (weights / sum(weights))^2 )

  sqrt(var*weights)
}

Pero no estoy seguro de si esto funcionará para un conjunto de datos con una distribución de Bernoulli

0 votos

Por favor, vuelve a leer la pregunta: los $x_i$ no están observados o no están disponibles para este cálculo.

0 votos

Lo siento, entiendo, esto es para complementar la respuesta de Ming K y Hugh

i-Ciencias.com

I-Ciencias es una comunidad de estudiantes y amantes de la ciencia en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X