Skip to content

Commit 54547c5

Browse files
committed
FIX issue #220, sort dictionaries in flows
1 parent 512c07a commit 54547c5

1 file changed

Lines changed: 4 additions & 1 deletion

File tree

openml/flows/sklearn_converter.py

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -49,6 +49,9 @@ def sklearn_to_flow(o, parent_model=None):
4949
rval = o
5050
elif isinstance(o, dict):
5151
# TODO: explain what type of parameter is here
52+
if not isinstance(o, OrderedDict):
53+
o = OrderedDict([(key, value) for key, value in sorted(o.items())])
54+
5255
rval = OrderedDict()
5356
for key, value in o.items():
5457
if not isinstance(key, six.string_types):
@@ -133,7 +136,7 @@ def flow_to_sklearn(o, **kwargs):
133136
else:
134137
rval = OrderedDict((flow_to_sklearn(key, **kwargs),
135138
flow_to_sklearn(value, **kwargs))
136-
for key, value in o.items())
139+
for key, value in sorted(o.items()))
137140
elif isinstance(o, (list, tuple)):
138141
rval = [flow_to_sklearn(element, **kwargs) for element in o]
139142
if isinstance(o, tuple):

0 commit comments

Comments
 (0)