Чтобы отсортировать DataFrame по индексу, вы можете использовать метод sort_index().
Чтобы указать, должен ли метод сортировать DataFrame в порядке возрастания или убывания индекса, вы можете установить для именованного логического аргумента значение «true» или «false» соответственно.
Когда индекс сортируется, соответствующие строки меняются местами.
Пример 1: в возрастающем порядке
В этом примере мы создадим DataFrame с несколькими строками и индексом с массивом чисел. Мы будем отсортировать строки, чтобы индекс располагался в порядке возрастания.
Чтобы отсортировать индекс в порядке возрастания, мы вызываем метод sort_index() с аргументом ascending = True, как показано в следующей программе Python. Или вы можете игнорировать восходящий параметр, поскольку значение по умолчанию для аргумента по возрастанию – true.
import pandas as pd
#create a dataframe
df_1 = pd.DataFrame(
[['Arjun', 70, 86],
['Kiku', 80, 76],
['Mama', 99, 99],
['Lini', 79, 92]],
index = [2, 1, 6, 5],
columns=['name', 'aptitude', 'cooking'])
print(df_1)
#sort dataframe by index in ascending order
df_1 = df_1.sort_index(ascending=True)
print('\nDataFrame after sorting by index\n')
print(df_1)
Запустите указанную выше программу. Мы распечатали исходный DataFrame на консоль, а затем отсортированный.
name aptitude cooking
2 Arjun 70 86
1 Kiku 80 76
6 Mama 99 99
5 Lini 79 92
DataFrame after sorting by index
name aptitude cooking
1 Kiku 80 76
2 Arjun 70 86
5 Lini 79 92
6 Mama 99 99
Пример 2: в порядке убывания
В этом примере мы сортируем DataFrame в порядке убывания индекса. Для этого мы передадим ascending = False методу sort_index().
import pandas as pd
#create a dataframe
df_1 = pd.DataFrame(
[['Arjun', 70, 86],
['Kiku', 80, 76],
['Mama', 99, 99],
['Lini', 79, 92]],
index = [2, 1, 6, 5],
columns=['name', 'aptitude', 'cooking'])
print(df_1)
#sort dataframe by index in descending order
df_1 = df_1.sort_index(ascending=False)
print('\nDataFrame after sorting by index\n')
print(df_1)
Запустите программу. Отсортированный DataFrame имеет индекс [6 5 5 1] в порядке убывания.
name aptitude cooking
2 Arjun 70 86
1 Kiku 80 76
6 Mama 99 99
5 Lini 79 92
DataFrame after sorting by index
name aptitude cooking
6 Mama 99 99
5 Lini 79 92
2 Arjun 70 86
1 Kiku 80 76
В этом руководстве на примерах Python мы узнали, как отсортировать DataFrame по индексу в порядке возрастания и убывания.