-
-
Notifications
You must be signed in to change notification settings - Fork 18.5k
DOC: update Series.sort_values docstring #20247
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Changes from 5 commits
04c8faa
206b7e6
388ed2b
027e1e5
4aea67c
fef8f4c
fb7c0c8
3c61e6e
973b741
3d19051
668ada1
8b09ee5
3af4e29
afc528d
1264a6b
9717c8b
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -76,7 +76,7 @@ | |
__all__ = ['Series'] | ||
|
||
_shared_doc_kwargs = dict( | ||
axes='index', klass='Series', axes_single_arg="{0, 'index'}", | ||
axes='index', klass='Series', axes_single_arg="{0 or 'index'}", | ||
inplace="""inplace : boolean, default False | ||
If True, performs operation inplace and returns None.""", | ||
unique='np.ndarray', duplicated='Series', | ||
|
@@ -1885,10 +1885,109 @@ def update(self, other): | |
# ---------------------------------------------------------------------- | ||
# Reindexing, sorting | ||
|
||
@Appender(generic._shared_docs['sort_values'] % _shared_doc_kwargs) | ||
def sort_values(self, axis=0, ascending=True, inplace=False, | ||
kind='quicksort', na_position='last'): | ||
""" | ||
Sort by the Series values. | ||
|
||
Sort (or order) a Series into ascending or descending order by some criterion. | ||
|
||
Parameters | ||
---------- | ||
axis : {0 or ‘index’}, default 0 | ||
Axis to direct sorting. | ||
ascending : bool, default True | ||
If `True` sort values into ascending order, otherwise descending. | ||
inplace : bool, default False | ||
If True, perform operation in-place. | ||
kind : {‘quicksort’, ‘mergesort’ or ‘heapsort’}, default ‘quicksort’ | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. it seems you are using here not the 'normal' single quote, but king of curved smart quote. Can you change this? (see the quotes in the type description of the na_position keyword, that are the good ones) |
||
Choice of sorting algorithm. See also ndarray.np.sort [1]_ for more information. `mergesort` is the only stable | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. you can use |
||
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_index : Sort DataFrame by indices. | ||
DataFrame.sort_values : Sort by the values along either axis. | ||
|
||
References | ||
---------- | ||
.. [1] https://docs.scipy.org/doc/numpy/reference/generated/numpy.sort.html | ||
|
||
Examples | ||
-------- | ||
>>> s = pd.Series([np.nan, 1, 232, 323, 1, 2, 3, 45]) | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. I would make this a bit shorter (try to aim at 5 elements) |
||
>>> s | ||
0 NaN | ||
1 1.0 | ||
2 232.0 | ||
3 323.0 | ||
4 1.0 | ||
5 2.0 | ||
6 3.0 | ||
7 45.0 | ||
dtype: float64 | ||
|
||
Sort values ascending order | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Can you add something like There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Quick grammar comment: Sort values in ascending order |
||
|
||
>>> s.sort_values(ascending=True) | ||
1 1.0 | ||
4 1.0 | ||
5 2.0 | ||
6 3.0 | ||
7 45.0 | ||
2 232.0 | ||
3 323.0 | ||
0 NaN | ||
dtype: float64 | ||
|
||
Sort values descending order | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Quick grammar comment: Sort values in descending order |
||
|
||
>>> s.sort_values(ascending=False) | ||
3 323.0 | ||
2 232.0 | ||
7 45.0 | ||
6 3.0 | ||
5 2.0 | ||
4 1.0 | ||
1 1.0 | ||
0 NaN | ||
dtype: float64 | ||
|
||
Sort values inplace | ||
|
||
>>> s.sort_values(ascending=False, inplace=True) | ||
>>> s | ||
3 323.0 | ||
2 232.0 | ||
7 45.0 | ||
6 3.0 | ||
5 2.0 | ||
4 1.0 | ||
1 1.0 | ||
0 NaN | ||
dtype: float64 | ||
|
||
Sort values putting NAs first | ||
|
||
>>> s.sort_values(na_position='first') | ||
0 NaN | ||
4 1.0 | ||
1 1.0 | ||
5 2.0 | ||
6 3.0 | ||
7 45.0 | ||
2 232.0 | ||
3 323.0 | ||
dtype: float64 | ||
""" | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. If you find time, it would be nice to have an example that includes strings as well so that users see that sorting can apply to anything. |
||
inplace = validate_bool_kwarg(inplace, 'inplace') | ||
axis = self._get_axis_number(axis) | ||
|
||
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I would mention here that is can only be 0 for Series (accepted for compatibility with DataFrame.sort_values)