Метод argsort
Метод argsort применяется к Index
и возвращает целочисленные позиции, которые отсортировали
бы значения индекса. По умолчанию сортировка выполняется
по возрастанию. Параметр ascending управляет
направлением сортировки, а kind задаёт алгоритм
сортировки.
Синтаксис
index.argsort(ascending=True, kind="quicksort")
Пример
Давайте получим индексы, которые отсортируют исходный индекс:
import pandas as pd
ser = pd.Series([10, 20, 30, 40, 50], index=[5, 3, 1, 4, 2])
res = ser.index.argsort()
print(res)
Результат выполнения кода:
[2 4 1 3 0]
Пример
Теперь отсортируем индекс по убыванию:
import pandas as pd
ser = pd.Series([1, 2, 3, 4, 5], index=['a', 'c', 'b', 'e', 'd'])
res = ser.index.argsort(ascending=False)
print(res)
Результат выполнения кода:
[3 4 1 2 0]
Пример
Используем метод для индекса с целочисленными значениями:
import pandas as pd
idx = pd.Index([10, 5, 8, 3, 1])
res = idx.argsort()
print(res)
Результат выполнения кода:
[4 3 1 2 0]
Пример
Применим метод к индексу со строковыми значениями:
import pandas as pd
idx = pd.Index(['banana', 'apple', 'cherry', 'date'])
res = idx.argsort()
print(res)
Результат выполнения кода:
[1 0 2 3]
Смотрите также
-
метод
sort_values,
который возвращает отсортированный индекс -
метод
min,
который возвращает минимальное значение индекса -
метод
max,
который возвращает максимальное значение индекса -
метод
unique,
который возвращает уникальные значения индекса