Skip to content

Commit b66dda8

Browse files
committed
BUG: SparseSeries.abs() resets name
1 parent 2709f77 commit b66dda8

File tree

4 files changed

+19
-2
lines changed

4 files changed

+19
-2
lines changed

doc/source/whatsnew/v0.17.0.txt

+1-1
Original file line numberDiff line numberDiff line change
@@ -83,7 +83,7 @@ Bug Fixes
8383
- Bug in `plot` not defaulting to matplotlib `axes.grid` setting (:issue:`9792`)
8484

8585
- Bug in ``Series.align`` resets ``name`` when ``fill_value`` is specified (:issue:`10067`)
86-
86+
- Bug in ``SparseSeries.abs`` resets ``name`` (:issue:`10241`)
8787

8888

8989
- Bug in GroupBy.get_group raises ValueError when group key contains NaT (:issue:`6992`)

pandas/sparse/series.py

+1-1
Original file line numberDiff line numberDiff line change
@@ -399,7 +399,7 @@ def abs(self):
399399
res_sp_values = np.abs(self.sp_values)
400400
return self._constructor(res_sp_values, index=self.index,
401401
sparse_index=self.sp_index,
402-
fill_value=self.fill_value)
402+
fill_value=self.fill_value).__finalize__(self)
403403

404404
def get(self, label, default=None):
405405
"""

pandas/sparse/tests/test_sparse.py

+15
Original file line numberDiff line numberDiff line change
@@ -509,6 +509,21 @@ def _check_inplace_op(iop, op):
509509
_check_inplace_op(
510510
getattr(operator, "i%s" % op), getattr(operator, op))
511511

512+
def test_abs(self):
513+
s = SparseSeries([1, 2, -3], name='x')
514+
expected = SparseSeries([1, 2, 3], name='x')
515+
result = s.abs()
516+
assert_sp_series_equal(result, expected)
517+
self.assertEqual(result.name, 'x')
518+
519+
result = abs(s)
520+
assert_sp_series_equal(result, expected)
521+
self.assertEqual(result.name, 'x')
522+
523+
result = np.abs(s)
524+
assert_sp_series_equal(result, expected)
525+
self.assertEqual(result.name, 'x')
526+
512527
def test_reindex(self):
513528
def _compare_with_series(sps, new_index):
514529
spsre = sps.reindex(new_index)

pandas/tests/test_panel.py

+2
Original file line numberDiff line numberDiff line change
@@ -404,6 +404,8 @@ def test_abs(self):
404404
expected = np.abs(s)
405405
assert_series_equal(result, expected)
406406
assert_series_equal(result2, expected)
407+
self.assertEqual(result.name, 'A')
408+
self.assertEqual(result2.name, 'A')
407409

408410

409411
class CheckIndexing(object):

0 commit comments

Comments
 (0)