CommencerCommencer gratuitement

Flux entre États

Dans la vidéo, vous avez vu une carte thermique des flux migratoires entre États, mais elle était surchargée. Dans cet exercice, vous allez vous concentrer uniquement sur les flux à l’intérieur du Midwest.

Un DataFrame state_to_state a été chargé, et les premières lignes s’affichent dans la console. Rappelez-vous, d’après la vidéo, que les étiquettes de lignes indiquent l’État de destination, tandis que les noms de colonnes indiquent l’État d’origine.

Une liste midwest_states a été définie avec les noms des États du Midwest. (Affichez-la dans la console si vous souhaitez voir quels États elle contient.) Le DataFrame utilise également les noms des États pour les colonnes et l’index ; vous utiliserez donc midwest_states pour extraire les colonnes et les lignes à utiliser pour cette carte thermique.

pandas et seaborn sont importés avec les alias habituels.

Cet exercice fait partie du cours

Analyzing US Census Data in Python

Afficher le cours

Instructions

  • Sous-échantillonnez le DataFrame pour ne retourner que les colonnes correspondant à la liste de noms d’États, et uniquement les lignes dont les index figurent dans cette liste.
  • Le sous-échantillonnage a peut-être réordonné les colonnes et les lignes. Vérifiez si midwest.index est égal à midwest.columns.
  • Triez le DataFrame par index de ligne (axis = 0) et par nom de colonne (axis = 1). Utilisez inplace = True dans les deux cas.
  • Créez une carte thermique de midwest. Appliquez un dégradé jaune-vert-bleu avec cmap="YlGnBu".

Exercice interactif pratique

Essayez cet exercice en complétant cet exemple de code.

# Retain only rows and columns of Midwest states
midwest = state_to_state[____][state_to_state.index.isin(____)]

# Are rows and columns still in the same order?
print(____)

# Sort the rows (by index) and columns (by name)
midwest.sort_index(axis = ____, ____)
midwest.sort_index(axis = ____, ____)

# Create a heatmap of migration flows
____
plt.xticks(rotation=90)
plt.yticks(rotation=0)
plt.show()
Modifier et exécuter le code