通勤手段別の所要時間ヒートマップ
この演習では、全国データを用いて通勤時間(分)と移動手段を比較するヒートマップを作成します。はじめに、JSON API レスポンスオブジェクトの単一行から取り出した値のリスト data_row が与えられます。移動 modes(5 種類)と通勤 times(9 区分)のリストはすでに作成され、コンソールに出力されています。あなたは、この 1 行のデータを二次元のリストに整形し、sns.heatmap に渡せる DataFrame を作成し、ヒートマップを描画します。
このデータ行は、5 つの移動手段それぞれについて、9 区分の通勤時間のデータが並んでいます。ここでの 1 イテレーションは、通勤時間 9 区分が一揃いになったものを指します。
pandas と seaborn は通常のエイリアスで読み込まれています。
この演習はコースの一部です
Pythonで学ぶ米国センサスデータ分析
演習の手順
iter_lenをtimesリストの長さに設定する- リスト内包表記では、開始 0、終了を
data_rowの長さ、ステップをiter_lenとする range を作成する - 最初の引数に
commutingDataFrame を指定してヒートマップを作成し、通勤者数(千人単位)を注釈表示する(整数除算で1000で割る)
実践的なインタラクティブ演習
このサンプルコードを完成させて、この演習に挑戦してみましょう。
# 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()