始める無料で始める

日付に基づくベースライン

すでに 3 つの異なるベースラインモデルを作成しました。さらに練習するために、もう少し作ってみましょう。最初のモデルはグルーピング変数に基づきます。時間帯によって乗車料金が変わることは明らかです。たとえば、ラッシュアワーは料金が高くなるかもしれません。

今回の目標は、該当する時間ごとに平均の "fare_amount" を割り当てるベースラインモデルを作ることです。まずは train 全体でモデルを作成し、test データセットに対して予測を行います。

traintest の各 DataFrame はワークスペースに用意されています。さらに、両方の DataFrame にある "pickup_datetime" 列は、すでに datetime オブジェクトに変換済みです。

この演習はコースの一部です

Pythonで挑むKaggleコンペティション

コースを見る

演習の手順

  • train および test の各 DataFrame で、"pickup_datetime" 列から時(hour)を取得します。
  • train データで、時間ごとの平均 "fare_amount" を計算します。
  • 得られたグルーピングを使い、pandasmap() メソッドで test の予測を作成します。
  • 予測結果をファイルに書き出します。

実践的なインタラクティブ演習

このサンプルコードを完成させて、この演習に挑戦してみましょう。

# Get pickup hour from the pickup_datetime column
train['hour'] = train['pickup_datetime'].dt.____
test['hour'] = test['pickup_datetime'].dt.____

# Calculate average fare_amount grouped by pickup hour 
hour_groups = train.____('____')['____'].mean()

# Make predictions on the test set
test['fare_amount'] = test.hour.map(____)

# Write predictions
test[['id','fare_amount']].____('hour_mean_sub.csv', index=False)
コードを編集して実行