diff --git a/thunder/series/readers.py b/thunder/series/readers.py
index <HASH>..<HASH> 100644
--- a/thunder/series/readers.py
+++ b/thunder/series/readers.py
@@ -50,7 +50,10 @@ def fromrdd(rdd, nrecords=None, shape=None, index=None, labels=None, dtype=None)
     if dtype is None:
         dtype = item.dtype
 
-    if shape is None or nrecords is None:
+    if nrecords is None and shape is not None:
+        nrecords = prod(shape[:-1])
+
+    if nrecords is None:
         nrecords = rdd.count()
 
     if shape is None:
allows series.fromrdd to infer npartitions from shape