Boxplots dans matplotlib: Marqueurs et des valeurs aberrantes
J'ai quelques questions à propos de boxplots dans matplotlib:
Question Un. Ce qui ne les marqueurs que je l'ai souligné ci-dessous avec T1, T2, et T3 représenter? Je crois T1 est maximale et T3 sont des valeurs aberrantes, mais qu'est-ce que T2?
Question B Comment matplotlib identifier valeurs aberrantes? (c'est à dire comment sait-elle qu'ils ne sont pas le vrai max
et min
valeurs?)
Vous devez vous connecter pour publier un commentaire.
Une image vaut mille mots. Notez que les valeurs aberrantes (le
+
marqueurs dans votre parcelle de terrain) sont tout simplement des points à l'extérieur de la grande[(Q1-1.5 IQR), (Q3+1.5 IQR)]
marge ci-dessous.Cependant, la photo est seulement un exemple pour une distribution normale de l'ensemble de données. Il est important de comprendre que matplotlib ne pas estimer une distribution normale de la première et de calculer les quartiles de l'estimation des paramètres de distribution comme illustré ci-dessus.
Au lieu de cela, la médiane et les quartiles sont calculés directement à partir des données. Ainsi, votre boîte à moustaches peuvent être différentes en fonction de la distribution de vos données et la taille de l'échantillon, par exemple, asymétrique et avec plus ou moins de valeurs aberrantes.
99.3%
de vos données est contenue à l'intérieur de la grande[(Q1-1.5 IQR), (Q3+1.5 IQR)]
marge ci-dessus (aussi connu comme les moustaches). Ainsi, toutes les tiques en dehors de qui ne représentent que0.7%
de vos données.IQR
signifie intervalle InterquartileLa boîte représente le premier et le troisième quartiles, avec la ligne rouge de la médiane (2e quartile). Le la documentation donne la valeur par défaut moustaches à 1.5 IQR:
et
Si vous êtes confus au sujet de différents diagramme en boîte des représentations essayez de lire la description dans wikipedia.
En plus de seth réponse (étant donné que la documentation n'est pas très précis sur ce point):
T1 (les wiskers) sont mis à la valeur maximale en dessous de 75% + 1.5 IQR
(d'une valeur minimum de 25% - 1.5 IQR)
C'est le code qui calcule les moustaches position:
or
de l'expression: l'else
des pièces de sens, mais laor
semble impossible... par exemple pour le T3 de la partie,len(wisk_hi)==0
signifie "si nous ne trouvons pas les éléments ci-dessous lahi_val
" - comment cela peut-il arriver? T3 est trouvé en divisant les données sur la médiane, et en prenant la médiane de la moitié supérieure... par définition, il y aura des valeurs inférieures à hi_val - et quel est la seconde partie de laor
veux dire? Tous les conseils la plupart de bienvenue.q3
devrait faire partie de lad
tableau et de remplir la condition denp.compress
, il devrait également être, dans le tableau, le max est de. Peut-être que le code est qu'à "enregistrer", ou pour le rendre plus évident pour le lecteur quewist_hi
ne peut pas être plus petit queq3
.L'image ci-dessous montre les différentes parties d'une boîte à moustaches.
Quantile 1/T1: 25e Centile
Intervalle Interquartile (IQR): 25e centile de la 75e centile.
Médiane (Quantile 2/T2): 50e Percentile.
Quantile 3/T3: 75e Centile.
Je dois dire que les bleus sont les favoris de la boîte à moustaches.
L'image ci-dessous compare le diagramme en boîte de distribution normale à l'encontre de la fonction de densité de probabilité. Il devrait aider à expliquer le "Minimum", "Maximum", et les valeurs aberrantes.
"Minimum": (Q1-1.5 IQR)
"Maximum": (Q3+1.5 IQR)
Comme zelusp dit, 99,3% des données sont contenues dans 2.698 σ (écarts-types) pour une distribution normale. Les cercles verts (valeurs aberrantes) dans l'image ci-dessous sont les autres, 7% des données. Ici est une dérivation de la manière dont ces nombres est venu pour être.
Juste au cas où cela peut profiter à quelqu'un d'autre, j'ai besoin de mettre une légende sur un de mes diagramme en boîte des graphiques j'ai donc fait ce petit .png dans Inkscape et j'ai pensé le partager.
Voici un graphique qui illustre les composants de la boîte à partir d'un les stats.stackexchange répondre. Notez que k=1.5 si vous ne fournissez pas le
whis
mot-clé dans les Pandas.La boîte à moustaches de la fonction dans les Pandas est un wrapper pour
matplotlib.pyplot.boxplot
. Le matplotlib docs expliquer les composants des boîtes dans le détail:Question:
je. e. un quart de la saisie de valeurs de données est en dessous de la boîte et un quart au-dessus de la boîte.
Question B:
Matplotlib (et les Pandas) vous donne également beaucoup d'options pour modifier cette valeur par défaut définition des moustaches: