Analisis Data Pelanggan dengan Teknik Klasifikasi dan Klasterisasi Menggunakan Python

Pendahuluan

Dalam dunia bisnis, data pelanggan memainkan peran penting dalam menyusun strategi pemasaran. Melalui teknik data mining seperti klasifikasi dan klasterisasi, kita dapat menemukan pola perilaku dan kelompok pelanggan yang tersembunyi. Pada proyek ini, saya menggunakan dataset pelanggan mall dan mengimplementasikan analisis dengan Python di Google Colab.

Dataset dan Deskripsi Data

Dataset ini terdiri dari 200 pelanggan dengan atribut:

  • Jenis Kelamin

  • Usia

  • Pendapatan Tahunan

  • Skor Belanja (1-100)

Tujuan analisis adalah:

  1. Mengklasifikasikan pelanggan berdasarkan usia.

  2. Mengelompokkan pelanggan berdasarkan penghasilan dan perilaku belanja.

Gambar 1. Load dataset dan ringkasan statistik

Pra-Pemrosesan Data

Saya mengelompokkan usia ke dalam:

  • Remaja (<25)

  • Dewasa (25–50)

  • Lansia (>50)

Kolom gender juga diubah menjadi bentuk numerik menggunakan LabelEncoder.

Gambar 2. Kolom baru AgeGroup hasil konversi dari data usia

Gambar 3. Kolom age setelah dikonversi menjadi angka

Persiapan Data

Saya akan klasifikasikan pelanggan ke dalam:
Remaja, Dewasa, Lansia berdasarkan input:

  • Gender

  • Annual Income

  • Spending Score

Gambar 4. Preprocessing

Klasifikasi

Algoritma:

  • Decision Tree

  • Naive Bayes

  • K-Nearest Neighbors (KNN)

Proses:

Data dibagi menjadi 80% data latih dan 20% data uji. Model dilatih untuk memprediksi kelompok umur berdasarkan gender, pendapatan, dan skor belanja.

Decision Tree

Gambar 5. Preprocessing Fitur dan Split Data
Gambar 6. Confusion Matrix - Decision Tree

Naive Bayes

Saya akan melatih model Naive Bayes untuk memprediksi apakah seseorang termasuk Remaja, Dewasa, atau Lansia berdasarkan:

  • Gender

  • Annual Income

  • Spending Score

Gambar 7. Kode Python untuk Klasifikasi Naive Bayes
Gambar 8. Confusion Matrix - Naive Bayes

K-Nearest Neighbors (KNN)

Melatih model KNN untuk mengklasifikasikan pelanggan ke dalam kelompok umur berdasarkan 3 fitur numerik.

Gambar 9. Kode Python untuk Klasifikasi KNN

Gambar 10. Confusion Matrix - KNN

Catatan:

  • n_neighbors=5 artinya model akan mempertimbangkan 5 tetangga terdekat.

  • Bisa diganti jadi 3, 7, atau angka lainnya untuk eksplorasi.

Klasterisasi

Saya melakukan klasterisasi untuk segmentasi pelanggan menggunakan:

  • KMeans

  • Hierarchical Clustering

Kedua metode menggunakan fitur: pendapatan & skor belanja.

Tujuan:

Melakukan klasterisasi pelanggan berdasarkan pola Annual Income dan Spending Score — untuk menemukan segmen pelanggan secara tidak langsung.

KMeans Clustering


Gambar 11. Kode Python untuk Klasterisasi KMeans

Gambar 12. Elbow Method - KMeans

Misal saya pilih 5 cluster (karena biasanya terlihat siku di angka itu):

Gambar 13. Visualisasi Hasil Clustering K-Means pada Data Pendapatan dan Spending Score

Hierarchical Clustering

Gambar 14. Dendrogram Hasil Hierarchical Clustering

Setelah itu, misalnya saya juga pilih 5 cluster:

Gambar 15. Visualisasi Hasil Hierarchical Clustering pada Data Pendapatan dan Spending Score

Insight & Interpretasi

  • Ada kelompok pelanggan muda dengan pendapatan rendah tapi skor belanja tinggi → potensi target promosi.

  • Lansia umumnya punya skor belanja rendah.

  • KMeans dan Hierarchical memberi segmentasi yang hampir konsisten.

Kesimpulan

Dengan menggunakan teknik klasifikasi dan klasterisasi dalam Python:

  • Saya berhasil memprediksi kelompok umur pelanggan.

  • Saya menemukan 5 segmen pelanggan yang memiliki perilaku berbeda.

  • Analisis ini membantu memahami pasar dan bisa digunakan dalam strategi pemasaran yang lebih tepat.

Referensi

  • Dataset: Mall Customers (Kaggle)

  • Library: pandas, matplotlib, seaborn, scikit-learn

  • Tools: Google Colab





Komentar

Postingan populer dari blog ini

Summary Materi Sebelum UTS