cibele.goudinho.ext commited on
Commit
4b2bf9e
·
1 Parent(s): 6243f3b

init commit

Browse files
Files changed (3) hide show
  1. app.py +49 -0
  2. random_forest_model.joblib +0 -0
  3. requirements.txt +5 -0
app.py ADDED
@@ -0,0 +1,49 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ import gradio as gr
2
+ from joblib import load
3
+ import pandas as pd
4
+
5
+ rf = load('random_forest_model.joblib')
6
+
7
+ def predict(df):
8
+ pred = rf.predict(df)
9
+ return {'LUNG_CANCER': pred[0]}
10
+
11
+ def process_inputs(AGE, GENDER, SMOKING, YELLOW_FINGERS, ANXIETY, PEER_PRESSURE, CHRONIC_DISEASE, WHEEZING, ALCOHOL_CONSUMING, COUGHING, SHORTNESS_OF_BREATH, SWALLOWING_DIFFICULTY, CHEST_PAIN):
12
+ GENDER=GENDER.map({'Female': 0, 'Male': 1})
13
+ SMOKING=SMOKING.map({'Yes': 1, 'No': 0})
14
+ YELLOW_FINGERS=YELLOW_FINGERS.map({'Yes': 1, 'No': 0})
15
+ ANXIETY=ANXIETY.map({'Yes': 1, 'No': 0})
16
+ PEER_PRESSURE=PEER_PRESSURE.map({'Yes': 1, 'No': 0})
17
+ CHRONIC_DISEASE=CHRONIC_DISEASE.map({'Yes': 1, 'No': 0})
18
+ WHEEZING=WHEEZING.map({'Yes': 1, 'No': 0})
19
+ ALCOHOL_CONSUMING=ALCOHOL_CONSUMING.map({'Yes': 1, 'No': 0})
20
+ COUGHING=COUGHING.map({'Yes': 1, 'No': 0})
21
+ SHORTNESS_OF_BREATH=SHORTNESS_OF_BREATH.map({'Yes': 1, 'No': 0})
22
+ SWALLOWING_DIFFICULTY=SWALLOWING_DIFFICULTY.map({'Yes': 1, 'No': 0})
23
+ CHEST_PAIN=CHEST_PAIN.map({'Yes': 1, 'No': 0})
24
+ df = pd.DataFrame(columns=["GENDER", "SMOKING", "YELLOW_FINGERS", "ANXIETY", "PEER_PRESSURE", "CHRONIC_DISEASE", "WHEEZING", "ALCOHOL_CONSUMING", "COUGHING", "SHORTNESS_OF_BREATH", "SWALLOWING_DIFFICULTY", "CHEST_PAIN", "AGE"])
25
+ df.loc[0] = [GENDER, SMOKING, YELLOW_FINGERS, ANXIETY, PEER_PRESSURE, CHRONIC_DISEASE, WHEEZING, ALCOHOL_CONSUMING, COUGHING, SHORTNESS_OF_BREATH, SWALLOWING_DIFFICULTY, CHEST_PAIN, AGE];
26
+ return predict(df)
27
+
28
+ inputs = [
29
+ gr.Number(label="Age"),
30
+ gr.Radio(choices=["Female", "Male"], label="Gender"),
31
+ gr.Radio(choices=["Yes", "No"], label="Smoking"),
32
+ gr.Radio(choices=["Yes", "No"], label="Yellow_fingers"),
33
+ gr.Radio(choices=["Yes", "No"], label="Anxiety"),
34
+ gr.Radio(choices=["Yes", "No"], label="Peer pressure"),
35
+ gr.Radio(choices=["Yes", "No"], label="Chronic_disease"),
36
+ gr.Radio(choices=["Yes", "No"], label="Wheezing"),
37
+ gr.Radio(choices=["Yes", "No"], label="Alcohol_consuming"),
38
+ gr.Radio(choices=["Yes", "No"], label="Coughing"),
39
+ gr.Radio(choices=["Yes", "No"], label="shortness_of_breath"),
40
+ gr.Radio(choices=["Yes", "No"], label="swallowing_difficulty"),
41
+ gr.Radio(choices=["Yes", "No"], label="chest_pain")
42
+ ]
43
+
44
+ output = gr.Label(num_top_classes=1)
45
+
46
+ iface = gr.Interface(fn=process_inputs, inputs=inputs, outputs=output,
47
+ description="O modelo em questão classifica 1 se tiver cancer de pulmão e 0 se não tiver.")
48
+
49
+ iface.launch()
random_forest_model.joblib ADDED
Binary file (226 kB). View file
 
requirements.txt ADDED
@@ -0,0 +1,5 @@
 
 
 
 
 
 
1
+ gradio
2
+ pandas
3
+ numpy
4
+ joblib
5
+ scikit-learn==1.2.2