omaralaa2004's picture
Create app.py
fad5fb3 verified
import joblib
import pandas as pd
import gradio as gr
# Load model
model = joblib.load("stroke_rf_model.pkl")
# Define prediction function
def predict_stroke(age, hypertension, heart_disease, glucose_level, bmi):
data = {
'age': [age],
'hypertension': [hypertension],
'heart_disease': [heart_disease],
'avg_glucose_level': [glucose_level],
'bmi': [bmi]
}
df = pd.DataFrame(data)
prediction = model.predict(df)
return "Stroke Risk" if prediction[0] == 1 else "No Stroke Risk"
# Create Gradio Interface
iface = gr.Interface(
fn=predict_stroke,
inputs=[
gr.Number(label="Age"),
gr.Radio(choices=[0, 1], label="Hypertension (0=No, 1=Yes)"),
gr.Radio(choices=[0, 1], label="Heart Disease (0=No, 1=Yes)"),
gr.Number(label="Average Glucose Level"),
gr.Number(label="BMI")
],
outputs="text",
title="Stroke Prediction Model",
description="Predict stroke risk based on health metrics."
)
# Launch the app
iface.launch()