File size: 1,324 Bytes
86c3df3
 
a30e579
86c3df3
a30e579
86c3df3
 
a30e579
86c3df3
a30e579
86c3df3
a30e579
86c3df3
a30e579
86c3df3
a30e579
86c3df3
a30e579
86c3df3
a30e579
86c3df3
a30e579
86c3df3
a30e579
 
 
 
86c3df3
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
a30e579
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
import numpy as np
import gradio as gr
import spaces

@spaces.GPU  # Decorate the function to utilize GPU
def ovarian(Shadow, Solid, Menopause, CA125):
    if Shadow == "Yes":
        Shadow = 1
    else:
        Shadow = 0
    if Solid == "Yes":
        Solid = 1
    else:
        Solid = 0
    if Menopause == "Yes":
        Menopause = 1
    else:
        Menopause = 0
    if CA125 == "Yes":
        CA125 = 1
    else:
        CA125 = 0
    
    logit_P = -3.771109 - 2.293585 * Shadow + 3.877268 * Solid + 1.76309 * Menopause + 1.320551 * CA125
    e_logit_P = np.exp(logit_P)
    prob = e_logit_P / (1 + e_logit_P) * 100
    return "Risk of Ovarian cancer in this patient : \n" + str('%.3f' % (prob)) + " %" + "\n[Following up on the Predictive Model for Ovarian Cancer.]"

demo = gr.Interface(
    ovarian,
    [
        gr.Radio(["Yes", "No"]),
        gr.Radio(["Yes", "No"]),
        gr.Radio(["Yes", "No"]),
        gr.Radio(["Yes", "No"])
    ],
    "text",
    examples=[
        ["Yes", "Yes", "Yes", "No"],
    ],
    title="Predictive model of Ovarian cancer",
    description="Here is a predictive model for ovarian cancer. Choose any four of the risk factors listed below for your patient. This model allows you to calculate the risk of ovarian cancer based on these selected factors.",
)

demo.launch()