pandas.Series.sort_index#

Series.sort_index(*, ось=0, уровень=None, ascending=True, inplace=False, kind='quicksort', na_position='last', sort_remaining=True, ignore_index=False, ключ=None)[источник]#

Сортировка Series по меткам индекса.

Возвращает новый Series, отсортированный по метке, если inplace аргумент является False, в противном случае обновляет исходную серию и возвращает None.

Параметры:
ось{0 или ‘index’}

Не используется. Параметр необходим для совместимости с DataFrame.

уровеньint, необязательный

Если не None, сортировать по значениям на указанных уровнях индекса.

ascendingbool или список bool, по умолчанию True

Сортировка по возрастанию или убыванию. Когда индекс является MultiIndex, направление сортировки можно контролировать для каждого уровня отдельно.

inplacebool, по умолчанию False

Если True, выполнить операцию на месте.

kind{‘quicksort’, ‘mergesort’, ‘heapsort’, ‘stable’}, по умолчанию ‘quicksort’

Выбор алгоритма сортировки. См. также numpy.sort() для получения дополнительной информации. 'mergesort' и 'stable' — единственные стабильные алгоритмы. Для DataFrames эта опция применяется только при сортировке по одному столбцу или метке.

na_position{'first', 'last'}, по умолчанию 'last'

Если 'first' помещает NaN в начало, 'last' помещает NaN в конец. Не реализовано для MultiIndex.

sort_remainingbool, по умолчанию True

Если True и сортировка по уровню и индексу многоуровневая, сортировать по другим уровням тоже (по порядку) после сортировки по указанному уровню.

ignore_indexbool, по умолчанию False

Если True, результирующая ось будет помечена как 0, 1, …, n - 1.

ключвызываемый объект, необязательный

Если не None, применить ключевую функцию к значениям индекса перед сортировкой. Это похоже на ключ аргумент во встроенной функции sorted() функция, с заметным отличием, что эта ключ функция должна быть векторизованный. Он должен ожидать Index и возвращает Index той же формы.

Возвращает:
Series или None

Исходный Series, отсортированный по меткам, или None, если inplace=True.

Смотрите также

DataFrame.sort_index

Сортировать DataFrame по индексу.

DataFrame.sort_values

Сортировать DataFrame по значению.

Series.sort_values

Сортировка Series по значению.

Примеры

>>> s = pd.Series(['a', 'b', 'c', 'd'], index=[3, 2, 1, 4])
>>> s.sort_index()
1    c
2    b
3    a
4    d
dtype: object

Сортировка по убыванию

>>> s.sort_index(ascending=False)
4    d
3    a
2    b
1    c
dtype: object

По умолчанию NaN помещаются в конец, но используйте na_position чтобы разместить их в начале

>>> s = pd.Series(['a', 'b', 'c', 'd'], index=[3, 2, 1, np.nan])
>>> s.sort_index(na_position='first')
NaN     d
 1.0    c
 2.0    b
 3.0    a
dtype: object

Указать уровень индекса для сортировки

>>> arrays = [np.array(['qux', 'qux', 'foo', 'foo',
...                     'baz', 'baz', 'bar', 'bar']),
...           np.array(['two', 'one', 'two', 'one',
...                     'two', 'one', 'two', 'one'])]
>>> s = pd.Series([1, 2, 3, 4, 5, 6, 7, 8], index=arrays)
>>> s.sort_index(level=1)
bar  one    8
baz  one    6
foo  one    4
qux  one    2
bar  two    7
baz  two    5
foo  two    3
qux  two    1
dtype: int64

Не сортирует по оставшимся уровням при сортировке по уровням

>>> s.sort_index(level=1, sort_remaining=False)
qux  one    2
foo  one    4
baz  one    6
bar  one    8
qux  two    1
foo  two    3
baz  two    5
bar  two    7
dtype: int64

Применить ключевую функцию перед сортировкой

>>> s = pd.Series([1, 2, 3, 4], index=['A', 'b', 'C', 'd'])
>>> s.sort_index(key=lambda x : x.str.lower())
A    1
b    2
C    3
d    4
dtype: int64