J'ai été mystifié par la fonction quantile R toute la journée. J'ai une notion intuitive de la façon dont les quantiles fonctionnent, et une M.S. dans les statistiques, mais garçon oh garçon, la documentation pour elle est confuse pour moi.Expliquer la fonction quantile() dans R
De la documentation:
Q [i] (p) = (1 - gamma) x [J] + gamma x [j + 1],
je suis avec jusqu'à présent. Pour un type i quantile, il est une interpolation entre x [j] et x [j + 1], sur la base de certains mystérieuse constante gamma
où 1 < = i < = 9, (jm)/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 quantile. Ici, gamma dépend de la partie fractionnaire de g = np + m-j.
Alors, comment calculer j? m?
Pour les quantiles continu de l'échantillon types (4 à 9), l'échantillon quantiles peuvent être obtenus en linéaire interpolation entre la statistique d'ordre k-ième et p (k):
p (k) = (k - alpha)/(n - alpha - bêta + 1), où α et β sont des constantes déterminées par le type. De plus, m = alpha + p (1 - alpha - bêta), et gamma = g.
Maintenant, je suis vraiment perdu. p, qui était une constante avant, est maintenant apparemment une fonction.
Donc, pour le type 7 quantiles, 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.
Est-ce que quelqu'un veut m'aider? En particulier, je suis confus par la notation de p étant une fonction et une constante, ce que le m est est, et maintenant de calculer j pour certains particulier.
J'espère que basé sur les réponses ici, nous pouvons soumettre une documentation révisée qui explique mieux ce qui se passe ici.
quantile.R source code ou le type: quantile.default
Merci d'avoir répondu à ma question :) C'était une sérieuse quantité de détective travail. –
Pas de problème. J'essaye d'écrire une fonction quantile pour Python/Numpy pour notre groupe, ce qui m'amène à cette question. Quand j'ai finalement trouvé la réponse, j'ai pensé que je partagerais. – AFoglia
J'ai écrit la fonction quantile() et le fichier d'aide associé et l'ai soumis à l'équipe de base R en août 2004 (en remplacement des versions précédentes). Je viens de vérifier et toutes ces erreurs ont été causées par la modification de mon fichier d'aide après l'avoir envoyé. (Je suis responsable de l'utilisation de p et p [k] cependant.) Je ne l'avais jamais remarqué car je supposais que mon fichier ne serait pas touché. Je vais voir si je peux obtenir le fichier d'aide corrigé pour R 2.10.0. –