Estimation de l'intervalle de confiance binomial - pourquoi n'est-elle pas symétrique?

30

J'ai utilisé le code r suivant pour estimer les intervalles de confiance d'une proportion binomiale parce que je comprends que cela se substitue à un "calcul de puissance" lors de la conception de récepteurs fonctionnant avec des courbes caractéristiques en vue de détecter des maladies dans une population.

n est 150, et la maladie, selon nous, est répandue à 25% dans la population. J'ai calculé les valeurs pour une sensibilité de 75% et une spécificité de 90% (parce que c'est ce que les gens semblent faire).

    binom.test(c(29,9), p=0.75, alternative=c("t"), conf.level=0.95)

    binom.test(c(100, 12), p=0.90, alternative=c("t"), conf.level=0.95)

J'ai également visité ce site:

http://statpages.org/confint.html

C'est une page java qui calcule les intervalles de confiance binomiaux, et elle donne la même réponse.

Quoi qu'il en soit, après cette longue configuration, je veux demander pourquoi les intervalles de confiance ne sont pas symétriques, par exemple la sensibilité est

   95 percent confidence interval:
   0.5975876 0.8855583 

   sample estimate probability: 0.7631579 

Désolé si c'est une question stupide, mais partout où je regarde semble suggérer qu'ils seront symétriques, et un de mes collègues semble penser qu'ils le seront aussi.

Chris Beeley
la source

Réponses:

20

On pense qu'ils sont symétriques car, souvent, une approximation normale est utilisée. Celui-ci fonctionne assez bien dans le cas où p se situe autour de 0,5. binom.testd'autre part, rapporte des intervalles Clopper-Pearson "exacts", qui sont basés sur la distribution F (voir ici les formules exactes des deux approches). Si nous implémentions l'intervalle Clopper-Pearson dans R, ce serait quelque chose comme (voir note ):

Clopper.Pearson <- function(x, n, conf.level){
    alpha <- (1 - conf.level) / 2
    QF.l <- qf(1 - alpha, 2*n - 2*x + 2, 2*x)
    QF.u <- qf(1 - alpha, 2*x + 2, 2*n - 2*x)

    ll <- if (x == 0){
          0
    } else { x / ( x + (n-x+1)*QF.l ) }

    uu <- if (x == 0){
          0
    } else { (x+1)*QF.u / ( n - x + (x+1)*QF.u ) }

    return(c(ll, uu))
}

Vous voyez à la fois dans le lien et dans l'implémentation que la formule pour la limite supérieure et la limite inférieure sont complètement différentes. Le seul cas d'un intervalle de confiance symétrique est lorsque p = 0,5. En utilisant les formules du lien et en tenant compte du fait que dans ce cas il est facile de déterminer comment cela se produit.n=2×x

Personnellement, je l'ai mieux compris en regardant les intervalles de confiance basés sur une approche logistique. Les données binomiales sont généralement modélisées à l'aide d'une fonction de lien logit, définie comme:

logit(x)=log(x1x)

Cette fonction de lien "mappe" le terme d'erreur dans une régression logistique à une distribution normale. Par conséquent, les intervalles de confiance dans le cadre logistique sont symétriques autour des valeurs logit, un peu comme dans le cadre de régression linéaire classique. La transformation logit est utilisée exactement pour permettre d'utiliser toute la théorie basée sur la normalité autour de la régression linéaire.

Après avoir fait la transformation inverse:

logit1(x)=ex1+ex

Vous obtenez à nouveau un intervalle asymétrique. Or, ces intervalles de confiance sont en fait biaisés. Leur couverture n'est pas celle que vous attendez, en particulier aux limites de la distribution binomiale. Pourtant, à titre d'illustration, ils vous montrent pourquoi il est logique qu'une distribution binomiale ait des intervalles de confiance asymétriques.

Un exemple en R:

logit <- function(x){ log(x/(1-x)) }
inv.logit <- function(x){ exp(x)/(1+exp(x)) }
x <- c(0.2, 0.5, 0.8)
lx <- logit(x)
upper <- lx + 2
lower <- lx - 2

logxtab <- cbind(lx, upper, lower)
logxtab # the confidence intervals are symmetric by construction
xtab <- inv.logit(logxtab)
xtab # back transformation gives asymmetric confidence intervals

note : En fait, R utilise la distribution bêta, mais celle-ci est complètement équivalente et calculatrice un peu plus efficace. L'implémentation dans R est donc différente de ce que je montre ici, mais elle donne exactement le même résultat.

Joris Meys
la source
2
Vouliez-vous vraiment dire que le logit "transforme la distribution binomiale en une distribution normale" ??
whuber
@whuber: belle prise de la formule, et belle prise de la formulation. Pas du tout. Il s'assure que les erreurs dans une régression logistique suivent la distribution normale. Thx pour la correction.
Joris Meys
Juste une brève note technique, la transformation "arcsinus" est celle qui a une convergence vers la normalité plus rapide que la transformation logistique. Définissez (où est le nombre de "succès" et le nombre d'essais), et vous pouvez montrer avec la soi-disant "méthode delta" que la variance de est approximativement constante (et indépendante de , comme elle devrait l'être dans la distribution normale). Y=2πarcsinXNXNYY
probabilités du
Le lien que vous fournissez pour les "probabilités exactes" est rompu. En as-tu un autre?
S.Kolassa - Rétablir Monica
@StephanKolassa Vous pouvez également trouver les formules Clopper Pearson ici: en.wikipedia.org/wiki/…
Joris Meys
24

Pour voir pourquoi il ne devrait pas être symétrique, pensez à la situation où et vous obtenez 9 succès en 10 essais. Alors et l'IC à 95% pour est [0,554, 0,997]. La limite supérieure ne peut évidemment pas être supérieure à 1, donc la majeure partie de l'incertitude doit tomber à gauche de .p=0.9p^=0.9pp^

Rob Hyndman
la source
9

@Joris a mentionné l'intervalle symétrique ou "asymptotique", qui est probablement celui que vous attendez. @Joris a également mentionné les intervalles "exacts" de Clopper-Pearson et vous a donné une référence qui a l'air très agréable. Il existe un autre intervalle de confiance pour les proportions que vous rencontrerez probablement (notez qu'il n'est pas non plus symétrique), l'intervalle "Wilson" qui est un type d'intervalle asymptotique basé sur l'inversion du test de score. Les extrémités de l'intervalle résolvent (en ) l'équation p

(p^p)/p(1p)=±zα/2

Quoi qu'il en soit, vous pouvez obtenir les trois en R avec les éléments suivants:

library(Hmisc)
binconf(29, 38, method = "asymptotic")
binconf(29, 38, method = "exact")
binconf(29, 38, method = "wilson")

Notez que la méthode "wilson" est le même intervalle de confiance utilisé par prop.test sans correction de continuité de Yates:

prop.test(29, 38, correct = FALSE)

Voir ici le manuel SPLUS + R gratuit de Laura Thompson qui accompagne l'analyse de données catégorielles d'Agresti dans lequel ces questions sont discutées en détail.


la source
1
(+1) Ravi que vous citiez le manuel de Laura et ajoutiez ce complément d'informations sur les CI de Wilson.
chl
2
Merci. Je voudrais souligner que l'intervalle Wilson est discuté dans l'article référencé @Joris.
9

Il existe des intervalles de confiance symétriques pour la distribution binomiale: l'asymétrie ne nous est pas imposée, malgré toutes les raisons déjà évoquées. Les intervalles symétriques sont généralement considérés comme inférieurs en ce que

  1. Bien qu'ils soient numériquement symétriques, ils ne sont pas symétriques en probabilité : c'est-à-dire que leurs couvertures unilatérales diffèrent les unes des autres. Ceci - une conséquence nécessaire de l'asymétrie possible de la distribution binomiale - est le nœud de la question.

  2. Souvent, un point final doit être irréaliste (inférieur à 0 ou supérieur à 1), comme le souligne @Rob Hyndman.

Cela dit, je soupçonne que les CI numériquement symétriques pourraient avoir de bonnes propriétés, comme avoir tendance à être plus courtes que les CI probabilistiquement symétriques dans certaines circonstances.

whuber
la source
En ce qui concerne la dernière phrase: alors pourquoi ne pas calculer l'intervalle de confiance le plus court (qui a des valeurs de densité égales au lieu d'une largeur d'intervalle égale ou d'une aire de queue égale des deux côtés)? En ce qui concerne 2: avoir la même largeur des deux côtés de n'implique pas qu'une approximation (normale) doit être utilisée. Je dirais que cet intervalle particulier n'existe pas si les limites doivent être étendues en dehors de [0, 1]. p^=k/n
cbeleites prend en charge Monica le
@cb Je ne suis pas ceci. Premièrement, un CI le plus court n'aura pas nécessairement des densités égales à chaque extrémité. Deuxièmement, le commentaire sur «n'existe pas» n'a aucun sens pour moi: que signifie «n'existe pas»?
whuber
1
CI le plus court. Pour calculer l'IC le plus court pour une couverture donnée, je commencerais à la densité maximale et j'élargirais un petit pas du côté où la densité est plus élevée. Là, j'obtiens la plus grande couverture de confiance (pour la courte étape qui est). J'agrandis le ci à plusieurs reprises jusqu'à ce que j'aie la zone souhaitée (couverture). Si mes pas sont petits (infinitésimaux), la densité des deux côtés sera (approximativement) la même. Ai-je fait une erreur dans cette stratégie?
cbeleites prend en charge Monica le
n'existe pas: par exemple 4 succès sur 5. Il est logique de demander les 95% ci Cependant, si je calcule la densité de probabilité pour le vrai étant donné que j'ai observé 4 succès sur 5 essais, la queue au-dessus n'est que d'environ 0,35. Ainsi, au lieu d'accepter, par exemple, l'approximation normale disant que le 95% ci va jusqu'à 1,15 (ce qui ne peut pas être correct car le vrai de l'essai binomial ne peut pas dépasser 1, je dirais que le ci avec une largeur égale vers le bas et le haut fait n'existe que pour des niveaux de confiance .pp^=4/5=0.8pp<70%
cbeleites prend en charge Monica
1
Parlons-nous de choses différentes? La distribution binomiale est discrète, un ci serait "pour , dans 94% des répétitions on observe succès dans tests". Mais j'ai compris qu'il fallait estimer pour et déjà observés . Par exemple, étant donné que sur tests ont été des succès. Je parle donc de , . Ce n'est pas la distribution binomiale mais celle de la proportionp=0.8k{3,4,5}n=5pk p k = 4 n = 5 P r ( p | n = 5 , k = 4 ) p [ 0 , 1 ] P r ( k | n , p )nkpk=4n=5Pr(p|n=5,k=4)p[0,1]Pr(k|n,p)p(Je ne connais pas son nom). Veuillez m'aider à comprendre pourquoi il n'y a pas de densité pour cette distribution?
cbeleites prend en charge Monica
6

La distribution binomiale n'est tout simplement pas symétrique, mais ce fait apparaît surtout pour près de ou et pour les petits ; la plupart des gens l'utilisent pour et donc la confusion.0 1p01p 0,5np0.5

chl
la source
2

Je sais que cela fait un moment, mais je pensais que je sonnerais ici. Étant donné n et p, il est simple de calculer la probabilité d'un certain nombre de succès en utilisant directement la distribution binomiale. On peut alors examiner la distribution pour voir qu'elle n'est pas symétrique. Il approchera de la symétrie pour les grands np et les grands n (1-p).

On peut accumuler les probabilités dans les queues pour calculer un CI particulier. Étant donné la nature discrète de la distribution, trouver une probabilité particulière dans une queue (par exemple, 2,5% pour un IC à 95%) nécessitera une interpolation entre le nombre de succès. Avec cette méthode, on peut calculer les CI directement sans approximation (autre que l'interpolation requise).

Dr. Eric
la source