Solution code of my 6th place submission to Data Science Nigeria's 2020 Pre-Bootcamp Hackthon on Zindi.africa
# Zindi_DSN_2020_ExpressoChurnPrediction
Solution code of my 6th place submission to Data Science Nigeria's 2020 Pre-Bootcamp Hackthon on Zindi.africa
## Problem Statement
This hackathon was organized by Data Science Nigeria (DSN) on Zindi.africa. The goal is to develop a predictive model that determines the likelihood of a customer to churn from Expresso, an African telecommunications company that provides customers with airtime and mobile data bundles in Mauritania and Senegal. 'Churn' was conceptualised as the customer becoming inactive and not making any transactions for 90 days. Insights gained from this project will help Expresso to understand which customers are at risk of leaving so they can find ways to better serve their customers and improve customer retention. This problem was treated as a classification problem.
## About the data
The available data contained information on 500 000 customers collected from the Senegal market. This was divided into train set [400 000 rows, 19 columns] and test set [100 000 rows, 18 columns], consisting of 14 numeric variables and 5 categorical variables.
Below is the list of the variables and their description:
Further information about the dataset and the company is available at
zindi.africa
## Exploratory Analysis
* The data contained considerable amount of missing values--not less than 33%--in 14 out of 19 columns. Patterns were observed around the missing data as variables that were closely linked to each other had the same amount of missing values.
* The target variable had imbalanced classes--18.7% of the customers churned, which implies that Expresso had more of loyal customers than those who churned.
* Majority of the customers who churned were from the city of Dakar (42.1%), have been with Expresso for more than two years (92.7%), earned less and spent less to top up and for data volume. They also called less on either Expres …