-
Notifications
You must be signed in to change notification settings - Fork 0
/
puzzle.py
72 lines (57 loc) · 2.17 KB
/
puzzle.py
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
from gooey import Gooey, GooeyParser
from puzzlebox import PuzzleBox
import os
@Gooey(program_name="Puzzle", image_dir=os.path.abspath(os.getcwd() + '/img'))
def parse_args():
parser = GooeyParser()
parser.add_argument('--model',
metavar="Model",
required=True,
widget="Dropdown",
choices=["dt"],
default="dt")
parser.add_argument("--action",
metavar="Action",
required=True,
widget="Dropdown",
choices=["train", "analyze"],
default="train")
parser.add_argument('--input',
action='store',
widget='FileChooser',
metavar="Input Data")
parser.add_argument('--target',
action='store',
widget='TextField',
metavar="Target Variable")
parser.add_argument('--data',
action='store',
widget='FileChooser',
metavar="Test Data")
parser.add_argument('--model_name',
action='store',
widget='TextField',
metavar="Model Name")
parser.add_argument("--plot",
metavar="Choose a plot type",
required=True,
widget="Dropdown",
choices=["auc", "boundary"],
default="auc")
parsed_args = parser.parse_args()
return parsed_args
if __name__ == '__main__':
args = parse_args()
input_file = args.input
model_name = args.model_name
model = args.model
target = args.target
plot = args.plot
data = args.data
puzzle = PuzzleBox(input_file, model_name)
model = puzzle.create_model(model, target)
plot = puzzle.plot_results(model, plot)
puzzle.evaluate(model)
puzzle.save(model)
model = puzzle.load()
puzzle.predict(model, data)