Existe-t-il un intervalle de confiance non paramétrique fiable pour la moyenne d'une distribution asymétrique?

30

Des distributions très asymétriques telles que le log-normal n'entraînent pas des intervalles de confiance bootstrap précis. Voici un exemple montrant que les zones arrière gauche et droite sont loin de la valeur idéale de 0,025, quelle que soit la méthode d'amorçage que vous essayez dans R:

require(boot)
n    <- 25
B    <- 1000
nsim <- 1000
set.seed(1)
which <- c('basic', 'perc', 'norm', 'bca', 'stud')
mul <- 0; sdl <- 1.65   # on log scale
dist <- c('normal', 'lognormal')[2]
switch(dist, normal    = {g <- function(x) x; mu <- mul},
             lognormal = {g <- exp; mu <- exp(mul + sdl * sdl / 2)})
count <- matrix(0, nrow=length(which), ncol=2,
                dimnames=list(which, c('lower', 'upper')))
stat <- function(x, j) {
## See http://www.psychology.mcmaster.ca/bennett/boot09/percentileT.pdf
  x <- x[j]
  m <- mean(x)
  s <- sd(x)
  n <- length(x)
  sem <- s / sqrt(n)
  m.var <- sem ^ 2
  c(m, m.var)
}
for(i in 1 : nsim) {
  if(i %% 100 == 0) cat(i, '')
  x <- g(rnorm(n, mul, sdl))
  b  <- boot(x, stat, R=B)
  ci <- boot.ci(b, type=which)
  for(w in which) {
    nam <- switch(w, perc='percent', norm='normal', basic='basic',
                  stud='student', bca='bca')
    z <- rev(rev(ci[[nam]])[1:2])
    count[w, 'lower'] <- count[w, 'lower'] + (z[1] > mu)
    count[w, 'upper'] <- count[w, 'upper'] + (z[2] < mu)
  }
}
cat('\n')
count / nsim

Le résultat est ci-dessous:

      lower upper
basic 0.000 0.329
perc  0.003 0.257
norm  0.000 0.287
bca   0.015 0.185
stud  0.005 0.129

Pour simples bootstraps ne fournissent toujours pas une couverture suffisamment précise:n=400

      lower upper
basic 0.001 0.114
perc  0.005 0.093
norm  0.002 0.102
bca   0.017 0.067
stud  0.011 0.058

La probabilité empirique ne parvient pas non plus à fournir des intervalles de confiance précis lors de l'échantillonnage à partir de la distribution log-normale.

Existe-t-il une approche générale qui ne dépend pas de la connaissance préalable de la distribution? Quelqu'un a-t-il essayé d'obtenir des intervalles de confiance pour la moyenne en ajustant les données à la distribution généralisée Tukey (cette distribution est très flexible)? Qu'en est-il de l'utilisation des bandes de confiance de Kolmogorov-Smirnov pour le CDF? Le calcul de la moyenne sur les bornes supérieure et inférieure du CDF serait-il horriblement conservateur? Je me contenterais d'un certain conservatisme si une méthode a une large applicabilité.λ

Pour reformuler les objectifs, je recherche une approche généralement applicable pour obtenir un intervalle de confiance pour une population moyenne telle que

  1. l'intervalle est asymétrique si la distribution des données brutes est asymétrique
  2. l'intervalle a une couverture correcte dans les deux queues (par exemple, une probabilité d'erreur de 0,025 dans les deux)
  3. la procédure ne nécessite pas que l'analyste spécifie quoi que ce soit sur la distribution sous-jacente ou la transformation nécessaire pour rendre la distribution symétrique

Notez que le théorème central limite n'est pas pertinent ici; J'ai un petit échantillon fixe et l'intervalle de confiance doit être asymétrique pour être précis dans les deux queues. L' intervalle de confiance paramétrique basé sur sous un modèle log-normal avec et toujours une mauvaise couverture (erreur de queue gauche 0,012, droite 0,047 quand les deux devraient être 0,025).μ = 0 , σ = 1,65 n = 20000tμ=0,σ=1,65n=20000

En continuant à y penser, il y a deux grandes façons de conceptualiser le problème que j'aimerais discuter.

  1. La moyenne n'est pas une quantité qui se prête à l'inférence non paramétrique, du moins lorsque l'exactitude de l'inférence est requise. La médiane de l'échantillon est significative pour toute distribution continue et nous avons un intervalle de confiance exact simple pour la médiane. Dans un échantillon de taille d'une distribution normale, l'intervalle de confiance pour la médiane est plus long que l' intervalle de confiance basé sur exact pour la moyenne (voir le code ci-dessous). Ce facteur de 1,28 est peut-être un prix raisonnable à payer pour la robustesse et la liberté de distribution complète.1,28 × tn=201,28×t
  2. Même si aucun bootstrap ne donnera des limites de confiance suffisamment précises pour les échantillons provenant de distributions extrêmement asymétriques, le double bootstrap peut améliorer considérablement la couverture de confiance dans les deux queues. Nankervis a de bons résultats et fournit un excellent algorithme de calcul. Mais aucun logiciel que j'ai pu trouver ne l'implémente.

Code R illustrant 1. ci-dessus:

## Exact CI for median from DescTools package SignTest.default
## See also ttp://www.stat.umn.edu/geyer/old03/5102/notes/rank.pdf,
## http://de.scribd.com/doc/75941305/Confidence-Interval-for-Median-Based-on-Sign-Test
cimed <- function(x, alpha=0.05, na.rm=FALSE) {
  if(na.rm) x <- x[! is.na(x)]
  n <- length(x)
  k <- qbinom(p=alpha / 2, size=n, prob=0.5, lower.tail=TRUE)
  ## Actual CL: 1 - 2 * pbinom(k - 1, size=n, prob=0.5) >= 1 - alpha
  sort(x)[c(k, n - k + 1)]
}

n <- 20
m <- 20000
cil <- cilt <- 0
z <- qt(0.975, n - 1)

for(i in 1 : m) {
  x <- rnorm(n)
  cil  <- cil + diff(cimed(x))
  cilt <- cilt + 2 * z * sqrt(var(x) / n)
}
cil  <- cil / m
cilt <- cilt / m

c(cil, cilt, cilt / cil, cil / cilt)
Frank Harrell
la source
1
C'est un calcul intensif, mais si vous preniez le cdf empirique, vous commenciez à générer aléatoirement des ponts browniens; chaque pont brownien représente le delta entre l'ecdf et certains cdf hypothétiques. Calculez la moyenne en utilisant l'hypothèque cdf et pondérez-la par le facteur prescrit par le test KS. En répétant cela pendant un certain temps, vous aurez un ensemble de données pondérées et pourrez calculer l'intervalle de confiance.
Nir Friedman
Je n'ai pas de cdf hypothétique. Et que se passerait-il si vous utilisiez simplement la région de confiance supérieure et inférieure de 0,95 de KS et calculiez la moyenne à partir d'eux, c'est-à-dire, serait-ce horriblement conservateur?
Frank Harrell
Le cdf hypothétique est introduit en ajoutant un pont brownien généré aléatoirement au cdf empirique. De plus, je ne suggère pas de prendre la moyenne de la région de confiance. Je suggère d'obtenir de nombreux moyens en générant de nombreuses distributions hypothétiques, correctement pondérées, puis en obtenant l'intervalle de confiance. C'est fondamentalement juste une approche différente du bootstrap, je pense que le résultat pourrait être différent cependant.
Nir Friedman
Il serait intéressant de voir son efficacité de programmation et la précision de la couverture de l'intervalle de confiance. Merci pour la suggestion. Je me demande si le bootstrap bayésien imiterait cela. J'ai essayé le bootstrap bayésien dans un autre contexte et cela n'a pas amélioré la couverture de l'intervalle de confiance.
Frank Harrell

Réponses:

11

Je suis quelque peu pessimiste à propos d'une telle méthode non paramétrique, du moins sans l'introduction d'une sorte de contrainte sur la distribution sous-jacente.

nn

αααnα

Donc, si vous recherchez une couverture asymptotique appropriée , bien sûr, cela peut être réalisé par le CLT. Cependant, votre question implique que vous êtes (assez raisonnablement) intéressé par la couverture limitée. Comme mon exemple le montre, il y aura toujours un cas pathologique qui ruine tout CI de longueur finie.

Maintenant, vous pouvez toujours avoir un CI non paramétrique qui atteint une bonne couverture finie en ajoutant des contraintes à votre distribution. Par exemple, la contrainte log-concave est une contrainte non paramétrique. Cependant, il semble insuffisant pour votre problème, car log-normal n'est pas log-concave.

α

Cliff AB
la source
2
Excellentes pensées. J'hésite à exiger ce genre de contraintes car je vois assez souvent des distributions bimodales et d'autres complexités.
Frank Harrell
1
@FrankHarrell: des modèles de mélange avec des composants log-concaves non paramétriques ont été réalisés. Cependant, je ne peux pas imaginer pour le moment qu'il existe de bonnes méthodes pour créer une confiance pour la moyenne globale, surtout si le nombre de composants n'est pas connu à l'avance.
Cliff AB
2

L'une des hypothèses sous-jacentes de tout échantillon est la représentativité. Plus la longueur d'une distribution est longue, moins il est probable qu'un petit échantillon soit suffisamment représentatif pour qu'une méthode soit résolue de manière fiable pour l'IC, car l'échantillon ne sera pas en mesure de représenter la distribution.

Par exemple, l'exécution d'un CI simple perc sur une distribution exponentielle avec une taille d'échantillon de 250 donne des résultats assez corrects. Ils sont bien meilleurs qu'un avec un échantillon de 25, bien qu'ils ne soient toujours pas idéaux.

Je suis d'accord avec Cliff AB qu'il n'y aura pas de solution générale mais vous n'avez pas à faire d'hypothèse de distributions extrêmes. Il n'y aura rien qui fonctionne largement avec de petits échantillons. Et dans certains cas, les échantillons peuvent être très volumineux (mais ce serait bien de se tromper).

John
la source