diff --git a/scikits/learn/datasets/samples_generator.py b/scikits/learn/datasets/samples_generator.py
index 61ed5f524e74add3109bca875b758096f7485aa6..05af562ede9e1865826b42be08a58f6bb2e83f97 100644
--- a/scikits/learn/datasets/samples_generator.py
+++ b/scikits/learn/datasets/samples_generator.py
@@ -233,8 +233,8 @@ def low_rank_fat_tail(n_samples=100, n_features=100, effective_rank=10,
     n = min(n_samples, n_features)
 
     # random (ortho normal) vectors
-    u = linalg.qr(random.randn(n_samples, n))[0][:, :n]
-    v = linalg.qr(random.randn(n_features, n))[0][:, :n].T
+    u = linalg.qr(random.randn(n_samples, n), econ=True)[0]
+    v = linalg.qr(random.randn(n_features, n), econ=True)[0].T
 
     # index of the singular values
     i = np.arange(n, dtype=np.float64)