Question

J'ai été mystifié par la fonction quantile R toute la journée.

J'ai une notion intuitive du fonctionnement des quantiles et un M.S. dans les statistiques, mais bon sang, la documentation à ce sujet est déroutante pour moi.

À partir de la documentation:

  

Q [i] (p) = (1 - gamma) x [j] + gamma   x [j + 1],

Je suis avec si loin. Pour un quantile de type i , il s'agit d'une interpolation entre x [j] et x [j + 1], basée sur une mystérieuse constante gamma

  

où 1 < = i < = 9, (j-m) / n < = p <   (j-m + 1) / n, x [j] est le jième ordre   statistique, n est la taille de l'échantillon et m   est une constante déterminée par l'échantillon   type de quantile. Ici le gamma dépend de   la partie fractionnaire de g = np + m-j.

Alors, comment calculer j? m?

  

Pour le quantile d'échantillon continu   types (4 à 9), l'échantillon   les quantiles peuvent être obtenus par linéaire   interpolation entre le kème ordre   statistique et p (k):

     

p (k) = (k - alpha) / (n - alpha - bêta   + 1)   où & # 945; et & # 946; sont des constantes déterminées   par le type. De plus, m = alpha + p (1   - alpha - beta), et gamma = g.

Maintenant je suis vraiment perdu. p, qui était une constante auparavant, est maintenant apparemment une fonction.

Donc, pour les quantiles de type 7, la valeur par défaut ...

  

Type 7

     

p (k) = (k - 1) / (n - 1). Dans ce cas, p (k) = mode [F (x [k])]. Ceci est utilisé par S.

Quelqu'un veut m'aider? En particulier, je suis dérouté par la notation de p étant une fonction et une constante, que diable m et calculons maintenant j pour un p particulier.

J'espère que, sur la base des réponses fournies ici, nous pourrons soumettre une documentation révisée qui explique mieux ce qui se passe ici.

code source quantile.R ou tapez: quantile.default

Était-ce utile?

La solution

Vous êtes naturellement confus. Cette documentation est terrible. Je devais revenir au papier sur lequel il était basé (Hyndman, RJ; Fan, Y. (novembre 1996). & "Quantiles dans les paquets statistiques &"; Statisticien américain 50 (4): 361 & # 8211; 365. doi: 10.2307 / 2684934 ) à obtenir une compréhension. Commençons par le premier problème.

  

où 1 < = i < = 9, (j-m) / n < = p < (j-m + 1) / n, x [j] est la statistique d'ordre j, n est la taille de l'échantillon et m est une constante déterminée par le type de quantile d'échantillon. Ici, gamma dépend de la partie fractionnaire de g = np + m-j.

La première partie provient directement du journal, mais ce que les rédacteurs de la documentation ont omis, c’est que j = int(pn+m). Cela signifie que Q[i](p) ne dépend que des statistiques à deux ordres les plus proches de p la fraction des observations (triées). (Pour ceux, comme moi, qui ne connaissent pas bien le terme, la & "Statistique de classement &" D'une série d'observations est la série triée.)

En outre, cette dernière phrase est tout simplement fausse. Il faut lire

  

Ici, gamma dépend de la partie fractionnaire de np + m, g = np + m-j

Quant à m c'est simple. Q[i] dépend de l’un des 9 algorithmes choisis. Donc, tout comme m[i] est la fonction quantile, p(k) doit être pris en compte k. Pour les algorithmes 1 et 2, m = alpha + p * (1 - alpha - beta) correspond à 0, pour 3, x[k] correspond à -1/2 et pour les autres à la partie suivante.

  

Pour les types de quantiles à échantillon continu (4 à 9), les quantiles à échantillon peuvent être obtenus par interpolation linéaire entre la statistique du k-ordre et p (k):

     

p (k) = (k - alpha) / (n - alpha - bêta + 1), où & # 945; et & # 946; sont des constantes déterminées par le type. De plus, m = alpha + p (1 - alpha - bêta) et gamma = g.

Ceci est vraiment déroutant. Ce que la documentation appelle <=> n’est pas identique au <=> précédent. <=> est la position de tracé . Dans l’article, les auteurs l’écrivent comme suit: <=> <=> , ce qui aide. Surtout que dans l'expression pour <=>, le <=> est l'original <=> et le <=>. Conceptuellement, pour les algorithmes 4 à 9, les points (<=> <=> , <=>) sont interpolés pour obtenir la solution (<=>, <=>). Chaque algorithme ne diffère que par l'algorithme pour le <=> <=> .

En ce qui concerne le dernier bit, R indique simplement ce que S utilise.

Le document d'origine fournit une liste de 6 " propriétés souhaitables pour un échantillon quantile " fonction, et indique une préférence pour # 8 qui satisfait à tous les égaux par 1. N ° 5 les satisfait tous, mais ils ne l'aiment pas pour d'autres raisons (c'est plus phénoménologique que dérivé de principes). Le n ° 2 correspond à ce que les geeks non statistes comme moi considéreraient comme les quantiles et à ce qui est décrit dans wikipedia.

BTW, en réponse à la réponse à une question , Mathematica fait les choses de manière très différente. Je pense que je comprends la cartographie. Bien que Mathematica soit plus facile à comprendre, (a) il est plus facile de se tirer une balle dans le pied avec des paramètres absurdes et (b) il ne peut pas utiliser l'algorithme n ° 2 de R. (Voici la page Quantile de Mathworld , qui indique que Mathematica ne peut pas effectuer la tâche n ° 2, mais donne une généralisation plus simple. de tous les autres algorithmes en termes de quatre paramètres.)

Autres conseils

Il existe différentes manières de calculer les quantiles lorsque vous lui donnez un vecteur et que vous n'avez pas de CDF connu.

Réfléchissez à la question de savoir quoi faire lorsque vos observations ne tombent pas exactement dans les quantiles.

Les " types " ne font que déterminer comment faire cela. Ainsi, les méthodes disent, & "Utiliser une interpolation linéaire entre la statistique de k-ème ordre et p (k) &";

.

Alors, qu'est-ce que p (k)? Un gars a dit: & "Bien, j'aime utiliser k / n &"; Un autre gars dit: & "J'aime utiliser (k-1) / (n-1) &"; etc. Chacune de ces méthodes a des propriétés différentes qui conviennent mieux à un problème ou à un autre.

Les \ alpha et \ beta ne sont que des façons de paramétrer les fonctions p. Dans un cas, ils sont 1 et 1. Dans un autre cas, ils sont 3/8 et -1/4. Je ne pense pas que les p soient une constante dans la documentation. Ils ne montrent tout simplement pas toujours la dépendance de manière explicite.

Voyez ce qui se passe avec les différents types lorsque vous insérez des vecteurs tels que 1: 5 et 1: 6.

(notez également que même si vos observations tombent exactement sur les quantiles, certains types utiliseront encore une interpolation linéaire).

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top