diff --git a/src/cr/cube/cubepart.py b/src/cr/cube/cubepart.py
index <HASH>..<HASH> 100644
--- a/src/cr/cube/cubepart.py
+++ b/src/cr/cube/cubepart.py
@@ -1572,6 +1572,8 @@ class _Nub(CubePartition):
 
     @lazyproperty
     def is_empty(self):
+        if self.unweighted_count <= 0:
+            return True
         return math.isnan(self.unweighted_count)
 
     @lazyproperty
diff --git a/tests/unit/test_cubepart.py b/tests/unit/test_cubepart.py
index <HASH>..<HASH> 100644
--- a/tests/unit/test_cubepart.py
+++ b/tests/unit/test_cubepart.py
@@ -538,7 +538,8 @@ class Describe_Nub(object):
     """Unit test suite for `cr.cube.cubepart._Nub` object."""
 
     @pytest.mark.parametrize(
-        "unweighted_count, expected_value", ((float("NaN"), True), (45.4, False))
+        "unweighted_count, expected_value",
+        ((float("NaN"), True), (45.4, False), (0.0, True)),
     )
     def it_knows_when_it_is_empty(self, request, unweighted_count, expected_value):
         property_mock(request, _Nub, "unweighted_count", return_value=unweighted_count)
fix is_empty in _Nub checks even for <I>