6 votos

Distribución logarítmico-normal de datos del Banco Mundial quintiles PPP

No soy estadísticas de la persona.

El banco mundial de datos de dar PPA (personal la compra de la paridad, o algo así) por quintiles (en realidad el primer 10%, la segunda el 10%, 2º, 3º, 4º, 20%, a 9 de 10% y 10 de 10%) de la población de un país.

He estado leyendo mucho sobre el índice de Gini y también el modelado de la distribución de los ingresos de las curvas para las poblaciones, y me gustaría convertir este quintiles de datos en una distribución lognormal en representación de las mismas propiedades (por ejemplo, que si China tiene 1.300 USD PPP para el 1 de 10%, que después de crearlo, el promedio ponderado de PPP (integración bajo la curva?) para el 10% más pobre de la distribución lognormal saldría a más de 1.300).

Alguna idea sobre cómo hacer esto, tácticamente? Soy incapaz de pensar a mi manera a través de esto - pero yo soy un razonable programador de secuencias de comandos simples y utilizar python scipy y numpy para adaptarse a las curvas. Dado un poco de ayuda sobre cómo proceder.


@mpiktas, tienes razón, no dar el máximo de ingresos. Los quintiles/decil de la información debe ser de los promedios. Creo que no se puede directamente ajuste de estos datos como si los datos en crudo, para una distribución, si ese fuera el caso no habría hecho la pregunta!

@Miguel, dado que el quintil/decil puntos de datos son valores promedio para todo el quintil/decil de soporte, es posible que aún están por venir para arriba con un mejor ajuste? Es esto lo que usted entiende por mínimos cuadrados de ajuste?

3voto

Marc-Andre R. Puntos 789

Aquí está el ejemplo de la rápida y sucia R código para ilustrar lo que Michael se sugiere:

Definir cuantiles disponibles:

q<-c(0.1,0.2,0.4,0.6,0.8,0.9)

Crear datos artificiales y añadir un poco de ruido

data <-jitter(qlnorm(q))

Crear una función para minimizar

fitfun <- function(p)sum(abs(data-qlnorm(q,p[1],p[2])))

Ejecutar el optimizador de conversiones con la estimación inicial de los parámetros de la log-normal de distribución:

opt <- optim(c(0.1,1.1))

Los parámetros de módulos:

Mostrar el ajuste visualmente:

aa<-seq(0,0.95,by=0.01)
plot(aa,qlnorm(aa,opt$par[1],opt$par[2]),type="l")
points(q,data)

enter image description here

Nota, yo intencionalmente trazan sólo 95%-cuantil, ya que el registro de la distribución normal es ilimitado, es decir, el 100%-cuantil es infinito.

Habitual advertencias se aplican, ejemplo de la vida real podría parecer mucho más feo que esta, es decir, el ajuste podría ser mucho peor. También trate de Singh-Maddala de distribución en lugar de la log-normal, que funciona mejor para la distribución de la renta.

3voto

Marc-Andre R. Puntos 789

Me voy a dar otra respuesta, ya que más detalles acerca de los datos que se dieron. A partir de la pregunta inicial, parecía que algunos cuantiles son observados, pero que no es el caso. Los datos se calculan de la siguiente forma.

  1. Calcular el total de los ingresos de toda la población
  2. Dividir la población en grupos de ingresos
  3. Calcular el total de los ingresos de la población en grupos definidos en el paso anterior.
  4. Informe para cada grupo la proporción de los ingresos totales en el grupo con respecto al total de los ingresos de toda la población.

Supongamos que la población de los ingresos se distribuyen de acuerdo a desconocidos función de distribución de $F$. Para los datos de los siguientes grupos de ingresos se definen:

  1. De la población con ingresos en una gama de $[0,F^{-1}(0.1))$
  2. De la población con ingresos en una gama de $[F^{-1}(0.1),F^{-1}(0.2))$
  3. De la población con ingresos en una gama de $[F^{-1}(0.2),F^{-1}(0.4))$
  4. De la población con ingresos en una gama de $[F^{-1}(0.4),F^{-1}(0.6))$
  5. De la población con ingresos en una gama de $[F^{-1}(0.6),F^{-1}(0.8))$
  6. De la población con ingresos en una gama de $[F^{-1}(0.8),F^{-1}(0.9))$
  7. De la población con ingresos en una gama de $[F^{-1}(0.9),\infty)$

Para cada uno de esta gama, el siguiente proporción se informa:

$$\frac{n_r\int_{l_r}^{u_r}xdF(x)}{N\int_{0}^{\infty}xdF(x)},$$

donde $n_r$ es el número de personas en un rango de $[l_r,u_r)$ $N$ es el total de la población. El numerador de la fracción es el número de personas en un rango de veces el ingreso promedio en el rango. Denominador total de número de personas en el rango veces el ingreso promedio.

Desde los rangos definidos son los cuantiles, proporciones $n_r/N$ son conocidos, es decir, para los dos primeros y los dos últimos rangos de la proporción es igual a 0.1, para el resto de 0.2.

La integral en el numerador puede ser expresado en la forma más conveniente:

$$\int_{l_r}^{u_r}xdF(x)=\int_{F(l_r)}^{F(u_r)}F^{-1}(u)du$$

La manera más obvia para ajustar los datos sería integrar a $F^{-1}$ numéricamente a un rango determinado (o calcular las integrales analíticamente, lo que podría ser un reto). A continuación, calcular las proporciones y el ajuste a ellos mediante el criterio de elección, menos plazas, menos absolutos de las desviaciones, etc. Tenga en cuenta que una proporción es redundante, ya que las proporciones suma a uno. Otra advertencia es que usted necesita para saber el promedio de ingresos de la población, que no se da en los datos.

2voto

mat_geek Puntos 1367

Una distribución lognormal se determina por dos parámetros, la media y la varianza de la distribución normal relacionada. Si tienes datos en bruto que podría caber una distribución lognormal por máxima verosimilitud. Si no se puede utilizar un criterio de ajuste tales como mínimos cuadrados o mínimo suma de errores absolutos a los percentiles dados (cuantiles) a valores de una lognormal aptos para estos percentiles.

1voto

Matt P Puntos 1349

Una log-normal de distribución está totalmente definido por el par de parámetros $\mu$$\sigma$. Puesto que usted desea que se ajustan a esta distribución de sus datos, es suficiente para estimar estos dos valores. Normalmente, usted tiene acceso a los datos en bruto, y apliquen el estándar de los estimadores de máxima verosimilitud (Emv) por $\mu$$\sigma$, que son sencillas: $$\hat{\mu} = \frac{1}{n}\sum_i \ln(y_i) = \langle \ln y \rangle\\ \hat{\sigma}^2 = \frac{1}{n}\sum_i (\ln(y_i)-\hat{\mu})^{2} \enspace .$$ Es decir, $\mu$ es la media de los logaritmos de sus datos observados $\{y_i\}$, e $\sigma$ es la desviación estándar del logaritmo de los datos.

Pero en este caso, usted no tiene los datos en bruto. En su lugar, usted tiene algunos de boceto información acerca de la función de distribución acumulativa (CDF). A muy grandes rasgos, ¿qué sabe usted de la fracción de la distribución de $\Pr(y)$ que es inferior a un $y$ para un conjunto de valores de $\{y_i\}$. Todavía se puede estimar el registro de los parámetros normales (o los de cualquier otra distribución) de este tipo de información, pero hay matices.

Dos enfoques vienen a la mente. El primero es un rápido y sucio, uno que no se producen enteramente exacta estimaciones de los parámetros, pero se le acercan lo suficiente como para tener una idea de lo que la distribución se parece y, si quieres, más o menos lo que el coeficiente de Gini sería. El segundo es más complicado y más precisos para el tipo de datos que tiene.

Rápido y sucio aproximación

Aquí está el rápido y sucio de la solución. La información que se tiene es un "desechado" la versión de la CDF, representado por un conjunto de pares $(q_i,y_i)$ donde $q_i$ es la fracción de la distribución en o por debajo del valor de $y_i$ (nota: usted dijo que el PPP es un promedio dentro de la tolva, la cual es una técnica distinta de la CDF, pero para nuestro cálculo, que la distinción no hace una diferencia).

Ahora, recordemos que la definición de la media es $$\langle x \rangle = \sum_i x_i \Pr(x_i)\enspace ,$$ donde $\Pr(x_i)$ es la probabilidad de observar $x_i$. No tenemos $\Pr(x)$, pero nos puede aproximar mediante la binned CDF información, como esta $$\hat{\mu} \approx \sum_{i=1}^k \Delta q_i \ln x_i$$ donde $\Delta q_i=q_{i+1} -q_i$ es el tamaño o anchura de la $i$th bin, de $k$ papeleras. Del mismo modo, para la desviación estándar, la definición es $$\sigma = \sum_i (x_i-\langle x \rangle)^2 \Pr(x_i)\enspace,$$ que se convierte en $$\hat{\sigma} \approx \sum_{i=1}^{k} \Delta q_i (x_i-\hat{\mu})^2 \enspace .$$ Para aplicar estos a sus datos, usted debe informar a $x_i=\ln y_i$ puesto que trabaja con el registro de la distribución normal, en lugar de la normal (o de Gauss) de distribución. La codificación de estos estimadores debe ser bastante fácil.

En mis experimentos numéricos con estos estimadores, yo siempre obtienen pequeños errores en las estimaciones en relación a la subyacente o "población" los valores utilizados para generar sintético log-normal de los datos. Si utiliza estos con sus datos, usted no debe tratar a los valores estimados como muy precisa. Para conseguir esos, sería necesario aplicar un matemáticamente más sofisticado, que voy a esbozar a partir de ahora.

La máxima probabilidad de enfoque

El más complicado y más exacta de la solución es sacar el máximo de probabilidad estimación del parámetro de la representación particular de la log-normal de distribución que tiene, es decir, la binned CDF. La definición de la log-normal PDF $$\Pr(x) = \frac{1}{x\sigma\sqrt{2\pi}}{\rm e}^{-\frac{(\ln x - \mu)^2}{2\sigma^2} } \enspace ,$$ y el CDF es $$\Pr(x<X) = F(x) = \frac{1}{2}\left(1+{\rm erf}\left( \frac{\ln x - \mu}{\sigma\sqrt{2}} \right) \right) \enspace ,$$ donde $\textrm{erf}()$ es la función de error, y en el que dejemos $F(x)$ ser un corto representación de la mano de la CDF. (Normalmente, diríamos $F(x\,|\,\mu,\sigma)$ para indicar que $F$ depende del parámetro opciones, pero voy a dejar caer que la notación a partir de ahora, sólo recuerda que es implícita.) Esto es importante porque usted quiere asumir su cuantil de datos se elaboró a partir de un binned versión de esta distribución. Si $F(x)$ es el CDF, es decir, la integral de $\Pr(x)$$-\infty$$x$, luego deje $F(x\,|\,a,b)$ ser la integral de $\Pr(x)$$a$$b$. (Matemáticamente, $F(x\,|\,a,b)=F(b)-F(a)$.)

La log-verosimilitud de su observó cuantil de la información es entonces $$\ln \mathcal{L} = \sum_{i=1}^k \ln F(x_i\,|\,q_i,q_{i+1})\enspace .$$ El método más sofisticado sería para estimar el $\mu$ $\sigma$ mediante la maximización de esta función a través de estos parámetros. Esto le daría la estimación por máxima verosimilitud de su log-normal del modelo, dada la observada información que usted tiene. Para opciones arbitrarias de $\{q_i\}$, una solución analítica para el MLE no es posible, pero para espaciados regularmente a las opciones de la papelera de límites, puede ser. Independientemente, sin embargo, usted siempre puede numéricamente maximizar la función (que muchos numérica de los paquetes de software puede hacer por usted, si usted susurro las palabras adecuadas para ellos).

Lo que hace que este enfoque más complicado es que usted necesita para obtener la matemática correcta cuando el código numérico de la rutina para hacer la estimación con los datos. Si la precisión de sus respuestas es realmente importante, entonces, que este enfoque podría ser vale la pena el esfuerzo extra.

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