File size: 1,975 Bytes
27c3631
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
import streamlit as st
import numpy as np
import pandas as pd
import pickle
import joblib
import sklearn

model = joblib.load("model_Rf-3.pkl",'rb')

st.title("Customer Churn Prediction")
st.write("Predict whether a customer will churn based on their details")

# ['CreditScore', 'Age', 'Tenure', 'Balance', 'EstimatedSalary']

credit_score = st.number_input("Credit Score",min_value=300,max_value=900)
credit_score =  credit_score/900

age = st.slider("Age",min_value=18,max_value=100)
age = age/92

tenure = st.slider("Tenure",min_value=0,max_value=10)
tenure = tenure/10

balance = st.number_input("Balance",min_value=0.0,step=1000.0)
balance = balance/250898.090000

num_of_prods = st.slider("Number of Products",min_value=1,max_value=4)
num_of_prods =  num_of_prods/4

has_cr_card = st.selectbox("Has Credit Card",[0,1],format_func = lambda x:"YES" if x==1 else "NO")

is_activemember = st.selectbox("Are you an Active Member",[0,1],format_func = lambda x:"YES" if x==1 else "NO")

salary = st.number_input("Estimated Salary",min_value=0.0,step=5000.0)
salary = salary/199992.480000

geography = st.selectbox("Please Ennter your Country",["France","Germany","Spain"])
france,germany,spain = 0,0,0
if geography=="France":
    france = 1
    germany = 0
    spain = 0
elif geography == "Germany":
    france = 0
    germany = 1
    spain = 0
else:
    france = 0
    germany = 0
    spain = 1

gender = st.selectbox("Please Ennter your Gender",["Male","Female"])
gender_male , gender_female = 0,0
if gender=="Male":
    gender_male = 1
    gender_female = 0
else:
    gender_male = 0
    gender_female = 1

inputs = np.array([[credit_score,age,tenure,balance,num_of_prods,has_cr_card,is_activemember,salary,france,germany,spain,gender_male,gender_female]])

if st.button("--PREDICT--"):
    prediction = model.predict(inputs)
    if prediction[0] == 1:
        st.error("The customer is likely to churn")
    else:
        st.success("The customer is not likely to churn")