Baseline dựa trên ngày giờ
Chúng ta đã xây dựng 3 mô hình baseline khác nhau. Để luyện tập thêm, hãy xây thêm vài mô hình nữa. Mô hình đầu tiên dựa trên biến nhóm. Rõ ràng giá cước có thể phụ thuộc vào thời điểm trong ngày. Ví dụ, giá có thể cao hơn vào giờ cao điểm.
Mục tiêu của bạn là xây dựng một mô hình baseline gán giá trị trung bình "fare_amount" theo từng giờ tương ứng. Trước mắt, bạn sẽ tạo mô hình trên toàn bộ dữ liệu train và tạo dự đoán cho tập test.
Hai DataFrame train và test đã có sẵn trong không gian làm việc của bạn. Ngoài ra, cột "pickup_datetime" ở cả hai DataFrame đã được chuyển sang đối tượng datetime cho bạn.
Bài tập này là một phần của khóa học
Chinh phục cuộc thi Kaggle bằng Python
Hướng dẫn bài tập
- Lấy giá trị giờ từ cột "pickup_datetime" cho cả DataFrame
trainvàtest. - Tính giá trị trung bình "fare_amount" cho mỗi giờ trên dữ liệu train.
- Tạo dự đoán cho
testbằng phương thứcmap()củapandasvà nhóm đã thu được. - Ghi các dự đoán ra tệp.
Bài tập tương tác thực hành trực tiếp
Hãy thử làm bài tập này bằng cách hoàn thành đoạn mã mẫu này.
# 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)