Skip to content

MM-Robin/Customer_Churn_Analysis-Retention_Strategy

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

4 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

📉 Customer Churn Analysis & Retention Strategy

Predict churn. Retain customers. Drive growth.

Python scikit-learn Streamlit Pandas License: MIT


🔍 Overview

A full-stack data science project built on a real-world telecom dataset to uncover the key drivers of customer churn and craft data-driven retention strategies. From raw data to business insights — this project covers it all.

📊 Predicts churn probability per customer · 🎯 Identifies at-risk segments · 💡 Recommends targeted retention actions


✨ Features

Feature Description
🔬 Exploratory Analysis Deep statistical insights with rich visualizations
🤖 Churn Prediction ML model to score each customer's churn probability
📊 Interactive Dashboard Streamlit-powered web dashboard for business users
💼 Business Reports Auto-generated Excel & PowerPoint output files
🎯 Retention Strategies Actionable, data-backed recommendations

🗂️ Project Structure

Customer_Churn_Analysis-Retention_Strategy/
│
├── 📄 analysis.py              # Core analysis & ML pipeline
├── 📊 dashboard.py             # Interactive Streamlit dashboard
├── 📋 requirements.txt         # Python dependencies
│
├── 📁 data/
│   └── WA_Fn-UseC_-Telco-Customer-Churn.csv
│
└── 📁 output/
    ├── 🖼️  *.png               # Visualization charts
    ├── 📈 churn_predictions.csv
    ├── 📊 churn_business_report.xlsx
    └── 📑 churn_presentation.pptx

🚀 Getting Started

1️⃣ Clone the Repository

git clone https://github.com/MM-Robin/Customer_Churn_Analysis-Retention_Strategy
cd Customer_Churn_Analysis-Retention_Strategy

2️⃣ Set Up a Virtual Environment

python -m venv venv
source venv/bin/activate       # Windows: venv\Scripts\activate

3️⃣ Install Dependencies

pip install -r requirements.txt

▶️ Usage

Run the Analysis

python analysis.py

Executes the full pipeline: data preprocessing → feature engineering → model training → output generation.

Launch the Dashboard

python dashboard.py

Opens an interactive web dashboard to explore churn patterns and model insights visually.


📦 Dependencies

Python 3.8+   pandas   numpy   scikit-learn
matplotlib    seaborn  plotly  streamlit

📂 Dataset

Uses the IBM Watson Analytics — Telco Customer Churn dataset, covering:

  • 👤 Customer demographics
  • 📡 Service usage patterns
  • 💳 Billing & contract details
  • ✅ Churn labels

📈 Results

The project delivers:

  • ✅ Trained churn prediction model with accuracy metrics
  • 📌 Top churn-driving factors identified
  • 💡 Segment-specific retention recommendations
  • 📊 Interactive visualizations & business-ready reports

🤝 Contributing

Contributions are welcome!

  1. Fork the repository
  2. Create a feature branch: git checkout -b feature/your-feature
  3. Commit your changes: git commit -m "Add your feature"
  4. Push and open a Pull Request

👤 Author

Mainuddin Monsur Robin

GitHub


If you found this project useful, consider giving it a ⭐

About

Comprehensive customer churn analysis and retention strategy project using Python, machine learning, and data visualization to predict churn and provide actionable insights.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages