Spaces:
Build error
Build error
| 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") |