¿Cómo obtener un intervalo de confianza para un percentil?

14

Tengo un montón de valores de datos sin procesar que son cantidades en dólares y quiero encontrar un intervalo de confianza para un percentil de esos datos. ¿Existe una fórmula para tal intervalo de confianza?

Graphth
fuente

Respuestas:

20

Esta pregunta, que cubre una situación común, merece una respuesta simple, no aproximada. Afortunadamente, hay uno.

Supongamos que son valores independientes de una distribución desconocida cuyo cuantil escribiré . Esto significa que cada tiene una posibilidad de (al menos) de ser menor o igual que . En consecuencia, el número de menor o igual que tiene una distribución Binomial . F q th F - 1 ( q ) X i q F - 1 ( q ) X i F - 1 ( q ) ( n , q )X1,,XnFqthF1(q)XiqF1(q)XiF1(q)(n,q)

Motivados por esta simple consideración, Gerald Hahn y William Meeker en su manual Intervalos estadísticos (Wiley 1991) escriben

Se obtiene un intervalo de confianza conservador libre de distribución de dos lados para ... comoF - 1 ( q ) [ X ( l ) , X ( u ) ]100(1α)%F1(q)[X(l),X(u)]

donde son las estadísticas de orden de la muestra. Proceden a decirX(1)X(2)X(n)

Se pueden elegir enteros simétricamente (o casi simétricamente) alrededor de y tan cerca como sea posible sujeto a los requisitos queq ( n + 1 ) B ( u - 1 ; n , q ) - B ( l - 1 ; n , q ) 1 - α .0lunq(n+1)

(1)B(u1;n,q)B(l1;n,q)1α.

La expresión a la izquierda es la posibilidad de que una variable Binomial tenga uno de los valores . Evidentemente, esta es la posibilidad de que el número de valores de datos caen dentro del inferior de la distribución no sea ni demasiado pequeño (menor que ) ni demasiado grande ( o mayor).{ l , l + 1 , , u - 1 } X i 100 q % l u(n,q){l,l+1,,u1}Xi100q%lu

Hahn y Meeker siguen con algunos comentarios útiles, que citaré.

El intervalo anterior es conservador porque el nivel de confianza real, dado por el lado izquierdo de la ecuación , es mayor que el valor especificado . ...1 - α(1)1α

A veces es imposible construir un intervalo estadístico sin distribución que tenga al menos el nivel de confianza deseado. Este problema es particularmente agudo cuando se estiman percentiles en la cola de una distribución a partir de una muestra pequeña. ... En algunos casos, el analista puede hacer frente a este problema mediante la elección de y nonsymmetrically. Otra alternativa puede ser usar un nivel de confianza reducido.Ulu


Analicemos un ejemplo (también proporcionado por Hahn & Meeker). Proporcionan un conjunto ordenado de "mediciones de un compuesto de un proceso químico" y solicitan un intervalo de confianza de para el percentil . Afirman que y funcionarán.100 ( 1 - α ) = 95 % q = 0,90 l = 85 u = 97n=100100(1α)=95%q=0.90l=85u=97

Figura que muestra la distribución binomial (100, 0.90)

La probabilidad total de este intervalo, como lo muestran las barras azules en la figura, es : eso es lo más cerca que se puede llegar al , y aún así estar por encima de él, al elegir dos puntos de corte y eliminar todas las posibilidades en el cola izquierda y la cola derecha que están más allá de esos límites.95 %95.3%95%

Aquí están los datos, mostrados en orden, dejando fuera de los valores del medio:81

1.491.662.0524.3324.7225.4625.6725.7726.6428.2828.2829.0729.1631.1431.8333.2437.3253.4358.11

El más grande es y el más grande es . Por lo tanto, el intervalo es . 24,33 97 º 33,24 [ 24,33 , 33,24 ]85th24.3397th33.24[24.33,33.24]

Reinterpretemos eso. Se suponía que este procedimiento tenía al menos un posibilidades de cubrir el percentil . Si ese percentil en realidad excede , eso significa que habremos observado o más de valores en nuestra muestra que están por debajo del percentil . Eso es mucho. Si ese percentil es inferior a , eso significa que habremos observado o menos valores en nuestra muestra que están por debajo del percentil . Eso es muy poco.90 º 33,24 97 100 90 º 24,33 84 90 º 90 º95%90th33.249710090th24.338490th En cualquier caso, exactamente como lo indican las barras rojas en la figura, sería evidencia contra el percentil dentro de este intervalo.90th


Una forma de encontrar buenas opciones de y es buscar de acuerdo a sus necesidades. Aquí hay un método que comienza con un intervalo aproximado simétrico y luego busca variando tanto como hasta para encontrar un intervalo con buena cobertura (si es posible). Se ilustra con el código. Está configurado para verificar la cobertura en el ejemplo anterior para una distribución Normal. Su salida esu l u 2lulu2R

La cobertura media de la simulación fue de 0.9503; la cobertura esperada es 0.9523

El acuerdo entre simulación y expectativa es excelente.

#
# Near-symmetric distribution-free confidence interval for a quantile `q`.
# Returns indexes into the order statistics.
#
quantile.CI <- function(n, q, alpha=0.05) {
  #
  # Search over a small range of upper and lower order statistics for the 
  # closest coverage to 1-alpha (but not less than it, if possible).
  #
  u <- qbinom(1-alpha/2, n, q) + (-2:2) + 1
  l <- qbinom(alpha/2, n, q) + (-2:2)
  u[u > n] <- Inf
  l[l < 0] <- -Inf
  coverage <- outer(l, u, function(a,b) pbinom(b-1,n,q) - pbinom(a-1,n,q))
  if (max(coverage) < 1-alpha) i <- which(coverage==max(coverage)) else
    i <- which(coverage == min(coverage[coverage >= 1-alpha]))
  i <- i[1]
  #
  # Return the order statistics and the actual coverage.
  #
  u <- rep(u, each=5)[i]
  l <- rep(l, 5)[i]
  return(list(Interval=c(l,u), Coverage=coverage[i]))
}
#
# Example: test coverage via simulation.
#
n <- 100      # Sample size
q <- 0.90     # Percentile
#
# You only have to compute the order statistics once for any given (n,q).
#
lu <- quantile.CI(n, q)$Interval
#
# Generate many random samples from a known distribution and compute 
# CIs from those samples.
#
set.seed(17)
n.sim <- 1e4
index <- function(x, i) ifelse(i==Inf, Inf, ifelse(i==-Inf, -Inf, x[i]))
sim <- replicate(n.sim, index(sort(rnorm(n)), lu))
#
# Compute the proportion of those intervals that cover the percentile.
#
F.q <- qnorm(q)
covers <- sim[1, ] <= F.q & F.q <= sim[2, ]
#
# Report the result.
#
message("Simulation mean coverage was ", signif(mean(covers), 4), 
        "; expected coverage is ", signif(quantile.CI(n,q)$Coverage, 4))
whuber
fuente
4

Derivación

El -quantile (este es el concepto más general que el percentil) de una variable aleatoria viene dado por . La contraparte de la muestra se puede escribir como - esto es solo el cuantil de muestra. Estamos interesados ​​en la distribución de:τqτXFX1(τ)q^τ=F^1(τ)

n(q^τqτ)

Primero, necesitamos la distribución asintótica del cdf empírico.

Como , puede usar el teorema del límite central. es una variable aleatoria de Bernoulli, por lo que la media es y la varianza es .F^(x)=1n1{Xi<x}1{Xi<x}P(Xi<x)=F(x)F(x)(1F(x))

n(F^(x)F(x))N(0,F(x)(1F(x)))(1)

Ahora, porque inversa es una función continua, podemos usar el método delta.

[** El método delta dice que si , y es una función continua, entonces **]n(y¯μy)N(0,σ2)g()n(g(y¯)g(μy))N(0,σ2(g(μy))2)

En el lado izquierdo de (1), tome yx=qτg()=F1()

n(F1(F^(qτ))F1(F(qτ)))=n(q^τqτ)

[** tenga en cuenta que hay un poco de mano en el último paso porque , pero son asintóticamente iguales si es tedioso mostrar **]F1(F^(qτ))F^1(F^(qτ))=q^τ

Ahora, aplique el método delta mencionado anteriormente.

Dado que (función inversa teorema)ddxF1(x)=1f(F1(x))

n(q^τqτ)N(0,F(qτ)(1F(qτ))f(F1(F(qτ)))2)=N(0,F(qτ)(1F(qτ))f(qτ)2)

Luego, para construir el intervalo de confianza, necesitamos calcular el error estándar conectando contrapartes de muestra de cada uno de los términos en la varianza anterior:

Resultado

Entoncesse(q^τ)=F^(q^τ)(1F^(q^τ))nf^(q^τ)2= τ(1τ)nf^(q^τ)2

YCI0.95(q^τ)=q^τ±1.96se(q^τ)

Esto requerirá que estimes la densidad de , pero esto debería ser bastante sencillo. Alternativamente, también puede arrancar el CI con bastante facilidad.X

bmciv
fuente
1
¿Podría ampliar su respuesta con los contenidos del artículo vinculado? Los enlaces pueden no funcionar para siempre y luego esta respuesta se convertirían en menos útil
Andy
1
¿Cuál es la ventaja de este resultado asintótico basado en estimaciones de densidad en comparación con la distribución libre basada en la distribución binomial?
Michael M
¿Esto todavía se basa en el artículo que vinculó originalmente ?
Nick Stauner
Sí, ¿debo agregar ese enlace nuevamente? Creo que este es un resultado bien conocido. Lo he visto en clase antes y no es difícil de encontrar en google. En un caso como este, ¿es mejor vincularlo o escribirlo, o ambos?
bmciv
Diría ambas cosas, y que debería editarlo nuevamente si esto se cita / deriva completamente de él en aras de la atribución adecuada. De lo contrario, podría no importar si lo edita, pero en general, la política de Stack Exchange es desalentar las respuestas de solo enlace para evitar la descomposición del enlace y, por principio, la idea es ser un repositorio independiente, no un índice de enlace, pero No estoy seguro de cuánto de ese escenario es más que una "pendiente resbaladiza" imaginaria).
Nick Stauner