Aan de slagGa gratis aan de slag

Migratiestromen tussen staten

In de video zag je een heatmap van migratiestromen tussen staten, maar die was nogal druk. In deze oefening kijk je alleen naar stromen binnen het Midwesten.

Er is een DataFrame state_to_state geladen en de eerste paar rijen zijn in de console weergegeven. Onthoud uit de video dat de rijlabels de staat aangeven waarnaar is verhuisd, terwijl de kolomnamen de staat aangeven waarvandaan is verhuisd.

Er is een lijst midwest_states gedefinieerd met de namen van de staten in het Midwesten. (Print hem naar de console als je wilt zien welke staten erin staan.) De DataFrame gebruikt ook staatsnamen voor de kolomnamen en index, dus je gebruikt midwest_states om de kolommen en rijen te selecteren die je voor deze heatmap wilt gebruiken.

pandas en seaborn zijn geïmporteerd met de gebruikelijke aliassen.

Deze oefening maakt deel uit van de cursus

US Census-gegevens analyseren in Python

Cursus bekijken

Oefeninstructies

  • Maak een subset van de DataFrame met alleen die kolommen die overeenkomen met de lijst met staatsnamen, en alleen die rijen waarvan de indexen in de lijst met staatsnamen staan.
  • Door het subselecteren kunnen kolommen en rijen opnieuw geordend zijn. Controleer of midwest.index gelijk is aan midwest.columns.
  • Sorteer de DataFrame op rij-index (axis = 0) en op kolomnaam (axis = 1). Gebruik in beide gevallen inplace = True.
  • Maak een heatmap van midwest. Pas een geel-groen-blauw kleurverloop toe met cmap="YlGnBu".

Praktische interactieve oefening

Probeer deze oefening eens door deze voorbeeldcode in te vullen.

# 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()
Code bewerken en uitvoeren