silvaKenpachi's picture
Update app.py
b6c250a verified
raw
history blame
1.22 kB
import sklearn
import gradio as gr
import joblib
import pandas as pd
import datasets
pipe = joblib.load("./model.pkl")
title = "Depression Prediction"
description = "This model predicts depression risk. Drag and drop any slice from dataset or edit values as you wish in below dataframe component."
with open("./config.json") as f:
config_dict = eval(f.read())
headers = config_dict["sklearn"]["columns"]
df = datasets.load_dataset("silvaKenpachi/mental_health")
df = df["train"].to_pandas()
df.dropna(axis=0, inplace=True)
feature_columns = [col for col in df.columns if col != 'Premium Amount']
inputs = [gr.Dataframe(headers = headers, row_count = (2, "dynamic"), col_count=(len(headers), "dynamic"), label="Input Data", interactive=1)]
outputs = [gr.Dataframe(row_count = (2, "dynamic"), col_count=(1, "fixed"), label="Predictions", headers=["Premium Amount"])]
def infer(inputs):
data = pd.DataFrame(inputs, columns=headers)
predictions = pipe.predict(inputs)
return pd.DataFrame(predictions, columns=["results"])
gr.Interface(infer, inputs = inputs, outputs = outputs, title = title,
description = description, examples=[df.head(3)], cache_examples=False).launch(debug=True)