Spaces:
Runtime error
Runtime error
import joblib | |
import pandas as pd | |
import streamlit as st | |
model = joblib.load('model.joblib') | |
unique_values = joblib.load('unique_values.joblib') | |
unique_anaemia = unique_values["anaemia"] | |
unique_diabetes = unique_values["diabetes"] | |
unique_high_blood_pressure = unique_values["high_blood_pressure"] | |
unique_sex = unique_values["sex"] | |
unique_smoking = unique_values["smoking"] | |
def main(): | |
st.title("Predict death rates from heart failure") | |
with st.form("questionaire"): | |
age = st.slider("Age", min_value=10, max_value=100) | |
anaemia = st.selectbox("anaemia", options=unique_anaemia) | |
creatinine_phosphokinase = st.slider("creatinine_phosphokinase (mcg/L)", min_value=10, max_value=120) | |
diabetes = st.selectbox("diabetes", options=unique_diabetes) | |
ejection_fraction = st.slider("ejection_fraction (percentage)", min_value=0, max_value=100) | |
high_blood_pressure = st.selectbox("high_blood_pressure", options=unique_high_blood_pressure) | |
platelets = st.slider("platelets (kiloplatelets/mL)", min_value=150000, max_value=300000) | |
serum_creatinine = st.slider("serum_creatinine (mg/dL)", min_value=0, max_value=3, step=float) | |
serum_sodium = st.slider("serum_sodium (mEq/L)", min_value=100, max_value=150) | |
sex = st.selectbox("sex", options=unique_sex) | |
smoking = st.selectbox("smoking", options=unique_smoking) | |
time = st.slider("time: follow-up period (days)", min_value=0, max_value=300) | |
# clicked==True only when the button is clicked | |
clicked = st.form_submit_button("Predict death rates") | |
if clicked: | |
result=model.predict(pd.DataFrame({"age": [age], | |
"anaemia": [anaemia], | |
"creatinine_phosphokinase": [creatinine_phosphokinase], | |
"diabetes": [diabetes], | |
"ejection_fraction": [ejection_fraction], | |
"high_blood_pressure": [high_blood_pressure], | |
"platelets": [platelets], | |
"serum_creatinine": [serum_creatinine], | |
"serum_sodium": [serum_sodium], | |
"sex": [sex], | |
"smoking": [smoking], | |
"time": [time]})) | |
# Show prediction | |
result = 'DEATH' if result[0] == 1 else 'NO DEATH' | |
st.success("Your prediction death rates is ", result) | |
# Run main() | |
if __name__ == "__main__": | |
main() | |