import joblib import pandas as pd import streamlit as st Blood_DICT = {'126/83':1, '125/80': 2, '140/90': 3, '120/80': 4, '132/87': 5, '130/86': 6, '117/76': 7, '118/76': 8, '128/85': 9, '131/86': 10, '128/84': 11, '115/75': 12, '135/88': 13, '129/84': 14, '130/85': 15, '115/78': 16, '119/77': 17, '121/79': 18, '125/82': 19, '135/90': 20, '122/80': 21, '142/92': 22, '140/95': 23, '139/91': 24, '118/75': 25, } model = joblib.load('rf_n1.joblib') unique_values = joblib.load('unique_values_n1.joblib') unique_Gender = unique_values["Gender"] unique_occupation = unique_values["Occupation"] unique_ฺBMI = unique_values["BMI Category"] unique_Blood = unique_values["Blood Pressure"] def main(): st.title("Sleeping Health") with st.form("questionaire"): Gender = st.selectbox("Gender", unique_Gender) age = st.slider("Age", min_value=27, max_value=59) occupation = st.selectbox("Occupation", unique_occupation) Sleep_Duration = st.slider("Sleep Duration", min_value=5.8, max_value=8.5) Quality_of_Sleep = st.slider("Quality of Sleep", min_value=1, max_value=10) Physical_Activity_Level = st.slider("Physical Activity Level", min_value=30, max_value=90) Stress_Level= st.slider("Stress Level", min_value=1, max_value=10) BMI_Category = st.selectbox("RMI Category", unique_ฺBMI) Blood_Pressure = st.selectbox("Blood Pressure", unique_Blood) Heart_Rate = st.slider("Heart Rate", min_value=65, max_value=86) Daily_Steps = st.slider("Daily Steps", min_value=3000, max_value=10000) clicked = st.form_submit_button("Predict Sleep Health") if clicked: result=model.predict(pd.DataFrame({"Gender": [Gender], "Age": [age], "Occupation": [occupation], "Sleep Duration": [Sleep_Duration], "Quality of Sleep": [Quality_of_Sleep], "Physical Activity Level": [Physical_Activity_Level], "Stress Level":[Stress_Level], "BMI Category": [BMI_Category], "Blood Pressure": [Blood_DICT[Blood_Pressure]], "Heart Rate": [Heart_Rate], "Daily Steps": [Daily_Steps] })) if result[0] == 1: result_message = "None" elif result[0] == 2: result_message = "Sleep Apnea" elif result[0] == 3: result_message = "Insomnia" st.success(result_message) if __name__=='__main__': main()