diff --git a/pandas/core/generic.py b/pandas/core/generic.py index 8eb6c858c0b29..212e2bad563b6 100644 --- a/pandas/core/generic.py +++ b/pandas/core/generic.py @@ -560,6 +560,9 @@ def __nonzero__(self): __bool__ = __nonzero__ + def __abs__(self): + return self.abs() + #---------------------------------------------------------------------- # Array Interface diff --git a/pandas/tests/test_frame.py b/pandas/tests/test_frame.py index f9756858b5d85..723810a19d140 100644 --- a/pandas/tests/test_frame.py +++ b/pandas/tests/test_frame.py @@ -3234,9 +3234,11 @@ def test_operators_timedelta64(self): # abs result = diffs.abs() + result2 = abs(diffs) expected = DataFrame(dict(A = df['A']-df['C'], B = df['B']-df['A'])) assert_frame_equal(result,expected) + assert_frame_equal(result2, expected) # mixed frame mixed = diffs.copy() diff --git a/pandas/tests/test_panel.py b/pandas/tests/test_panel.py index 938025c450258..fc86a78ea684b 100644 --- a/pandas/tests/test_panel.py +++ b/pandas/tests/test_panel.py @@ -355,18 +355,24 @@ def test_get_value(self): def test_abs(self): result = self.panel.abs() + result2 = abs(self.panel) expected = np.abs(self.panel) self.assert_panel_equal(result, expected) + self.assert_panel_equal(result2, expected) df = self.panel['ItemA'] result = df.abs() + result2 = abs(df) expected = np.abs(df) assert_frame_equal(result, expected) + assert_frame_equal(result2, expected) s = df['A'] result = s.abs() + result2 = abs(s) expected = np.abs(s) assert_series_equal(result, expected) + assert_series_equal(result2, expected) class CheckIndexing(object):