# CUSTOMER CHURN PREDICTION  

A machine learning program that predicts customer churn (yes(1) or no(0)) from a telecos data company.This program uses **extreme gradient boosting** technique in predicting outcomes.  

## Data set and its description  

| Data             | Description                                                                    |
|------------------|--------------------------------------------------------------------------------|
| Customer ID      | Customer unique identifier                                                     |
| Gender           | Whether the customer is a male or a female                                     |
| Senior Citizen   | Whether the customer is a senior citizen or not (1, 0)                         |
| Partner          | Whether the customer has a partner or not (Yes, No)                            |
| Dependents       | Whether the customer has dependents or not (Yes, No)                           |
| Tenure           | Number of months the customer has stayed with the company                      |
| Phone service    | Whether the customer has a phone service or not (Yes, No)                      |
| Multiple lines   | Whether the customer has multiple lines or not (Yes, No, No phone service)     |
| Internet Service | Customer’s internet service provider (DSL, Fiber optic, No)                    |
| Online security  | Whether the customer has online security or not (Yes, No, No internet service) |

## Dependecies and packgages  

*numpy>=1.20.0,<1.21.0
*xgboost
*pandas>=1.3.5,<1.4.0
*pydantic>=1.8.1,<1.9.0
*scikit-learn>=1.0.2,<1.1.0
*strictyaml>=1.3.2,<1.4.0
*ruamel.yaml==0.16.12
*feature-engine>=1.0.2,<1.1.0
*joblib>=1.0.1,<1.1.0

## Source code link  

Source code link:
[Github link](https://github.com/chibuikeeugene/customer_churn_prediction.git)