Метод sort_index
Метод sort_index применяется к Series
и возвращает новую серию с элементами,
отсортированными по индексу. По умолчанию сортировка
происходит в порядке возрастания. Метод имеет важные
параметры: ascending определяет направление
сортировки, inplace позволяет изменить
исходную серию вместо создания новой, а na_position
управляет расположением пропущенных значений в индексе.
Синтаксис
ser.sort_index(axis=0, level=None, ascending=True,
inplace=False, na_position='last',
sort_remaining=True, ignore_index=False,
key=None)
Пример
Отсортируем серию с неупорядоченным строковым индексом по возрастанию:
import pandas as pd
ser = pd.Series([10, 20, 30, 40],
index=['b', 'a', 'd', 'c'])
print(ser.sort_index())
Результат выполнения кода:
a 10
b 20
c 30
d 40
dtype: int64
Пример
Отсортируем серию в порядке убывания с помощью
параметра ascending:
import pandas as pd
ser = pd.Series([5, 15, 25, 35],
index=['x', 'w', 'z', 'y'])
print(ser.sort_index(ascending=False))
Результат выполнения кода:
z 25
y 35
x 5
w 15
dtype: int64
Пример
Изменим исходную серию, не создавая новую, с помощью
параметра inplace:
import pandas as pd
ser = pd.Series([7, 14, 21, 28],
index=[3, 1, 4, 2])
ser.sort_index(inplace=True)
print(ser)
Результат выполнения кода:
1 14
2 28
3 7
4 21
dtype: int64
Пример
Управляем расположением пропущенных значений
в индексе с помощью na_position. В этом примере
пропуск будет помещён в начало:
import pandas as pd
import numpy as np
ser = pd.Series([100, 200, 300],
index=[2, np.nan, 1])
res = ser.sort_index(na_position='first')
print(res)
Результат выполнения кода:
NaN 200
1.0 300
2.0 100
dtype: int64
Смотрите также
-
метод
sort_values,
который сортирует серию по значениям -
метод
reset_index,
который сбрасывает индекс в столбец -
метод
reindex,
который изменяет индекс серии -
метод
rank,
который вычисляет ранги элементов