Heatmap van reistijden per vervoerswijze
In deze oefening maak je een heatmap van nationale gegevens waarin reistijden (in minuten) en vervoerswijzen worden vergeleken. Je begint met data_row, een lijst met waarden uit de enige gegevensrij van een JSON API-responseobject. Lijsten met modes (5) voor vervoer en times (9) voor reistijden zijn gemaakt en afgedrukt naar de console. Je moet de enkele gegevensrij omvormen tot een lijst-van-lijsten, een DataFrame samenstellen die geschikt is om door te geven aan sns.heatmap, en de heatmap maken.
De gegevensrij bevat gegevens over de 5 vervoerswijzen in groepen van 9 reistijden. Een iteratie is een volledige set reistijden.
pandas en seaborn zijn geladen met de gebruikelijke aliassen.
Deze oefening maakt deel uit van de cursus
US Census-gegevens analyseren in Python
Oefeninstructies
- Stel
iter_lenin op de lengte van de lijsttimes - Maak in de list comprehension een range met start 0, stop op de lengte van
data_row, en stapgrootteiter_len - Maak een heatmap met de
commutingDataFrame als eerste parameter; annoteer de heatmap met het aantal forenzen in duizenden (gebruik gehele deling om te delen door1000)
Praktische interactieve oefening
Probeer deze oefening eens door deze voorbeeldcode in te vullen.
# Set iter_len to the number of commute times
iter_len = ____
# Break row into list of lists by travel mode
data = [data_row[i:i+iter_len] for i in range(____)]
# Create DataFrame, set data type to int
commuting = pd.DataFrame(data=data, index=modes, columns=times)
commuting = commuting.astype(int)
# Create heatmap of commuters by mode by income
sns.heatmap(____, annot=____, fmt = "d", cmap="YlGnBu")
plt.xticks(rotation = 50)
plt.yticks(rotation = 50)
plt.show()