Skip to content

Commit 1427b69

Browse files
author
Rylie Weaver
committed
fix parsing for optional sigma
1 parent 581ec2e commit 1427b69

File tree

1 file changed

+30
-30
lines changed

1 file changed

+30
-30
lines changed

workflows/common/python/ga_utils.py

Lines changed: 30 additions & 30 deletions
Original file line numberDiff line numberDiff line change
@@ -40,47 +40,47 @@ def is_number(s):
4040
return False
4141

4242
# Create parameters from JSON file (main functionality)
43-
def create_parameters(param_file, ignore_sigma=False):
43+
def create_parameters(param_file):
4444
with open(param_file) as json_file:
4545
data = json.load(json_file)
4646

4747
params = []
4848
for item in data:
4949
name = item["name"]
50-
t = item["type"]
51-
if ignore_sigma:
52-
sigma = float("nan")
53-
if t == "int" or t == "float":
54-
lower = item["lower"]
55-
upper = item["upper"]
56-
if not ignore_sigma:
57-
sigma = item["sigma"]
58-
59-
if t == "int":
60-
params.append(
61-
IntParameter(name, int(lower), int(upper), int(sigma)))
62-
else:
63-
params.append(
64-
FloatParameter(name, float(lower), float(upper),
65-
float(sigma)))
50+
type = item["type"]
51+
52+
if type == "int":
53+
lower = int(item["lower"])
54+
upper = int(item["upper"])
55+
# Allow for optional sigma
56+
sigma = None if "sigma" not in item else int(item["sigma"])
57+
params.append(IntParameter(name, lower, upper, sigma))
58+
59+
elif type == "float":
60+
lower = float(item["lower"])
61+
upper = float(item["upper"])
62+
# Allow for optional sigma
63+
sigma = None if "sigma" not in item else float(item["sigma"])
64+
params.append(FloatParameter(name, lower, upper, sigma))
65+
66+
elif type == "categorical":
67+
values = item["values"]
68+
element_type = item["element_type"]
69+
params.append(CategoricalParameter(name, values, element_type))
6670

67-
elif t == "categorical":
68-
vs = item["values"]
71+
elif type == "ordered":
72+
values = item["values"]
6973
element_type = item["element_type"]
70-
params.append(CategoricalParameter(name, vs, element_type))
74+
# Allow for optional sigma
75+
sigma = None if "sigma" not in item else item["sigma"]
76+
params.append(OrderedParameter(name, values, sigma, element_type))
7177

72-
elif t == "logical":
78+
elif type == "logical":
7379
params.append(LogicalParameter(name))
7480

75-
elif t == "ordered":
76-
vs = item["values"]
77-
if not ignore_sigma:
78-
sigma = item["sigma"]
79-
element_type = item["element_type"]
80-
params.append(OrderedParameter(name, vs, sigma, element_type))
81-
elif t == "constant":
82-
vs = item["value"]
83-
params.append(ConstantParameter(name, vs))
81+
elif type == "constant":
82+
values = item["value"]
83+
params.append(ConstantParameter(name, values))
8484

8585
return params
8686

0 commit comments

Comments
 (0)