Spaces:
Build error
Build error
| import streamlit as st | |
| from joblib import load | |
| # Load the trained Random Forest model | |
| model = load('random_forest_pipeline.joblib') | |
| # Create the UI for input | |
| st.title("Clinical Outcome Predictor") | |
| st.write("Enter the clinical parameters to predict 1-year mortality.") | |
| age = st.number_input("Age", min_value=0, max_value=120, step=1) | |
| sex = st.selectbox("Sex", ["male", "female"]) | |
| race = st.selectbox("Race", ["black", "white", "other"]) | |
| etiology = st.selectbox("Etiology", ["alcohol", "alcohol+hcv", "hcv", "other"]) | |
| hepatorenal_syndrome = st.selectbox("Hepatorenal Syndrome", ["yes", "no"]) | |
| omeprazole = st.selectbox("Omeprazole", ["yes", "no"]) | |
| spironolactone = st.selectbox("Spironolactone", ["yes", "no"]) | |
| furosemide = st.selectbox("Furosemide", ["yes", "no"]) | |
| propanolol = st.selectbox("Propanolol", ["yes", "no"]) | |
| dialisis = st.selectbox("Dialisis", ["yes", "no"]) | |
| portal_vein_thrombosis = st.selectbox("Portal Vein Thrombosis", ["yes", "no"]) | |
| ascitis = st.selectbox("Ascitis", ["yes", "no"]) | |
| hepatocellular_carcinoma = st.selectbox("Hepatocellular Carcinoma", ["yes", "no"]) | |
| albumin = st.number_input("Albumin", format="%.2f") | |
| total_bilirrubin = st.number_input("Total Bilirrubin", format="%.2f") | |
| direct_bilirrubina = st.number_input("Direct Bilirrubin", format="%.2f") | |
| inr = st.number_input("INR", format="%.2f") | |
| creatinine = st.number_input("Creatinine", format="%.2f") | |
| platelets = st.number_input("Platelets", format="%.2f") | |
| ast = st.number_input("AST", format="%.2f") | |
| alt = st.number_input("ALT", format="%.2f") | |
| hemoglobin = st.number_input("Hemoglobin", format="%.2f") | |
| hematocrit = st.number_input("Hematocrit", format="%.2f") | |
| leucocytes = st.number_input("Leucocytes", format="%.2f") | |
| sodium = st.number_input("Sodium", format="%.2f") | |
| potassium = st.number_input("Potassium", format="%.2f") | |
| varices = st.selectbox("Varices", ["yes", "no"]) | |
| red_wale_marks = st.selectbox("Red Wale Marks", ["yes", "no"]) | |
| rupture_point = st.selectbox("Rupture Point", ["yes", "no"]) | |
| active_bleeding = st.selectbox("Active Bleeding", ["yes", "no"]) | |
| therapy = st.selectbox("Therapy", ["Banding", "no therapy", "Other"]) | |
| terlipressin_dose = st.number_input("Terlipressin Dose", min_value=0, step=1) | |
| # Button to predict | |
| if st.button('Predict'): | |
| inputs = [age, sex, race, etiology, hepatorenal_syndrome, omeprazole, spironolactone, furosemide, propanolol, dialisis, portal_vein_thrombosis, ascitis, hepatocellular_carcinoma, albumin, total_bilirrubin, direct_bilirrubina, inr, creatinine, platelets, ast, alt, hemoglobin, hematocrit, leucocytes, sodium, potassium, varices, red_wale_marks, rupture_point, active_bleeding, therapy, terlipressin_dose] | |
| prediction = model.predict([inputs])[0] | |
| st.write('1-Year Death Risk: {}'.format('High Risk' if prediction == 1 else 'No Risk')) |