Spaces:
Runtime error
Runtime error
import gradio as gr | |
import pycaret | |
from pycaret.classification import * | |
import pandas as pd | |
healthcare_stroke_data = pd.read_csv("healthcare-dataset-stroke-data.csv") | |
modelvalue= setup(data = healthcare_stroke_data, target = 'stroke', normalize = True, normalize_method = 'zscore', transformation=True, fix_imbalance = True, session_id=123, fold = 60, remove_outliers= True, outliers_threshold = 0.05, remove_multicollinearity=True, multicollinearity_threshold = 0.9) | |
best = compare_models(sort = 'AUC', n_select = 15) | |
compare_model_results = pull() | |
def predict(model, gender, age, hypertension, heart_disease, ever_married, work_type, Residence_type, avg_glucose_level, bmi, smoking_status): | |
df = pd.DataFrame.from_dict({'gender': [gender], 'age': [age], 'hypertension': [hypertension], 'heart_disease':[heart_disease], 'ever_married':[ever_married], | |
'work_type': [work_type], 'Residence_type': [Residence_type], 'avg_glucose_level': [avg_glucose_level], 'bmi':[bmi],'smoking_status':[smoking_status]}) | |
model_index = list(compare_model_results['Model']).index(model) | |
model = best[model_index] | |
pred = predict_model(model, df, raw_score=True) | |
return {'Yes': pred['Score_Yes'][0].astype('float64'), | |
'No': pred['Score_No'][0].astype('float64' )} | |
model = gr.inputs.Dropdown(list(compare_model_results['Model']),label="Model") | |
gender = gr.inputs.Dropdown(choices=["Male", "Female"],label = 'gender') | |
age = gr.inputs.Slider(minimum=1, maximum=100, default=data['age'].mean(), label = 'age') | |
hypertension = gr.inputs.Dropdown(choices=["1", "0"],label = 'hypertension') | |
heart_disease = gr.inputs.Dropdown(choices=["1", "0"],label ='heart_disease') | |
ever_married = gr.inputs.Dropdown(choices=["Yes", "No"], label ='ever_married') | |
work_type = gr.inputs.Dropdown(choices=["children", "Govt_job","Never_worked","Private","Self-employed"],label = 'work_type') | |
Residence_type = gr.inputs.Dropdown(choices=["Urban", "Rural"],label = 'Residence_type') | |
avg_glucose_level = gr.inputs.Slider(minimum=-55, maximum=300, default=data['avg_glucose_level'].mean(), label = 'avg_glucose_level') | |
bmi = gr.inputs.Slider(minimum=-10, maximum=100, default=data['bmi'].mean(), label = 'bmi') | |
smoking_status = gr.inputs.Dropdown(choices=["Unknown", "smokes","never_smoked", "formerly_smoked"], label ='smoking_status') | |
gr.Interface(predict,[model, gender, age, hypertension, heart_disease, ever_married, work_type, Residence_type, avg_glucose_level, bmi, smoking_status], "label",live=True).launch() | |