CommencezCommencez gratuitement

Calculer plusieurs mesures par secteur et année d'IPO

La fonction pointplot() de seaborn facilite la comparaison de statistiques sommaires d'une variable numérique selon différents niveaux de variables catégorielles :

seaborn.pointplot(x=None, y=None, hue=None, data=None, ...)

Dans la vidéo, vous avez vu une visualisation de la capitalisation boursière (la variable numérique) distinguée selon que l'IPO (la variable catégorielle) a eu lieu avant (premier niveau) ou après (deuxième niveau) l'année 2000.

Dans cet exercice, vous comparerez la capitalisation boursière moyenne pour chaque année depuis 2000 pour le NYSE et le NASDAQ, après avoir exclu les valeurs aberrantes au‑delà du 95e centile. pandas sous le nom pd et matplotlib.pyplot sous le nom plt ont été importés, et le DataFrame listings avec la colonne de référence 'Exchange' est disponible dans votre espace de travail.

Cette activité fait partie du cours

Importer et gérer des données financières en Python

Voir le cours

Instructions de l’exercice

  • Importez seaborn sous le nom sns.
  • Filtrez listings pour ne garder que les sociétés dont l'IPO est postérieure à 2000, pour toutes les bourses sauf 'amex'.
  • Convertissez les données de la colonne 'IPO Year' en entiers.
  • Créez la colonne market_cap_m pour exprimer la capitalisation boursière en millions USD.
  • Filtrez market_cap_m afin d'exclure les valeurs au‑dessus du 95e centile.
  • Créez un pointplot de listings en utilisant la colonne 'IPO Year' pour x, 'market_cap_m' pour y, et 'Exchange' pour hue. Affichez le résultat après avoir fait pivoter les xticks de 45 degrés.

Exercice interactif pratique

Essayez cet exercice en complétant ce code d’exemple.

# Import the seaborn library as sns
____

# Exclude IPOs before 2000 and from the 'amex'
listings = ____[(____['IPO Year'] > ____) & (listings.Exchange != ____)]

# Convert IPO Year to integer
listings['IPO Year'] = ____['IPO Year'].____(____)

# Create market_cap_m
listings['market_cap_m'] = ____['Market Capitalization'].div(1e6)

# Exclude outliers
listings = listings[listings.____ < listings.____.____(.95)]

# Create the pointplot
sns.pointplot(x=____, y=____, hue=____, data=____)

# Rotate xticks
plt.____(____=____)

# Show the plot
plt.show()
Modifier et exécuter le code