Como obter um intervalo de confiança para um percentil?

14

Eu tenho vários valores de dados brutos que são valores em dólares e quero encontrar um intervalo de confiança para um percentil desses dados. Existe uma fórmula para esse intervalo de confiança?

Graphth
fonte

Respostas:

20

Esta pergunta, que abrange uma situação comum, merece uma resposta simples e não aproximada. Felizmente, existe um.

Suponha que são valores independentes de uma distribuição desconhecida cujo quantil escreverei . Isso significa que cada tem uma chance de (pelo menos) ser menor ou igual a . Conseqüentemente, o número de menor ou igual a possui uma distribuição 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 essa simples consideração, Gerald Hahn e William Meeker, em seu manual Statistical Intervals (Wiley 1991), escrevem

Um intervalo de confiança conservador de livre de distribuição frente e verso para é obtido ... comoF - 1 ( q ) [ X ( l ) , X ( u ) ]100(1α)%F1(q)[X(l),X(u)]

onde são as estatísticas da ordem da amostra. Eles passam a dizerX(1)X(2)X(n)

Pode-se escolher números inteiros simetricamente (ou quase simetricamente) em torno de e o mais próximo possível, sujeito aos 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α.

A expressão à esquerda é a chance de uma variável Binomial ter um dos valores . Evidentemente, essa é a chance de o número de valores de dados cair dentro dos mais da distribuição não ser muito pequeno (menor que ) nem muito grande ( ou maior).{ l , l + 1 , , u - 1 } X i 100 q % l u(n,q){l,l+1,,u1}Xi100q%lu

Hahn e Meeker seguem com algumas observações úteis, que citarei.

O intervalo anterior é conservador porque o nível de confiança real, fornecido pelo lado esquerdo da Equação , é maior que o valor especificado . ...1 - α(1)1α

Às vezes, é impossível construir um intervalo estatístico livre de distribuição que tenha pelo menos o nível de confiança desejado. Esse problema é particularmente grave ao estimar percentis na cauda de uma distribuição a partir de uma pequena amostra. ... Em alguns casos, o analista pode lidar com este problema, escolhendo e não simétrico. Outra alternativa pode ser usar um nível de confiança reduzido.ulu


Vamos trabalhar com um exemplo (também fornecido pela Hahn & Meeker). Eles fornecem um conjunto ordenado de "medidas de um composto de um processo químico" e solicitam um intervalo de confiança de para o percentil . Eles afirmam que e funcionarão.100 ( 1 - α ) = 95 % q = 0,90 l = 85 u = 97n=100100(1α)=95%q=0.90l=85u=97

Figura mostrando a distribuição binomial (100, 0,90)

A probabilidade total desse intervalo, conforme mostrado pelas barras azuis na figura, é de : é o mais próximo possível de , mas ainda está acima dele, escolhendo dois pontos de corte e eliminando todas as chances no cauda esquerda e direita que estão além desses pontos de corte.95 %95.3%95%

Aqui estão os dados, mostrados em ordem, deixando de fora dos valores do meio:81

1.491.662.0524.3324.7225.4625.6725.7726.6428.2828.2829.0729.1631.1431.8333.2437.3253.4358.11

O maior é e o maior é . O intervalo, portanto, é .85th24.3397th33.24[24.33,33.24]

Vamos reinterpretar isso. Esse procedimento deveria ter pelo menos uma chance de de cobrir o percentil . Se esse percentil realmente exceder , significa que teremos observado ou mais dos valores em nossa amostra que estão abaixo do percentil . Isso é demais. Se esse percentil for menor que , isso significa que teremos observado ou menos valores em nossa amostra abaixo do percentil . Isso é muito pouco.95%90th33.249710090th24.338490th Em qualquer um dos casos - exatamente como indicado pelas barras vermelhas na figura -, seria uma evidência contra o percentil dentro desse intervalo.90th


Uma maneira de encontrar boas opções de e é a pesquisa de acordo com suas necessidades. Aqui está um método que começa com um intervalo aproximado simétrico e, em seguida, pesquisa variando e em até para encontrar um intervalo com boa cobertura (se possível). É ilustrado com código. Está configurado para verificar a cobertura no exemplo anterior para uma distribuição Normal. Sua saída élulu2R

A cobertura média da simulação foi de 0,9503; a cobertura esperada é 0,9523

O acordo entre simulação e expectativa é 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
fonte
4

Derivação

O -quantile (este é o conceito mais geral que o percentil) de uma variável aleatória é dado por . A contraparte da amostra pode ser escrita como - esse é apenas o quantil da amostra. Estamos interessados ​​na distribuição de:τqτXFX1(τ)q^τ=F^1(τ)

n(q^τqτ)

Primeiro, precisamos da distribuição assintótica do cdf empírico.

Como , você pode usar o teorema do limite central. é uma variável aleatória bernoulli; portanto, a média é e a variação é .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)

Agora, como inversa é uma função contínua, podemos usar o método delta.

[** O método delta diz que se e é uma função contínua, então **]n(y¯μy)N(0,σ2)g()n(g(y¯)g(μy))N(0,σ2(g(μy))2)

No lado esquerdo de (1), pegue ex=qτg()=F1()

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

[** observe que há um pouco de mão na última etapa porque , mas são assintoticamente iguais se for tedioso para mostrar **]F1(F^(qτ))F^1(F^(qτ))=q^τ

Agora, aplique o método delta mencionado acima.

Como (função 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)

Em seguida, para construir o intervalo de confiança, precisamos calcular o erro padrão inserindo exemplos de contrapartida de cada um dos termos na variação acima:

Resultado

Então,se(q^τ)=F^(q^τ)(1F^(q^τ))nf^(q^τ)2= τ(1τ)nf^(q^τ)2

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

Isso exigirá que você estime a densidade de , mas isso deve ser bem direto. Como alternativa, você também pode inicializar o IC facilmente.X

bmciv
fonte
11
Você poderia expandir sua resposta com o conteúdo do artigo vinculado? Os links podem não funcionar para sempre e, em seguida, esta resposta se tornaria menos útil
Andy
11
Qual é a vantagem desse resultado assintótico com base em estimativas de densidade em comparação com a distribuição livre cibased na distribuição binomial?
Michael M
Isso ainda é baseado no artigo que você vinculou originalmente ?
Nick Stauner
Sim, devo adicionar esse link novamente? Eu acho que este é um resultado bem conhecido. Eu já vi isso na aula antes e não é difícil de encontrar pelo google. Em um caso como esse, é melhor vincular ou digitar ou ambos?
bmciv
Eu diria os dois, e que você deve editá-lo novamente se isso for citado / derivado inteiramente dele por uma questão de atribuição adequada. Caso contrário, pode não importar se você a edita, mas, em geral, a política do Stack Exchange é desencorajar respostas somente de links para evitar a rotatividade de links e por uma questão de princípio (a idéia é ser um repositório independente, não um índice de links - mas Não sei ao certo quanto desse cenário é mais do que uma "ladeira escorregadia" imaginária).
Nick Stauner