Przepływy między stanami
W materiale wideo widziałeś mapę cieplną przepływów migracyjnych między stanami, ale była dość nieczytelna. W tym ćwiczeniu przyjrzysz się wyłącznie przepływom w obrębie Środkowego Zachodu.
Ramka danych state_to_state została wczytana, a jej pierwsze wiersze są widoczne w konsoli. Pamiętaj z materiału wideo, że etykiety wierszy oznaczają stan, do którego nastąpiła migracja, natomiast nazwy kolumn – stan, z którego migrowano.
Zdefiniowano listę midwest_states zawierającą nazwy stanów Środkowego Zachodu. (Wyświetl ją w konsoli, jeśli chcesz sprawdzić, jakie stany zawiera.) Ramka danych używa nazw stanów zarówno jako nazw kolumn, jak i indeksu – dlatego skorzystasz z midwest_states, aby wyodrębnić odpowiednie kolumny i wiersze do mapy cieplnej.
pandas i seaborn są zaimportowane z użyciem standardowych aliasów.
To ćwiczenie jest częścią kursu
Analiza danych spisowych USA w Pythonie
Instrukcje do ćwiczenia
- Przefiltruj ramkę danych tak, aby zawierała tylko te kolumny, których nazwy znajdują się na liście nazw stanów, oraz tylko te wiersze, których indeksy należą do tej listy.
- Filtrowanie mogło zmienić kolejność kolumn i wierszy. Sprawdź, czy
midwest.indexjest równymidwest.columns. - Posortuj ramkę danych według indeksu wierszy (
axis = 0) i nazwy kolumn (axis = 1). W obu przypadkach użyjinplace = True. - Utwórz mapę cieplną dla
midwest. Zastosuj paletę kolorów żółto-zielono-niebieską, ustawiająccmap="YlGnBu".
Interaktywne ćwiczenie praktyczne
Spróbuj tego ćwiczenia, uzupełniając ten przykładowy kod.
# 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()