This project applies Unsupervised Machine Learning techniques to segment customers based on their purchasing behavior and demographic characteristics. By understanding the distinct groups within a customer base, businesses can tailor their marketing strategies, optimize product recommendations, and improve overall customer retention. The project primarily leverages K-Means Clustering to identify these customer personas.
- Analyze customer purchasing behavior and demographics.
- Perform Exploratory Data Analysis (EDA) to uncover trends.
- Apply feature engineering, data cleaning, and standardization.
- Implement K-Means clustering for robust customer segmentation.
- Visualize high-dimensional customer clusters using t-SNE.
The dataset (new.csv) contains comprehensive customer information, including:
- Demographics: Year of Birth, Education Level, Marital Status, Income.
- Family Structure: Number of children/teens at home.
- Spending Habits: Amounts spent on various product categories (Wines, Fruits, Meat, Fish, Sweets, Gold).
- Engagement: Web visits, campaign acceptance, and recent purchases.
(Note: The dataset is excluded from version control for privacy/space, but should be placed in the data/ directory to run the notebook).
- Programming Language: Python
- Data Manipulation: Pandas, NumPy
- Data Visualization: Matplotlib, Seaborn
- Machine Learning: Scikit-learn
- Environment: Jupyter Notebook
Customer-Segmentation-Using-Unsupervised-Learning/
│
├── data/ # Directory for the dataset (e.g., new.csv)
├── images/ # Saved visualizations and plots
├── notebooks/ # Jupyter notebooks for EDA and modeling
│ └── Customer_Segmentation_using_Unsupervised_Machine_Learning_in_Python.ipynb
├── results/ # Exported results and reports
├── .gitignore # Ignored files and folders
├── requirements.txt # Python dependencies
└── README.md # Project documentation
-
Clone the repository:
git clone https://github.com/sashankabhiram/Customer-Segmentation-Using-Unsupervised-Learning.git cd Customer-Segmentation-Using-Unsupervised-Learning -
Install the required libraries:
pip install -r requirements.txt
-
Add the dataset: Ensure your dataset (
new.csv) is placed inside thedata/folder. -
Launch the Notebook:
cd notebooks jupyter notebookOpen
Customer_Segmentation_using_Unsupervised_Machine_Learning_in_Python.ipynband run all cells.
(Add your findings here!)
- Cluster 1 (e.g., High Spenders): ...
- Cluster 2 (e.g., Bargain Hunters): ...
- Cluster 3 (e.g., New Parents): ...
Visualizations such as the t-SNE scatter plot of customer segments can be saved in the
images/folder.
Muthyala Sashank Abhiram