APIレスポンスとPandas
この演習では、APIのレスポンスオブジェクトからデータを取得して pandas のDataFrameに読み込みます。分かりやすい列名を付け、文字列として渡される値を適切なデータ型に変換します。
DataFrameを作成したら、サンプルコードを実行して散布図を作成し、アメリカ合衆国における平均家族人数と年齢の中央値の関係を可視化しましょう。
requests と pandas(pd)はすでにインポート済みです。レスポンスオブジェクト r が用意されています。
この演習はコースの一部です
Pythonで学ぶ米国センサスデータ分析
演習の手順
- 4つの「新しい」列名からなるリスト
col_namesを作成します:name、median_age、avg_family_size、state - DataFrame コンストラクタを使って DataFrame
statesを作成します。data パラメータにはr.json()を指定しますが、先頭の項目(古い列名が入っています)をスキップするためにスライスを使ってください - 各列に対して
astypeメソッドを用い、正しいデータ型を割り当てます。
実践的なインタラクティブ演習
このサンプルコードを完成させて、この演習に挑戦してみましょう。
# Import seaborn
import seaborn as sns
sns.set()
# Construct the DataFrame
col_names = ____
states = pd.DataFrame(columns = col_names, data = ____)
# Convert each column with numeric data to an appropriate type
states["median_age"] = states["median_age"].____
states["avg_family_size"] = ____
# Scatterplot with regression line
sns.lmplot(x = "avg_family_size", y = "median_age", data = states)
plt.show()