Mettre en évidence des valeurs dans la distribution
Il est parfois nécessaire de transformer vos données pour produire une meilleure visualisation. Deux méthodes qui gèrent les valeurs manquantes sont .dropna() et .fillna(). Vous pouvez aussi retirer les valeurs aberrantes en filtrant les entrées au-dessus ou au-dessous d'un certain centile en appliquant une condition avec .quantile() à une colonne donnée.
Vous avez aussi vu dans la vidéo comment mettre en évidence une valeur précise dans un graphique en ajoutant une ligne verticale à la position x sur les axes :
Axes.axvline(x=0, color=None, ...)
Dans cet exercice, vous jetterez un dernier coup d'œil à la distribution mondiale des revenus, puis vous retirerez les valeurs au-dessus du 95e centile, tracerez la distribution et mettrez en évidence la moyenne et la médiane. pandas sous le nom pd, seaborn sous le nom sns et matplotlib.pyplot sous le nom plt ont été importés, et le DataFrame income des exercices précédents est disponible dans votre espace de travail.
Cette activité fait partie du cours
Importer et gérer des données financières en Python
Instructions de l’exercice
- Affectez la colonne
'Income per Capita'àinc_per_capita. - Filtrez pour ne conserver que les lignes de
inc_per_capitainférieures au 95e centile. Réaffectez à la même variable. - Tracez un histogramme par défaut pour la version filtrée de
inc_per_capitaet affectez-le àax. - Utilisez
ax.axvline()aveccolor='b'pour mettre en évidence la moyenne deinc_per_capitaen bleu, - Utilisez
ax.axvline()aveccolor='g'pour mettre en évidence la médiane en vert. Affichez le résultat !
Exercice interactif pratique
Essayez cet exercice en complétant ce code d’exemple.
# Create inc_per_capita
inc_per_capita = ____
# Filter out incomes above the 95th percentile
inc_per_capita = inc_per_capita[____ < ____]
# Plot histogram and assign to ax
ax = ____
# Highlight mean
ax.axvline(inc_per_capita.mean(), color='b')
# Highlight median
ax.axvline(inc_per_capita.median(), color='g')
# Show the plot
plt.show()