This project uses the Expresso churn dataset from Zindi to predict customer churn for a telecom company in Mauritania and Senegal. The workflow includes data cleaning, feature engineering, and training a Logistic Regression model, deployed in a Streamlit app for interactive predictions.
# **Expresso Churn Prediction – Logistic Regression & Streamlit App**
This project is based on the Expresso Churn Prediction Challenge originally hosted on the Zindi platform. The goal is to build a machine learning pipeline to predict customer churn for Expresso, a telecommunications company operating in Mauritania and Senegal.
Customer churn prediction is a crucial task in the telecom industry since it helps identify customers likely to leave, enabling proactive retention strategies.
**📁 Dataset**
The dataset contains information on 2.5M clients with more than 15 behavioral and usage features. It is not included in this repository due to its large size.
🔗 You can download the dataset from the challenge:
👉 Expresso Churn Dataset (Zindi)
Once downloaded, place it in a folder named data/ (ignored by Git).
**⚙️ Workflow**
**Data Exploration & Cleaning**
Checked dataset info, missing values, duplicates, and outliers.
Generated a Pandas Profiling Report for insights.
Cleaned and prepared the dataset for modeling.
**Feature Engineering**
Encoded categorical features.
Normalized continuous features.
Selected relevant predictors for churn modeling.
**Model Training**
Trained a Logistic Regression model to predict churn.
Evaluated performance on test data.
Saved the model using pickle for deployment.
**Deployment with Streamlit**
Built an interactive Streamlit app for predictions.
Users input customer details
The app predicts churn likelihood in real time.
You can try the **live Streamlit app** here:([
expresochurnprediction.stre…])