File size: 973 Bytes
85ae9b4
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
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
import streamlit as st
import numpy as np
import joblib

st.title("Premium prediction app")

st.image("banner.jpg")

age = st.number_input("Enter your age", value  = 30, step = 1)
gender = st.selectbox(label = "Select gender", options = ["Male", "Female"])
bmi = st.number_input("enter your bmi", value = 22.1, step = .1)
children = st.selectbox(label = "Select number of children", options = [0,1,2,3,4,5])
smoker = st.selectbox(label = "Smoking status", options = ["yes", "no"])

gender_num = 0 if gender == "Male" else 1
smoker_num = 0 if smoker == "no" else 1

test_data = np.array([[age, bmi, children, smoker_num]])

poly = joblib.load("poly_obj")
model = joblib.load("insurance_joblib")

submit_bn = st.button("Submit")

if submit_bn:


    test_poly = poly.transform(test_data)

    y_pred_log = model.predict(test_poly)

    y_pred = np.exp(y_pred_log)
    st.write(f"## Insurance Premium Amount: ${np.round(y_pred[0], 2)}")