Skip to content

Commit 09325b1

Browse files
committed
bugfixes
1 parent cb33c29 commit 09325b1

3 files changed

Lines changed: 12 additions & 6 deletions

File tree

openml/evaluations/evaluation.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22
class OpenMLEvaluation(object):
33

44
def __init__(self, run_id, task_id, setup_id, flow_id, flow_name,
5-
data_name, function, upload_time, value, array_data):
5+
data_name, function, upload_time, value, array_data=None):
66
self.run_id = run_id
77
self.task_id = task_id
88
self.setup_id = setup_id

openml/evaluations/functions.py

Lines changed: 8 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@
66
def list_evaluations(function, task_id):
77
"""Helper function to parse API calls which are lists of runs"""
88

9-
xml_string = _perform_api_call("evaluation/list/function/%s/task_id/%d" %(function, task_id))
9+
xml_string = _perform_api_call("evaluation/list/function/%s/task/%d" %(function, task_id))
1010

1111
evals_dict = xmltodict.parse(xml_string)
1212
# Minimalistic check if the XML is useful
@@ -24,11 +24,15 @@ def list_evaluations(function, task_id):
2424
evals = dict()
2525
for eval_ in evals_list:
2626
run_id = int(eval_['oml:run_id'])
27-
evaluation = OpenMLEvaluation(int(eval_['oml:run_id']), int(eval_['task_id']),
27+
array_data = None
28+
if 'oml:array_data' in eval_:
29+
eval_['oml:array_data']
30+
31+
evaluation = OpenMLEvaluation(int(eval_['oml:run_id']), int(eval_['oml:task_id']),
2832
int(eval_['oml:setup_id']), int(eval_['oml:flow_id']),
2933
eval_['oml:flow_name'], eval_['oml:data_name'],
3034
eval_['oml:function'], eval_['oml:upload_time'],
31-
float(eval_['oml:value']), eval_['oml:array_data'])
35+
float(eval_['oml:value']), array_data)
3236
evals[run_id] = evaluation
33-
return evaluation
37+
return evals
3438

tests/test_evaluations/test_evaluation_functions.py

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,9 @@ class TestEvaluationFunctions(TestBase):
88
def test_evaluation_list(self):
99
openml.config.server = self.production_server
1010

11-
res = openml.evaluations.list_evaluations("predictive_accuracy", 59)
11+
task_id = 7312
12+
13+
res = openml.evaluations.list_evaluations("predictive_accuracy", task_id)
1214

1315
self.assertGreater(len(res), 100)
1416

0 commit comments

Comments
 (0)