Nuttanicha's picture
Update app.py
1980429
import joblib
import pandas as pd
import streamlit as st
EDU_DICT = {'unknown': 1,
'secondary': 2,
'primary': 3,
'tertiary': 4,
}
model = joblib.load('model.joblib')
unique_values = joblib.load('unique_values.joblib')
unique_job = unique_values["job"]
unique_marital = unique_values["marital"]
unique_default = unique_values["default"]
unique_housing = unique_values["housing"]
unique_loan = unique_values["loan"]
unique_contact = unique_values["contact"]
unique_month = unique_values["month"]
unique_poutcome = unique_values["poutcome"]
unique_education = unique_values["education"]
def main():
st.title("Bank Marketing")
with st.form("questionaire"):
age = st.slider("Age", min_value=15, max_value=100)
job = st.selectbox("Job", options = unique_job)
marital = st.selectbox("Marital", options = unique_marital)
education = st.selectbox("Education", options = unique_education)
default = st.selectbox("Default", options = unique_default)
balance = st.slider("Balance", min_value=-9000, max_value=200000)
housing = st.selectbox("Housing", options = unique_housing)
loan = st.selectbox("Loan", options = unique_loan)
contact = st.selectbox("Contact", options = unique_contact)
day = st.slider("Day", min_value=1, max_value=50)
month = st.selectbox("Month", options = unique_month)
duration = st.slider("Duration", min_value=0, max_value=5000)
campaign = st.slider("Campaign", min_value=1, max_value=100)
pdays = st.slider("Pdays", min_value=-10, max_value=1000)
previous = st.slider("Previous", min_value=0, max_value=300)
poutcome = st.selectbox("Poutcome", options = unique_poutcome)
# clicked==True only when the button is clicked
clicked = st.form_submit_button("Predict y")
if clicked:
result=model.predict(pd.DataFrame({"age": [age],
"job": [job],
"marital": [marital],
"education": [EDU_DICT[education]],
"default": [default],
"balance": [balance],
"housing": [housing],
"loan": [loan],
"contact": [contact],
"day": [day],
"month": [month],
"duration": [duration],
"campaign": [campaign],
"pdays": [pdays],
"previous": [previous],
"poutcome": [poutcome]}))
# Show prediction
result = 'yes' if result[0] == 1 else 'no'
st.success("Your predicted y is "+result) #แสดงผล
# Run main()
if __name__ == "__main__":
main()