diff --git a/pandas/core/series.py b/pandas/core/series.py index e807cf3f1dfd4..a04e931cf07e3 100644 --- a/pandas/core/series.py +++ b/pandas/core/series.py @@ -2012,7 +2012,7 @@ def dot(self, other): Parameters ---------- - other : Series or DataFrame + other : Series or DataFrame Returns ------- @@ -2194,7 +2194,7 @@ def update(self, other): #---------------------------------------------------------------------- # Reindexing, sorting - def sort(self, axis=0, kind='quicksort', order=None): + def sort(self, axis=0, kind='quicksort', order=None, ascending=True): """ Sort values and index labels by value, in place. For compatibility with ndarray API. No return value @@ -2206,8 +2206,15 @@ def sort(self, axis=0, kind='quicksort', order=None): Choice of sorting algorithm. See np.sort for more information. 'mergesort' is the only stable algorithm order : ignored + ascending : boolean, default True + Sort ascending. Passing False sorts descending + + See Also + -------- + pandas.Series.order """ - sortedSeries = self.order(na_last=True, kind=kind) + sortedSeries = self.order(na_last=True, kind=kind, + ascending=ascending) true_base = self while true_base.base is not None: diff --git a/pandas/tests/test_series.py b/pandas/tests/test_series.py index b988f2985877a..288d26eefce87 100644 --- a/pandas/tests/test_series.py +++ b/pandas/tests/test_series.py @@ -475,7 +475,7 @@ def test_constructor_dtype_datetime64(self): np.datetime64(datetime(2013, 1, 2)), np.datetime64(datetime(2013, 1, 3)), ] - + s = Series(dates) self.assert_(s.dtype == 'M8[ns]') @@ -1162,7 +1162,7 @@ def test_where(self): s = Series(np.arange(10), dtype=dtype) mask = s < 5 values = [2.5,3.5,4.5,5.5,6.5] - s[mask] = values + s[mask] = values expected = Series(values + range(5,10), dtype='float64') assert_series_equal(s, expected) self.assertEquals(s.dtype, expected.dtype) @@ -2591,7 +2591,7 @@ def test_dot(self): expected = Series(np.dot(a.values, b.values), index=['1', '2', '3']) assert_series_equal(result, expected) - + #Check index alignment b2 = b.reindex(index=reversed(b.index)) result = a.dot(b) @@ -2723,6 +2723,11 @@ def test_sort(self): self.assert_(np.array_equal(ts, self.ts.order())) self.assert_(np.array_equal(ts.index, self.ts.order().index)) + ts.sort(ascending=False) + self.assert_(np.array_equal(ts, self.ts.order(ascending=False))) + self.assert_(np.array_equal(ts.index, + self.ts.order(ascending=False).index)) + def test_sort_index(self): import random