diff --git a/Orange/data/tests/test_variable.py b/Orange/data/tests/test_variable.py index 4021acafcd4..efb35106f51 100644 --- a/Orange/data/tests/test_variable.py +++ b/Orange/data/tests/test_variable.py @@ -634,6 +634,8 @@ def test_val(self): self.assertEqual(a.str_val(""), "?") self.assertEqual(a.str_val(Value(a, "")), "?") self.assertEqual(a.repr_val(Value(a, "foo")), '"foo"') + self.assertEqual(a.str_val(np.nan), "?") + self.assertEqual(a.str_val(None), "?") @variabletest(TimeVariable) diff --git a/Orange/data/variable.py b/Orange/data/variable.py index 100b34b7e9c..a82f73af5f6 100644 --- a/Orange/data/variable.py +++ b/Orange/data/variable.py @@ -10,6 +10,7 @@ from pickle import PickleError import numpy as np +import pandas import scipy.sparse as sp from Orange.data import _variable @@ -905,6 +906,8 @@ def str_val(val): if not val.value: return "?" val = val.value + if pandas.isnull(val): + return "?" return str(val) def repr_val(self, val):