Spaces:
Sleeping
Sleeping
File size: 1,989 Bytes
3faa196 8783907 3faa196 48fd359 3faa196 |
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 |
import pickle
import streamlit as st
import pandas as pd
import numpy as np
# Load Model
# Load file pipeline pkl
with open('best_dt.pkl', 'rb') as file_1:
best_dt = pickle.load(file_1)
# Load file preprocessor
with open('preprocessor.pkl', 'rb') as file_2:
preprocessor = pickle.load(file_2)
def run():
products_number = st.selectbox(label='Select your product number:', options=[1, 2, 3, 4])
age = st.number_input(label='Select your age',min_value=18,max_value=91) # since min age is 18 and max 91
active_member = st.selectbox(label="Select your status member", options=[0,1])
balance = st.number_input(label='Select your balance',min_value=0.00,max_value=296710.00)
gender = st.radio(label="Select your gender", options=["Male","Female" ]) # male, female
country = st.radio(label="Select your country", options=["Spain", "Germany", "France"]) # "Spain", "Germany", "France"
credit_score = st.number_input(label='Select your credit score',min_value=350,max_value=850)
tenure = st.number_input(label='Select your tenure',min_value=0,max_value=10)
credit_card = st.selectbox(label="Select your credit card status", options=[0,1])
df_inf = pd.DataFrame({
'products_number' : products_number,
'age' : age,
'active_member' : active_member,
'balance' : balance,
'gender' : gender,
'country': country,
'credit_score': credit_score ,
'tenure' : tenure,
'credit_card' : credit_card
}, index =[0])
st.table(df_inf)
if st.button(label='Predict'):
# Prediction
# define df_inf_final trough preprocessor
df_inf_final = preprocessor.transform(df_inf)
inf_pred = best_dt.predict(df_inf_final)
st.write(inf_pred[0])
if inf_pred[0] == 0:
st.write('Customer will likely leave')
else:
st.write('Customer will likely stay')
if __name__== '__main__':
run() |