Spaces:
Sleeping
Sleeping
File size: 1,814 Bytes
5ba7450 ffcbdcb 5ba7450 | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 | import numpy as np
import gradio as gr
import pickle
from sklearn.preprocessing import normalize
model = pickle.load(open("model.pkl", 'rb'))
def predict(Age, CigsPerDay, Cholestrol, SysBP, DIaBP, BMI, HeartRate, GlucoseLevel, Gender, BpMedication, PrevalentStroke, Smoker):
'''
For making predictions
'''
list_to_be_normalised = np.array([Age, CigsPerDay, Cholestrol, SysBP, DIaBP, BMI, HeartRate, GlucoseLevel]).reshape(1, -1)
normalized = normalize(list_to_be_normalised)
boolean = [Gender, BpMedication, PrevalentStroke, Smoker]
final_features = np.append(normalized, boolean).reshape(1, -1)
prediction = model.predict(final_features)
if prediction == 1:
return "problem"
else:
return "healthy"
iface = gr.Interface(
fn=predict,
inputs=[
gr.inputs.Number(label="Age (Enter Age)", default=40),
gr.inputs.Number(label="CigsPerDay (Enter Cigarettes Per Day)", default=10),
gr.inputs.Number(label="Cholesterol (Enter Cholesterol Level)", default=200),
gr.inputs.Number(label="SysBP (Enter Systolic Blood Pressure)", default=120),
gr.inputs.Number(label="DIaBP (Enter Diastolic Blood Pressure)", default=80),
gr.inputs.Number(label="BMI (Enter Body Mass Index)", default=25),
gr.inputs.Number(label="HeartRate (Enter Heart Rate)", default=70),
gr.inputs.Number(label="GlucoseLevel (Enter Glucose Level)", default=100),
gr.inputs.Checkbox(label="Gender (Select Gender)"),
gr.inputs.Checkbox(label="BpMedication (Select Blood Pressure Medication)"),
gr.inputs.Checkbox(label="PrevalentStroke (Select Prevalent Stroke)"),
gr.inputs.Checkbox(label="Smoker (Select Smoker)"),
],
outputs=gr.outputs.Textbox(label="Prediction"),
)
iface.launch() |