pandas.DataFrame.sort_index#
- DataFrame.sort_index(*, axis=0, level=None, ascending=True, inplace=False, kind='quicksort', na_position='last', sort_remaining=True, ignore_index=False, key=None)[source]#
- Sort object by labels (along an axis). - Returns a new DataFrame sorted by label if inplace argument is - False, otherwise updates the original DataFrame and returns None.- Parameters
- axis{0 or ‘index’, 1 or ‘columns’}, default 0
- The axis along which to sort. The value 0 identifies the rows, and 1 identifies the columns. 
- levelint or level name or list of ints or list of level names
- If not None, sort on values in specified index level(s). 
- ascendingbool or list-like of bools, default True
- Sort ascending vs. descending. When the index is a MultiIndex the sort direction can be controlled for each level individually. 
- inplacebool, default False
- Whether to modify the DataFrame rather than creating a new one. 
- kind{‘quicksort’, ‘mergesort’, ‘heapsort’, ‘stable’}, default ‘quicksort’
- Choice of sorting algorithm. See also - numpy.sort()for more information. mergesort and stable are the only stable algorithms. For DataFrames, this option is only applied when sorting on a single column or label.
- na_position{‘first’, ‘last’}, default ‘last’
- Puts NaNs at the beginning if first; last puts NaNs at the end. Not implemented for MultiIndex. 
- sort_remainingbool, default True
- If True and sorting by level and index is multilevel, sort by other levels too (in order) after sorting by specified level. 
- ignore_indexbool, default False
- If True, the resulting axis will be labeled 0, 1, …, n - 1. - New in version 1.0.0. 
- keycallable, optional
- If not None, apply the key function to the index values before sorting. This is similar to the key argument in the builtin - sorted()function, with the notable difference that this key function should be vectorized. It should expect an- Indexand return an- Indexof the same shape. For MultiIndex inputs, the key is applied per level.- New in version 1.1.0. 
 
- Returns
- DataFrame or None
- The original DataFrame sorted by the labels or None if - inplace=True.
 
 - See also - Series.sort_index
- Sort Series by the index. 
- DataFrame.sort_values
- Sort DataFrame by the value. 
- Series.sort_values
- Sort Series by the value. 
 - Examples - >>> df = pd.DataFrame([1, 2, 3, 4, 5], index=[100, 29, 234, 1, 150], ... columns=['A']) >>> df.sort_index() A 1 4 29 2 100 1 150 5 234 3 - By default, it sorts in ascending order, to sort in descending order, use - ascending=False- >>> df.sort_index(ascending=False) A 234 3 150 5 100 1 29 2 1 4 - A key function can be specified which is applied to the index before sorting. For a - MultiIndexthis is applied to each level separately.- >>> df = pd.DataFrame({"a": [1, 2, 3, 4]}, index=['A', 'b', 'C', 'd']) >>> df.sort_index(key=lambda x: x.str.lower()) a A 1 b 2 C 3 d 4