Skip to content

ashwathnakate/user-profiling-and-segmentation

Repository files navigation


👥 User Profiling and Segmentation

Deployment Can be found at 👉 https://user-profiling-and-segmentation.streamlit.app/

This repository contains a Jupyter Notebook for User Profiling and Segmentation using clustering and exploratory data analysis (EDA) techniques. The notebook processes user data to identify distinct groups based on behavior or characteristics — useful for targeted marketing, personalization, and user analytics.


📂 File Structure

  • User_profiling_and_segmentation.ipynb — Main notebook containing the analysis, visualizations, and segmentation logic.
  • README.md — Project overview and usage instructions.

🔍 Features

  • Data Cleaning & Preprocessing
  • Exploratory Data Analysis (EDA)
  • Dimensionality Reduction using PCA
  • User Segmentation using KMeans clustering
  • Visualization of Segments
  • Insights and Interpretation

🧰 Technologies Used

  • Python 3
  • Jupyter Notebook
  • Pandas
  • NumPy
  • Seaborn
  • Matplotlib
  • Scikit-learn
  • Plotly

🚀 How to Run

  1. Clone the repository:

    git clone https://github.com/ashwathnakate/user-profiling-and-segmentation.git
    cd user-profiling
  2. (Optional) Create a virtual environment:

    python -m venv venv
    source venv/bin/activate  # On Windows use venv\Scripts\activate
  3. Launch the notebook:

    jupyter notebook User_profiling_and_segmentation.ipynb

📦 Requirements

pandas
numpy
matplotlib
seaborn
scikit-learn
jupyter
plotly

📈 Sample Outputs

  • Cluster plots showing user segments
  • PCA-based visualizations for dimensionality reduction
  • Summary statistics and feature distributions

👤 Author

GitHub


📄 License

This project is licensed under the MIT License - see the LICENSE file for details.