Skip to content

Commit 9075452

Browse files
author
y-p
committed
Merge branch 'GH2803'
* GH2803: BUG: SparseSeries.density shouldn't die GH2803 TST: SparseSeries.density shouldn't die
2 parents 516c99e + 279329b commit 9075452

File tree

2 files changed

+10
-1
lines changed

2 files changed

+10
-1
lines changed

pandas/sparse/series.py

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -378,7 +378,8 @@ def to_dense(self, sparse_only=False):
378378

379379
@property
380380
def density(self):
381-
return float(len(self.sp_index)) / len(self.index)
381+
r = float(self.sp_index.npoints) / float(self.sp_index.length)
382+
return r
382383

383384
def astype(self, dtype=None):
384385
"""

pandas/sparse/tests/test_sparse.py

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -156,6 +156,14 @@ def test_construct_DataFrame_with_sp_series(self):
156156
# it works!
157157
df = DataFrame({'col': self.bseries})
158158

159+
def test_series_density(self):
160+
# GH2803
161+
ts = Series(np.random.randn(10))
162+
ts[2:-2] = nan
163+
sts = ts.to_sparse()
164+
density = sts.density # don't die
165+
self.assertEqual(density,4/10.0)
166+
159167
def test_sparse_to_dense(self):
160168
arr, index = _test_data1()
161169
series = self.bseries.to_dense()

0 commit comments

Comments
 (0)