parameters: (self, axis=0, ascending=True, inplace=False,
                      kind='quicksort', na_position='last')
docstring: Sort by the values.
  
          Sort a Series in ascending or descending order by some
          criterion.
  
          Parameters
          ----------
          axis : {0 or 'index'}, default 0
              Axis to direct sorting. The value 'index' is accepted for
              compatibility with DataFrame.sort_values.
          ascending : bool, default True
              If True, sort values in ascending order, otherwise descending.
          inplace : bool, default False
              If True, perform operation in-place.
          kind : {'quicksort', 'mergesort' or 'heapsort'}, default 'quicksort'
              Choice of sorting algorithm. See also :func:`numpy.sort` for more
              information. 'mergesort' is the only stable  algorithm.
          na_position : {'first' or 'last'}, default 'last'
              Argument 'first' puts NaNs at the beginning, 'last' puts NaNs at
              the end.
  
          Returns
          -------
          Series
              Series ordered by values.
  
          See Also
          --------
          Series.sort_index : Sort by the Series indices.
          DataFrame.sort_values : Sort DataFrame by the values along either axis.
          DataFrame.sort_index : Sort DataFrame by indices.
  
          Examples
          --------
          >>> s = pd.Series([np.nan, 1, 3, 10, 5])
          >>> s
          0     NaN
          1     1.0
          2     3.0
          3     10.0
          4     5.0
          dtype: float64
  
          Sort values ascending order (default behaviour)
  
          >>> s.sort_values(ascending=True)
          1     1.0
          2     3.0
          4     5.0
          3    10.0
          0     NaN
          dtype: float64
  
          Sort values descending order
  
          >>> s.sort_values(ascending=False)
          3    10.0
          4     5.0
          2     3.0
          1     1.0
          0     NaN
          dtype: float64
  
          Sort values inplace
  
          >>> s.sort_values(ascending=False, inplace=True)
          >>> s
          3    10.0
          4     5.0
          2     3.0
          1     1.0
          0     NaN
          dtype: float64
  
          Sort values putting NAs first
  
          >>> s.sort_values(na_position='first')
          0     NaN
          1     1.0
          2     3.0
          4     5.0
          3    10.0
          dtype: float64
  
          Sort a series of strings
  
          >>> s = pd.Series(['z', 'b', 'd', 'a', 'c'])
          >>> s
          0    z
          1    b
          2    d
          3    a
          4    c
          dtype: object
  
          >>> s.sort_values()
          3    a
          1    b
          4    c
          2    d
          0    z
          dtype: object
docstring_summary: Sort by the values.
docstring_tokens: Sort by the values .
function: def sort_values(self, axis=0, ascending=True, inplace=False,
                      kind='quicksort', na_position='last'):
          """
          Sort by the values.
  
          Sort a Series in ascending or descending order by some
          criterion.
  
          Parameters
          ----------
          axis : {0 or 'index'}, default 0
              Axis to direct sorting. The value 'index' is accepted for
              compatibility with DataFrame.sort_values.
          ascending : bool, default True
              If True, sort values in ascending order, otherwise descending.
          inplace : bool, default False
              If True, perform operation in-place.
          kind : {'quicksort', 'mergesort' or 'heapsort'}, default 'quicksort'
              Choice of sorting algorithm. See also :func:`numpy.sort` for more
              information. 'mergesort' is the only stable  algorithm.
          na_position : {'first' or 'last'}, default 'last'
              Argument 'first' puts NaNs at the beginning, 'last' puts NaNs at
              the end.
  
          Returns
          -------
          Series
              Series ordered by values.
  
          See Also
          --------
          Series.sort_index : Sort by the Series indices.
          DataFrame.sort_values : Sort DataFrame by the values along either axis.
          DataFrame.sort_index : Sort DataFrame by indices.
  
          Examples
          --------
          >>> s = pd.Series([np.nan, 1, 3, 10, 5])
          >>> s
          0     NaN
          1     1.0
          2     3.0
          3     10.0
          4     5.0
          dtype: float64
  
          Sort values ascending order (default behaviour)
  
          >>> s.sort_values(ascending=True)
          1     1.0
          2     3.0
          4     5.0
          3    10.0
          0     NaN
          dtype: float64
  
          Sort values descending order
  
          >>> s.sort_values(ascending=False)
          3    10.0
          4     5.0
          2     3.0
          1     1.0
          0     NaN
          dtype: float64
  
          Sort values inplace
  
          >>> s.sort_values(ascending=False, inplace=True)
          >>> s
          3    10.0
          4     5.0
          2     3.0
          1     1.0
          0     NaN
          dtype: float64
  
          Sort values putting NAs first
  
          >>> s.sort_values(na_position='first')
          0     NaN
          1     1.0
          2     3.0
          4     5.0
          3    10.0
          dtype: float64
  
          Sort a series of strings
  
          >>> s = pd.Series(['z', 'b', 'd', 'a', 'c'])
          >>> s
          0    z
          1    b
          2    d
          3    a
          4    c
          dtype: object
  
          >>> s.sort_values()
          3    a
          1    b
          4    c
          2    d
          0    z
          dtype: object
          """
          inplace = validate_bool_kwarg(inplace, 'inplace')
          # Validate the axis parameter
          self._get_axis_number(axis)
  
          # GH 5856/5853
          if inplace and self._is_cached:
              raise ValueError("This Series is a view of some other array, to "
                               "sort in-place you must create a copy")
  
          def _try_kind_sort(arr):
              # easier to ask forgiveness than permission
              try:
                  # if kind==mergesort, it can fail for object dtype
                  return arr.argsort(kind=kind)
              except TypeError:
                  # stable sort not available for object dtype
                  # uses the argsort default quicksort
                  return arr.argsort(kind='quicksort')
  
          arr = self._values
          sortedIdx = np.empty(len(self), dtype=np.int32)
  
          bad = isna(arr)
  
          good = ~bad
          idx = ibase.default_index(len(self))
  
          argsorted = _try_kind_sort(arr[good])
  
          if is_list_like(ascending):
              if len(ascending) != 1:
                  raise ValueError('Length of ascending (%d) must be 1 '
                                   'for Series' % (len(ascending)))
              ascending = ascending[0]
  
          if not is_bool(ascending):
              raise ValueError('ascending must be boolean')
  
          if not ascending:
              argsorted = argsorted[::-1]
  
          if na_position == 'last':
              n = good.sum()
              sortedIdx[:n] = idx[good][argsorted]
              sortedIdx[n:] = idx[bad]
          elif na_position == 'first':
              n = bad.sum()
              sortedIdx[n:] = idx[good][argsorted]
              sortedIdx[:n] = idx[bad]
          else:
              raise ValueError('invalid na_position: {!r}'.format(na_position))
  
          result = self._constructor(arr[sortedIdx], index=self.index[sortedIdx])
  
          if inplace:
              self._update_inplace(result)
          else:
              return result.__finalize__(self)
function_tokens: def sort_values ( self , axis = 0 , ascending = True , inplace = False , kind = 'quicksort' , na_position = 'last' ) : inplace = validate_bool_kwarg ( inplace , 'inplace' ) # Validate the axis parameter self . _get_axis_number ( axis ) # GH 5856/5853 if inplace and self . _is_cached : raise ValueError ( "This Series is a view of some other array, to " "sort in-place you must create a copy" ) def _try_kind_sort ( arr ) : # easier to ask forgiveness than permission try : # if kind==mergesort, it can fail for object dtype return arr . argsort ( kind = kind ) except TypeError : # stable sort not available for object dtype # uses the argsort default quicksort return arr . argsort ( kind = 'quicksort' ) arr = self . _values sortedIdx = np . empty ( len ( self ) , dtype = np . int32 ) bad = isna ( arr ) good = ~ bad idx = ibase . default_index ( len ( self ) ) argsorted = _try_kind_sort ( arr [ good ] ) if is_list_like ( ascending ) : if len ( ascending ) != 1 : raise ValueError ( 'Length of ascending (%d) must be 1 ' 'for Series' % ( len ( ascending ) ) ) ascending = ascending [ 0 ] if not is_bool ( ascending ) : raise ValueError ( 'ascending must be boolean' ) if not ascending : argsorted = argsorted [ : : - 1 ] if na_position == 'last' : n = good . sum ( ) sortedIdx [ : n ] = idx [ good ] [ argsorted ] sortedIdx [ n : ] = idx [ bad ] elif na_position == 'first' : n = bad . sum ( ) sortedIdx [ n : ] = idx [ good ] [ argsorted ] sortedIdx [ : n ] = idx [ bad ] else : raise ValueError ( 'invalid na_position: {!r}' . format ( na_position ) ) result = self . _constructor ( arr [ sortedIdx ] , index = self . index [ sortedIdx ] ) if inplace : self . _update_inplace ( result ) else : return result . __finalize__ ( self )