Skip to content

Uma-Obbani/customer-segmentation

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

6 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

🛒 Customer Segmentation Analysis

Python | License: MIT

This project performs customer segmentation using demographic and transaction data from a wholesale company. By applying unsupervised machine learning techniques, customers are grouped into meaningful segments based on shared characteristics.

The insights gained help businesses understand customer behavior, optimize marketing strategies, and increase customer lifetime value.


📑 Table of Contents

  1. Project Overview
  2. The Challenge
  3. Dataset
  4. Tech Stack
  5. Methodology
  6. Results & Insights
  7. Getting Started
  8. Project Structure
  9. License

📌 Project Overview

Customer segmentation allows businesses to tailor their marketing strategies by grouping customers based on similar behaviors and characteristics.

This project answers the key question:

“What are the distinct customer archetypes in our data?”

Using clustering algorithms, we uncover patterns in customer personality and purchasing behavior to enable targeted and data-driven decision-making.


🎯 The Challenge

Understanding a diverse customer base is critical for business success.
A one-size-fits-all approach often leads to:

  • Ineffective marketing campaigns
  • Missed cross-selling opportunities
  • Lower customer satisfaction

The challenge is to identify distinct customer segments and translate those insights into actionable business strategies.


💾 Dataset

The dataset used in this project is Customer Personality Analysis, available on Kaggle.

🔗 Dataset Link:
https://www.kaggle.com/datasets/imakash3011/customer-personality-analysis

Dataset Includes:

  • Customer demographics
  • Spending habits
  • Purchase channels
  • Campaign responses

🧰 Tech Stack

Data Manipulation & Analysis

  • pandas
  • numpy

Data Visualization

  • matplotlib
  • seaborn
  • plotly

Machine Learning

  • scikit-learn
  • scikit-learn-extra
  • yellowbrick

Environment

  • Jupyter Notebook

🔍 Methodology

  1. Data cleaning and preprocessing
  2. Feature engineering and scaling
  3. Exploratory Data Analysis (EDA)
  4. Clustering model selection (K-Means, etc.)
  5. Model evaluation (Elbow Method, Silhouette Score)
  6. Cluster visualization and interpretation

📊 Results & Insights

  • Identified multiple distinct customer segments
  • Each segment exhibits unique spending and demographic patterns
  • Enables:
    • Personalized marketing campaigns
    • Improved customer retention
    • Strategic product recommendations

Sample Visualizations

![Customer Clusters](images/customer_clusters.png)
![Elbow Method](images/elbow_method.png)

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors