Pourquoi la moyenne de la valeur la plus élevée parmi 100 tirages d'une distribution normale est-elle différente du 98e centile de la distribution normale?

8

Pourquoi la moyenne de la valeur la plus élevée parmi 100 tirages d'une distribution normale est-elle différente du 98% percentile de la distribution normale? Il semble que par définition, ils devraient être les mêmes. Mais...

Code en R:

NSIM <- 10000
x <- rep(NA,NSIM)
for (i in 1:NSIM)
{
    x[i] <- max(rnorm(100))
}
qnorm(.98)
qnorm(.99)
mean(x)
median(x)
hist(x)

J'imagine que je me méprends sur ce que devrait être le maximum de 100 tirages de la distribution normale. Comme le démontre une distribution asymétrique inattendue des valeurs maximales.

russellpierce
la source

Réponses:

10

Le maximum n'a pas de distribution normale. Son cdf est où est le cdf normal standard. En général, les moments de cette distribution sont difficiles à obtenir analytiquement. Il existe un article ancien à ce sujet de Tippett ( Biometrika , 1925) .Φ(x)100Φ(x)

Rob Hyndman
la source
Existe-t-il un moyen d'exprimer en langage clair quelle est la différence entre un centile donné et le maximum de N valeurs? D'un point de vue profane, il est difficile de comprendre pourquoi un point de données provenant d'un centile (Y) donné ne devrait pas être (en moyenne) le même que le meilleur buteur d'un groupe de 100 / Y. Par exemple, si je trouve que vos réponses sont classées dans le 90e centile, je m'attends à ce que votre réponse soit généralement la meilleure réponse parmi tout groupe de 10 réponses sélectionnées au hasard.
russellpierce
4
@drknexus Votre intuition est correcte. Cependant, les extrêmes (et quasi-extrêmes) des distributions d'échantillonnage sont quelque peu spéciales: leurs valeurs sont contraintes par la masse de données d'un côté, tandis que - pour les distributions parentales à queues infinies - il n'y a aucune contrainte sur leur valeurs de l'autre côté. Ainsi, par exemple, la distribution d'un maximum (à partir d'une distribution sans limite supérieure) est faussée positivement. Cela augmente son attente par rapport au centile correspondant.
whuber
2

J'ai demandé pourquoi il y avait une différence entre la moyenne du maximum de 100 tirages d'une distribution normale aléatoire et le 98e centile de la distribution normale. La réponse que j'ai reçue de Rob Hyndman était généralement acceptable, mais trop dense techniquement pour être acceptée sans révision. Je me demandais s'il était possible de fournir une réponse qui explique dans un langage simple intuitivement compréhensible pourquoi ces deux valeurs ne sont pas égales.

En fin de compte, ma réponse peut être circulaire insatisfaisante; mais conceptuellement, la raison max (rnorm (100)) a tendance à être supérieure à qnorm (.98) est, en bref, parce qu'en moyenne le plus élevé de 100 scores aléatoires normalement distribués dépassera parfois sa valeur attendue. Cependant, cette distorsion n'est pas symétrique, car lorsque des scores faibles sont tirés, il est peu probable qu'ils finissent par être les plus élevés des 100 scores. Chaque tirage indépendant est une nouvelle chance de dépasser la valeur attendue, ou d'être ignoré car la valeur obtenue n'est pas le maximum des 100 valeurs tirées. Pour une démonstration visuelle comparez l'histogramme du maximum de 20 valeurs à l'histogramme du maximum de 100 valeurs, la différence de biais, en particulier dans les queues, est flagrante.

Je suis arrivé à cette réponse indirectement en travaillant sur un problème / question connexe que j'avais posé dans les commentaires. Plus précisément, si je trouvais que les résultats des tests de quelqu'un étaient classés dans le 95e centile, je m'attendrais à ce qu'en moyenne, si je les mettais dans une pièce avec 99 autres candidats au test, leur classement serait en moyenne de 95. Cela se révèle être plus ou moins le cas (code R) ...

for (i in 1:NSIM)
{
    rank[i] <- seq(1,100)[order(c(qnorm(.95),rnorm(99)))==1]
}
summary(rank)

Dans le prolongement de cette logique, je m'attendais également à ce que si je prenais 100 personnes dans une pièce et sélectionnais la personne avec le 95e score le plus élevé, puis que 99 autres personnes et les fassent passer le même test, qu'en moyenne la personne sélectionnée serait être classé 95e dans le nouveau groupe. Mais ce n'est pas le cas (code R) ...

for (i in 1:NSIM)
{
    testtakers <- rnorm(100)
    testtakers <- testtakers[order(testtakers)]
    testtakers <- testtakers[order(testtakers)]
    ranked95 <- testtakers[95]
    rank[i] <- seq(1,100)[order(c(ranked95,rnorm(99)))==1]
}
summary(rank)

Ce qui différencie le premier cas du deuxième cas, c'est que dans le premier cas, le score de l'individu le place exactement au 95e centile. Dans le deuxième cas, leur score peut s'avérer légèrement supérieur ou inférieur au vrai 95e centile. Puisqu'ils ne peuvent pas classer plus haut que 100, les groupes qui produisent un score de rang 95 qui est en fait au 99e centile ou plus ne peuvent pas compenser (en termes de rang moyen) les cas où le score de rang 95 est beaucoup plus bas que le vrai 90e centile. Si vous regardez les histogrammes pour les deux vecteurs de rang fournis dans cette réponse, il est facile de voir qu'il y a une restriction de plage dans les extrémités supérieures qui est une conséquence de ce processus que j'ai décrit.

russellpierce
la source
2

Il y a deux problèmes: l'un est l'asymétrie dans la distribution de la valeur maximale que vous avez identifiée; l'autre est que vous ne devriez pas regarder le 98e centile.

Au lieu de la moyenne de la valeur la plus élevée, considérez la médiane. C'est plus facile car c'est une statistique d'ordre. La probabilité que les 100 valeurs soient inférieures au quantile est donc le quantile médian pour le maximum sera quand , c'est-à-dire , un peu plus de . Mais en raison de l'asymétrie, vous vous attendez à ce que la moyenne soit encore plus élevée.qq100q100=12q=121/1000.993090.98

Comme illustration dans R

require(matrixStats)
NSIM <- 100001
cases <- 100
set.seed(1)
simmat <- matrix(rnorm(cases*NSIM), ncol=cases)
tops <- rowMaxs(simmat)
c(mean(tops), median(tops), qnorm(1/2^(1/cases)))
c(pnorm(mean(tops)), pnorm(median(tops)), 1/2^(1/cases))

qui donne

> c(mean(tops), median(tops), qnorm(1/2^(1/cases)))
[1] 2.508940 2.464794 2.462038
> c(pnorm(mean(tops)), pnorm(median(tops)), 1/2^(1/cases))
[1] 0.9939453 0.9931454 0.9930925
Henri
la source
1

Pour développer un peu la réponse de Rob, supposons que nous voulons connaître la fonction de distribution cumulative (CDF) de la valeur la plus élevée de tirages indépendants d'une distribution normale standard, . Appelez cette valeur la plus élevée , la statistique du premier ordre. Alors le CDF c'est:NX1,...,XNY1

P(Y1<x)=P(max(X1,...,XN)<x)=P(X1<x,...,XN<x)=P(X1<x)P(XN<x)=P(X<x)100,
où la deuxième ligne suit par l'indépendance des tirages. Nous pouvons également l'écrire sous la forme où représente le CDF et représente le PDF de la variable aléatoire donnée en indice de cette fonction.
FY1(x)=FX(x)100,
Ff

Rob utilise la notation standard que est défini comme pour une normale standard --- c'est-à-dire que est la CDF normale standard.Φ(x)P(X<x) Φ(x)

La fonction de densité de probabilité (PDF) de la statistique du premier ordre n'est que la dérivée du CDF par rapport à : le CDF à élevé à 99 (c'est-à-dire ) fois le PDF à fois 100 (c'est-à-dire ).X

fY1(x)=100FX(x)99fX(x)
xN1xN
Charlie
la source
Il semble y avoir un problème avec votre équation finale (j'ai corrigé la composition mais je l'ai traduite exactement comme vous l'aviez avant). Qu'est-ce que ? De plus, le pdf de n'est pas équivalent à . En fait, si a une distribution normale (ou n'importe quelle distribution continue) alors tout , ce qui ne peut donc pas être le pdf. X1XP(X=x)XP(X=x)=0x
Macro
@Macro, est le premier tirage parmi tirages indépendants; est la statistique du premier ordre (vous préférerez peut-être écrire place). J'ai rendu la notation plus précise en réponse à vos autres commentaires. X1NY1X(1)
Charlie