Proyek ini bertujuan untuk menganalisis faktor-faktor kunci yang mempengaruhi pelanggan untuk memesan kembali di sebuah hotel. Memahami perilaku pelanggan dan alasan pemesanan ulang sangat penting bagi industri perhotelan untuk meningkatkan pendapatan dan mempertahankan kelangsungan bisnis. Dengan menganalisis data pemesanan hotel, proyek ini bertujuan untuk mengungkap pola-pola yang memengaruhi loyalitas pelanggan, pembatalan pemesanan, dan strategi retensi pelanggan.
-
Pemesanan Ulang ๐: Mengidentifikasi faktor-faktor yang mempengaruhi pelanggan untuk memesan ulang sangat penting untuk meningkatkan retensi pelanggan dan memaksimalkan pendapatan. Dengan memahami perilaku ini, hotel dapat mengembangkan strategi untuk meningkatkan loyalitas pelanggan dan mendorong bisnis yang berulang.
-
Pembatalan Pemesanan ๐ซ: Memahami penyebab dan pola pembatalan pemesanan juga sangat penting. Pembatalan mempengaruhi pendapatan hotel dan kapasitas operasional, dan mengatasi perilaku ini dapat membantu meminimalkan pemesanan yang hilang.
Analisis ini mengikuti pendekatan terstruktur yang terdiri dari langkah-langkah utama berikut:
-
Pembersihan Data (Data Wrangling) ๐งน
Persiapan dan pembersihan data adalah langkah pertama. Dataset yang digunakan dalam analisis ini berisi informasi pemesanan dari sebuah hotel, termasuk fitur-fitur seperti pembatalan sebelumnya, lead time, segmen pasar, dan tarif harian rata-rata (ADR). Data yang hilang atau tidak valid diolah untuk memastikan integritas data. -
Analisis Data Eksploratori (EDA) ๐
EDA dilakukan untuk menemukan pola dan tren tersembunyi dalam data. Berbagai visualisasi dibuat untuk memahami bagaimana faktor-faktor seperti pembatalan dan lead time mempengaruhi perilaku pemesanan ulang pelanggan. -
Model Prediksi ๐ค
Model prediksi dibangun menggunakan XGBoost untuk mengklasifikasikan apakah pelanggan kemungkinan besar akan memesan ulang atau tidak. Model ini dilatih menggunakan sekumpulan fitur dan dievaluasi menggunakan metrik seperti akurasi dan confusion matrix. -
Interpretasi Model ๐ก
Untuk mendapatkan wawasan lebih dalam tentang proses pengambilan keputusan model, nilai SHAP digunakan untuk memahami kontribusi setiap fitur dalam memprediksi pemesanan ulang. Ini membantu mengidentifikasi faktor-faktor yang paling berpengaruh terhadap pemesanan ulang pelanggan.
Analisis ini memberikan berbagai manfaat, baik bagi pihak hotel maupun bagi penelitian dan pengembangan lebih lanjut di industri perhotelan. Berikut adalah beberapa manfaat utama yang diperoleh dari proyek ini:
Dengan memahami faktor-faktor yang mempengaruhi pemesanan ulang, hotel dapat merancang strategi yang lebih efektif untuk meningkatkan loyalitas pelanggan. Hal ini membantu untuk:
- Menawarkan promosi atau diskon bagi pelanggan yang lebih cenderung memesan ulang.
- Meningkatkan kepuasan pelanggan dengan menyesuaikan layanan berdasarkan analisis preferensi pelanggan.
Pahami tren pembatalan pemesanan untuk mengembangkan kebijakan yang lebih fleksibel dan efisien:
- Menawarkan fleksibilitas dalam kebijakan pemesanan dan pembatalan untuk mengurangi dampak negatif pada pendapatan.
- Menyusun strategi pemesanan ulang dengan memperhatikan pola pembatalan dan segmentasi pelanggan.
Dengan informasi mengenai Average Daily Rate (ADR) dan pola pemesanan pelanggan, hotel dapat merancang strategi harga yang lebih kompetitif untuk menarik lebih banyak pelanggan dan meningkatkan tingkat pemesanan ulang.
- Menyesuaikan harga berdasarkan segmentasi pasar dan tingkat pemesanan ulang.
- Menggunakan analisis lead time untuk menyesuaikan kebijakan harga lebih awal untuk meminimalkan pembatalan.
Melalui analisis data dan model prediksi, hotel dapat memahami lebih dalam tentang kebutuhan dan preferensi tamu, yang dapat diterjemahkan menjadi peningkatan pengalaman menginap:
- Menyediakan layanan yang lebih personal sesuai dengan karakteristik pelanggan yang sering memesan ulang.
- Mengoptimalkan fasilitas berdasarkan segmentasi pasar yang telah dianalisis, seperti jenis kamar, paket makanan, dan kebutuhan lainnya.
Model yang dikembangkan dapat digunakan untuk memprediksi perilaku pelanggan di masa depan, memungkinkan pihak hotel untuk merencanakan lebih baik dalam hal kapasitas, harga, dan promosi. Selain itu, teknik model ini dapat diadaptasi untuk analisis di industri lain.
- Menawarkan solusi berbasis data bagi manajer hotel untuk membuat keputusan yang lebih informasional.
- Memperkenalkan penggunaan model machine learning dalam analisis perilaku pelanggan yang dapat dipelajari lebih lanjut.
Proyek ini juga membuka pintu untuk penelitian lebih lanjut, baik dalam teknologi data maupun dalam konteks manajemen perhotelan. Data dan model yang dikembangkan dapat digunakan oleh peneliti untuk mengeksplorasi aspek lain dalam industri perhotelan.
- Memberikan wawasan baru bagi peneliti dan akademisi mengenai perilaku konsumen di industri perhotelan.
- Mendorong kolaborasi antar industri untuk menciptakan sistem yang lebih efektif dalam meningkatkan pengalaman pelanggan.
๐ Deskripsi Proyek
Repositori ini berisi dataset pemesanan hotel yang digunakan untuk analisis prediksi pembatalan reservasi, pola pemesanan, dan karakteristik tamu. Dataset ini menyediakan informasi lengkap mengenai tipe hotel, detail pemesanan, tamu, dan berbagai faktor yang memengaruhi status reservasi.
๐ Dataset Overview
- ๐ Nama File:
hotels.csv - ๐ข Jumlah Entri: 119.390
- ๐งฑ Jumlah Kolom: 32
- ๐พ Ukuran File: 29.1 MB
๐ Sumber Data
Dataset ini diperoleh dari platform repositori github dengan tautan berikut.
๐ท๏ธ Fitur Dataset
Berikut adalah daftar kolom yang tersedia dalam dataset beserta deskripsinya:
hotelโ Tipe hotel (Resort Hotel atau City Hotel).is_canceledโ Status pembatalan (0: Tidak dibatalkan, 1: Dibatalkan).lead_timeโ Waktu tunggu antara pemesanan dan kedatangan (dalam hari).arrival_date_yearโ Tahun kedatangan.arrival_date_monthโ Bulan kedatangan.arrival_date_week_numberโ Nomor minggu dari tahun saat kedatangan.arrival_date_day_of_monthโ Tanggal kedatangan.stays_in_weekend_nightsโ Jumlah malam menginap di akhir pekan.stays_in_week_nightsโ Jumlah malam menginap di hari kerja.adultsโ Jumlah orang dewasa.childrenโ Jumlah anak-anak.babiesโ Jumlah bayi.mealโ Tipe paket makanan (misalnya: BB, HB, FB).countryโ Negara asal tamu.market_segmentโ Segmen pasar (misalnya: Online TA, Offline TA).distribution_channelโ Saluran distribusi pemesanan.is_repeated_guestโ Tamu berulang (1: Ya, 0: Tidak).previous_cancellationsโ Jumlah pembatalan sebelumnya.previous_bookings_not_canceledโ Jumlah pemesanan sebelumnya yang tidak dibatalkan.reserved_room_typeโ Tipe kamar yang dipesan.assigned_room_typeโ Tipe kamar yang diberikan.booking_changesโ Jumlah perubahan pada pemesanan.deposit_typeโ Tipe deposit (No Deposit, Non Refund, Refundable).agentโ ID agen yang membuat pemesanan.companyโ ID perusahaan yang membuat pemesanan.days_in_waiting_listโ Jumlah hari dalam daftar tunggu.customer_typeโ Tipe pelanggan (Transient, Contract, dll).adrโ Average Daily Rate (rata-rata harga harian).required_car_parking_spacesโ Kebutuhan parkir mobil.total_of_special_requestsโ Total permintaan khusus.reservation_statusโ Status reservasi (Check-Out, Canceled, No-Show).reservation_status_dateโ Tanggal status reservasi terakhir.
๐งพ Contoh Data (5 Baris Pertama)
| hotel | is_canceled | lead_time | arrival_date_year | arrival_date_month | arrival_date_week_number | arrival_date_day_of_month | stays_in_weekend_nights | stays_in_week_nights | adults | children | babies | meal | country | market_segment | distribution_channel | is_repeated_guest | previous_cancellations | previous_bookings_not_canceled | reserved_room_type | assigned_room_type | booking_changes | deposit_type | agent | company | days_in_waiting_list | customer_type | adr | required_car_parking_spaces | total_of_special_requests | reservation_status | reservation_status_date |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Resort Hotel | 0 | 120 | 2021 | July | 28 | 16 | 2 | 5 | 2 | 1 | 0 | BB | PRT | Online TA | Online Booking | 0 | 0 | 1 | A | A | 0 | No Deposit | 15 | 23 | 0 | Transient | 98.5 | 1 | 2 | Check-Out | 2021-07-15 |
| City Hotel | 1 | 200 | 2021 | December | 49 | 15 | 3 | 2 | 1 | 0 | 0 | HB | USA | Corporate | Direct | 1 | 3 | 0 | B | B | 2 | Refundable | 22 | 45 | 3 | Contract | 105 | 0 | 4 | Canceled | 2021-12-05 |
| Resort Hotel | 0 | 80 | 2020 | October | 42 | 23 | 1 | 4 | 2 | 2 | 0 | FB | BRA | Travel Agent | Online Booking | 0 | 1 | 3 | C | C | 1 | Non Refund | 20 | 30 | 2 | Transient | 120 | 1 | 0 | No-Show | 2020-10-12 |
| City Hotel | 0 | 50 | 2022 | May | 19 | 10 | 1 | 3 | 2 | 0 | 0 | BB | FRA | Online TA | Offline Booking | 0 | 0 | 2 | A | A | 0 | No Deposit | 18 | 25 | 1 | Transient | 95 | 0 | 1 | Check-Out | 2022-05-10 |
| Resort Hotel | 1 | 140 | 2020 | June | 24 | 20 | 2 | 4 | 1 | 1 | 0 | HB | AUS | Corporate | Direct | 1 | 0 | 2 | B | B | 1 | Refundable | 12 | 15 | 0 | Contract | 130 | 2 | 3 | Canceled | 2020-06-20 |
Berikut adalah beberapa library dan dependensi yang digunakan dalam proyek ini:
- Pandas: Manipulasi dan analisis data
- Matplotlib dan Seaborn: Visualisasi data
- XGBoost: Model prediksi
- Scikit-learn: Alat machine learning untuk pelatihan dan evaluasi model
- SHAP: Interpretabilitas model (nilai SHAP)
Analisis yang dilakukan pada dataset pemesanan hotel ini memberikan berbagai wawasan penting mengenai faktor-faktor yang mempengaruhi pemesanan ulang dan pembatalan pemesanan. Berikut adalah temuan-temuan utama yang dihasilkan dari analisis ini:
Berdasarkan hasil analisis dan model prediksi yang dibangun, berikut adalah faktor-faktor utama yang mempengaruhi pelanggan untuk memesan ulang (repeated booking):
-
Pemesan Sebelumnya yang Tidak Dibatalkan: Pelanggan yang memiliki riwayat pemesanan sebelumnya yang tidak dibatalkan lebih cenderung untuk memesan kembali.
-
Jumlah Pembatalan Sebelumnya: Pelanggan yang memiliki banyak pembatalan sebelumnya cenderung lebih berhati-hati dan kurang cenderung memesan ulang. Meskipun demikian, jumlah pembatalan sebenarnya sedikit dibandingkan dengan pemesanan yang tidak dibatalkan.
-
Lead Time: Lead time yang lebih lama menunjukkan pelanggan yang merencanakan lebih awal, namun ini juga meningkatkan risiko pembatalan. Hal ini menjadi faktor penting dalam strategi untuk mengurangi pembatalan.
-
Average Daily Rate (ADR): Pelanggan yang membayar ADR lebih hemat cenderung lebih puas dengan pengalamannya dan lebih mungkin untuk memesan kembali. Hal ini menunjukkan pentingnya harga yang kompetitif dalam menarik pelanggan.
-
Segmen Pasar: Pelanggan dari segmen perusahaan lebih cenderung memesan ulang dibandingkan segmen lain. Ini menunjukkan adanya hubungan yang lebih erat antara hotel dan perusahaan tertentu.
Melalui visualisasi data, kami mengidentifikasi pola musiman dalam pembatalan pemesanan. Berikut adalah beberapa temuan utama:
-
Pola Musiman: Beberapa bulan menunjukkan rasio pembatalan yang lebih tinggi, yang mungkin dipengaruhi oleh faktor-faktor eksternal seperti musim liburan atau acara besar. Ini menandakan bahwa kebijakan dan strategi penawaran hotel harus dipertimbangkan dengan cermat berdasarkan waktu dalam setahun.
-
Wawasan Praktis: Dengan mengetahui bulan-bulan dengan tingkat pembatalan yang lebih tinggi, hotel dapat menyesuaikan strategi pemesanan mereka, seperti menawarkan diskon atau lebih banyak fleksibilitas untuk mengurangi pembatalan di bulan-bulan tersebut.
Analisis terhadap rata-rata lama menginap menunjukkan perbedaan yang signifikan antara City Hotel dan Resort Hotel:
-
City Hotel: Lama menginap rata-rata lebih pendek, kemungkinan besar karena City Hotel lebih sering digunakan untuk perjalanan bisnis atau kunjungan singkat.
-
Resort Hotel: Lama menginap rata-rata lebih panjang, terutama untuk malam akhir pekan, yang mencerminkan bahwa Resort Hotel lebih sering digunakan untuk liburan atau menginap jangka panjang.
Wawasan untuk Hotel:
-
City Hotel dapat meningkatkan lama menginap dengan menawarkan promosi untuk tamu yang tinggal lebih lama, misalnya dengan memberikan diskon khusus untuk penginapan lebih dari 2 malam.
-
Resort Hotel dapat memanfaatkan pola lama menginap yang lebih panjang dengan memperkuat layanan dan fasilitas yang dapat meningkatkan pengalaman tamu.
Berdasarkan temuan ini, beberapa rekomendasi yang dapat diambil oleh hotel antara lain:
-
Meminimalkan Pembatalan Pemesanan: Dengan menganalisis faktor seperti lead time dan jumlah pembatalan sebelumnya, hotel dapat mengurangi tingkat pembatalan dengan menawarkan fleksibilitas dalam kebijakan pembatalan atau dengan memberikan insentif untuk pemesanan lebih awal.
-
Memperkuat Segmen Pasar Perusahaan: Hotel dapat meningkatkan hubungan dengan perusahaan dan menawarkan paket yang lebih menarik untuk pelanggan dari segmen ini.
-
Strategi Harga Berdasarkan ADR: Menawarkan harga yang lebih kompetitif dapat membantu meningkatkan kemungkinan pemesanan ulang, terutama dengan pelanggan yang menghargai nilai lebih dari tarif yang mereka bayar.
-
Menggunakan Data Musiman untuk Menyesuaikan Strategi: Mengetahui bulan dengan tingkat pembatalan lebih tinggi memungkinkan hotel untuk merencanakan penawaran dan diskon khusus untuk menarik pelanggan selama periode tersebut.
Secara keseluruhan, analisis ini memberikan wawasan yang sangat berguna untuk memahami berbagai faktor yang mempengaruhi pemesanan ulang dan pembatalan, serta bagaimana hotel dapat mengoptimalkan strategi mereka untuk meningkatkan loyalitas pelanggan dan memaksimalkan pendapatan.
- Muhammad Hadi Nur Fakhri (202110370311255)
- Rizky Sulaiman (202110370311257)
- Mochammad Azizil Akbar (202110370311284)