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]
-
Сортировка объекта по меткам (вдоль оси).
Возвращает новую таблицу DataFrame, отсортированную по метке, если аргумент inplace равен
False, иначе обновляет исходную таблицу DataFrame и возвращает None.- Parameters:
-
- axis:{0 или ‘индекс’, 1 или ‘колонки’}, по умолчанию 0
-
Ось, по которой производится сортировка. Значение 0 определяет строки, а 1 — столбцы.
- level:int или имя уровня или список целых чисел или список имён уровней
-
Если не None, сортировка по значениям на указанном(ых) уровне(ях) индекса.
- ascending:bool или список bool, по умолчанию True
-
Сортировка по возрастанию или убыванию. Если индекс — MultiIndex, направление сортировки можно контролировать для каждого уровня индивидуально.
- inplace:bool, по умолчанию False
-
Изменять таблицу DataFrame вместо создания новой.
- kind:{‘quicksort’, ‘mergesort’, ‘heapsort’, ‘stable’}, по умолчанию ‘quicksort’
-
Выбор алгоритма сортировки. Смотрите также
numpy.sort()для получения дополнительной информации. mergesort и stable — единственные стабильные алгоритмы. Для DataFrame этот параметр применяется только при сортировке по одному столбцу или метке. - na_position:{‘first’, ‘last’}, по умолчанию ‘last’
-
Размещает NaN в начале, если first; last размещает NaN в конце. Для MultiIndex не реализовано.
- sort_remaining:bool, по умолчанию True
-
Если True и сортировка по уровню и индексу — многоуровневая, сортировка по другим уровням (в порядке) выполняется после сортировки по указанному уровню.
- ignore_index:bool, по умолчанию False
-
Если True, результирующая ось будет помечена как 0, 1, …, n - 1.
- key:callable, необязательно
-
Если не None, применяется функция-ключ к значениям индекса перед сортировкой. Аналогично аргументу key в встроенной функции
sorted(), с заметным отличием, что эта функция-ключ должна быть *векторизованной*. Она должна приниматьIndexи возвращатьIndexтой же формы. Для входных данных MultiIndex функция-ключ применяется *по каждому уровню*.
- Returns:
-
- DataFrame или None
-
Исходная таблица DataFrame, отсортированная по меткам, или None, если
inplace=True.
См. также
Series.sort_index-
Сортировка Series по индексу.
DataFrame.sort_values-
Сортировка DataFrame по значениям.
Series.sort_values-
Сортировка Series по значениям.
Примеры
>>> 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По умолчанию сортировка выполняется по возрастанию. Чтобы отсортировать по убыванию, используйте
ascending=False>>> df.sort_index(ascending=False) A 234 3 150 5 100 1 29 2 1 4Можно указать функцию-ключ, которая применяется к индексу перед сортировкой. Для
MultiIndexэто применяется к каждому уровню отдельно.>>> 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
© 2008–2022, AQR Capital Management, LLC, Lambda Foundry, Inc. and PyData Development Team
Licensed under the 3-clause BSD License.
https://pandas.pydata.org/pandas-docs/version/2.2.2/reference/api/pandas.DataFrame.sort_index.html