一対多のマージを仕上げる
準備が整ったので、いよいよテーブルをマージします。ここでは game_matchups と punts を結合します。先ほど、これらのデータフレームが結合可能な状態であることを確認しましたね。まずは内容をさっと確認してから、コードを書きましょう。
データをマージしたら、GameKey でグループ化し、PlayId 列の件数を数えることで、各試合でのパント回数を求められます。カウント部分のコードは用意されています。
この演習はコースの一部です
スプレッドシート利用者のためのPandas結合
演習の手順
- 各データフレームの先頭5行を表示します。
puntsを右側のデータフレームとして内側マージを行い、結果を表示します
実践的なインタラクティブ演習
このサンプルコードを完成させて、この演習に挑戦してみましょう。
# View first 5 rows of each data frame
print(____.head(), '\n', ____.head())
# Merge data frames
games_all = ____.merge(____, how='____')
print(____.head(10))
# Produce counts of games by number of punts
counts = games_all.groupby('GameKey')['PlayId'].size()
counts.hist()
plt.xlabel("Punts per Game")
plt.ylabel("Number of Games")
plt.show()