DIARC / app.py
Zakia's picture
add pandas
aae6493
raw history blame
No virus
2.07 kB
#Bismillahir Rahmaanir Raheem
#Almadadh Ya Gause RadiAllahu Ta'alah Anh - Ameen
import gradio as gr
import pandas as pd
from pycaret.classification import load_model, predict_model
# load the trained model for predictions
model = load_model("tuned_blend_specific_model_19112021")
# define the function to call
def predict(model, input_df):
predictions_df = predict_model(estimator=model, data=input_df)
predictions = predictions_df["Amputation"][0]
#input_dict = {"AGE": age, "GENDER_F": gender, "RACE_Asian": ,"RACE_Black": , "RACE_Coloured":, "RACE_Other":, "RACE_White":, "DIABETES_CLASS_Type 1 diabetes":}
input_dict = {"AGE": 70.0, "GENDER_F": 0.0, "RACE_Asian": 1.0, "RACE_Black": 0.0, "RACE_Coloured": 0.0, "RACE_Other": 0.0, "RACE_White": 0.0, "DIABETES_CLASS_Type 1 diabetes":0.0}
input_df = pd.DataFrame([input_dict])
# the parameters in this function, actually gets the inputs for the prediction
def predict_amputation(age, gender, race, diabetes_type):
return "ALLAH"+predict(model=model, input_df=input_df) # calls the predict function when the 'submit' button is clicked
title = "DIabetes-related Amputation Risk Calculator (DIARC)"
description = "A diabetes-related amputation machine learning model trained on the diabetes dataset from the Inkosi Albert Luthuli Central Hospital (IALCH) in Durban, KwaZulu-Natal, South Africa."
iface = gr.Interface(
fn=predict_amputation,
title=title,
description=description,
inputs=[gr.inputs.Slider(minimum=0,maximum=100, step=1, label="Age"), gr.inputs.Dropdown(["Female", "Male"], default="Male", label="Gender"), gr.inputs.Dropdown(["Asian", "Black", "Coloured", "White", "Other"], default="Asian", label="Race"), gr.inputs.Dropdown(["1", "2"], default="1", label="Diabetes Type")],
outputs="text",
theme="darkhuggingface",
examples=[
[50, "Male", "Black", 2],
[76, "Female", "Asian", 2],
[12, "Female", "White", 1],
[30, "Male", "Coloured", 1],
[65, "Female", "Other", 2],
],
)
iface.test_launch()
if __name__ == "__main__":
iface.launch()