Flujos entre estados
En el vídeo viste un mapa de calor de los flujos migratorios entre estados, pero estaba recargado. En este ejercicio, te centrarás solo en los flujos dentro del Medio Oeste.
Se ha cargado un DataFrame state_to_state, y las primeras filas se muestran en la consola. Recuerda del vídeo que las etiquetas de fila indican el estado al que se mudó, mientras que los nombres de columna indican el estado desde el que se mudó.
Se ha definido una lista midwest_states con los nombres de los estados del Medio Oeste. (Imprímela en la consola si quieres ver qué estados incluye). El DataFrame también usa nombres de estados para los nombres de columna y el índice, así que usarás midwest_states para extraer las columnas y filas que quieres usar en este mapa de calor.
pandas y seaborn están importadas con los alias habituales.
Este ejercicio forma parte del curso
Análisis de datos del Censo de EE. UU. con Python
Instrucciones del ejercicio
- Haz un subconjunto del DataFrame para devolver solo las columnas que coincidan con la lista de nombres de estados y solo las filas cuyos índices estén en la lista de nombres de estados.
- El submuestreo puede haber reordenado las columnas y filas. Comprueba si
midwest.indexes igual amidwest.columns. - Ordena el DataFrame por el índice de filas (
axis = 0) y por el nombre de columna (axis = 1). Usainplace = Trueen ambos casos. - Crea un mapa de calor de
midwest. Aplica una rampa de color amarillo-verde-azul concmap="YlGnBu".
Ejercicio interactivo práctico
Prueba este ejercicio y completa el código de muestra.
# 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()