-
Notifications
You must be signed in to change notification settings - Fork 1
Expand file tree
/
Copy pathapp.py
More file actions
95 lines (91 loc) · 2.09 KB
/
app.py
File metadata and controls
95 lines (91 loc) · 2.09 KB
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
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
import pickle
import gradio as gr
import numpy as np
import pandas as pd
import tensorflow as tf
from imblearn.over_sampling import RandomOverSampler
from sklearn.linear_model import LogisticRegression
from sklearn.metrics import classification_report
from sklearn.model_selection import train_test_split
from sklearn.naive_bayes import GaussianNB
from sklearn.preprocessing import StandardScaler
from tensorflow.keras.models import load_model
def greet(
gender,
age,
smoking,
pp,
allergy,
wheezing,
alcohol,
cp,
bp,
sugar,
bu,
na,
k,
hb,
rbc,
wbc,
htn,
appet,
ane,
hd,
bmi,
chol,
ca,
thal,
insulin,
):
with open("nvd.pkl", "rb") as f:
nvd = pickle.load(f)
with open("kcd.pkl", "rb") as f:
kcd = pickle.load(f)
with open("mp.pkl", "rb") as f:
mp = pickle.load(f)
with open("osp.pkl", "rb") as f:
osp = pickle.load(f)
with open("sk.pkl", "rb") as f:
sk = pickle.load(f)
lung = nvd.predict(
np.array([[gender, age, smoking, pp, allergy, wheezing, alcohol, cp]])
)
kid = kcd.predict(
np.array([[age, bp, sugar, bu, na, k, hb, wbc, rbc, htn, appet, ane]])
)
bra = mp.predict(np.array([[gender, age, htn, hd, sugar, bmi, smoking]]))
hrt = osp.predict(np.array([[age, gender, cp, chol, ca, thal]]))
dia = sk.predict(np.array([[sugar, bp, insulin, bmi, age]]))
return [str(lung[0]), str(kid[0]), str(bra[0]), str(hrt[0]), str(dia[0])]
iface = gr.Interface(
fn=greet,
inputs=[
"number",
"number",
"number",
"number",
"number",
"number",
"number",
"number",
"number",
"number",
"number",
"number",
"number",
"number",
"number",
"number",
"number",
"number",
"number",
"number",
"number",
"number",
"number",
"number",
"number",
],
outputs=["number", "number", "number", "number", "number"],
)
iface.launch(share=True)