Как сортировать по нескольким столбцам в pandas (с примерами)
Вы можете использовать следующий базовый синтаксис для сортировки DataFrame pandas по нескольким столбцам:
df = df. sort_values ([' column1 ', ' column2 '], ascending=( False , True ))
В следующем примере показано, как использовать этот синтаксис на практике.
Пример: сортировка по нескольким столбцам в Pandas
Предположим, у нас есть следующий DataFrame pandas:
import pandas as pd #createDataFrame df = pd. DataFrame ({' points ': [14, 20, 9, 20, 25, 29, 20, 25], ' assists ': [5, 7, 7, 9, 12, 9, 9, 4], ' rebounds ': [11, 8, 10, 6, 6, 5, 9, 12]}) #view DataFrame df points assists rebounds 0 14 5 11 1 20 7 8 2 9 7 10 3 20 9 6 4 25 12 6 5 29 9 5 6 20 9 9 7 25 4 12
Мы можем использовать следующий синтаксис для сортировки строк DataFrame по увеличению точек , а затем по уменьшению проходов :
#sort by points ascending, then assists ascending
df = df. sort_values ([' points ', ' assists '])
#view updated DataFrame
df
points assists rebounds
2 9 7 10
0 14 5 11
1 20 7 8
3 20 9 6
6 20 9 9
7 25 4 12
4 25 12 6
5 29 9 5
Обратите внимание, что строки сортируются по возрастанию точек (от меньшего к большему), затем проходит по возрастанию.
Мы также можем использовать аргумент по возрастанию , чтобы указать, следует ли сортировать каждый столбец по возрастанию или убыванию:
#sort by points descending, then assists ascending
df = df. sort_values ([' points ', ' assists '], ascending = ( False , True )))
#view updated DataFrame
df
points assists rebounds
5 29 9 5
7 25 4 12
4 25 12 6
1 20 7 8
3 20 9 6
6 20 9 9
0 14 5 11
2 9 7 10
Обратите внимание, что строки сортируются по убыванию точек (от большей к меньшей), затем проходит по возрастанию.
В этих примерах мы отсортировали DataFrame по двум столбцам, но мы можем использовать этот точный синтаксис для сортировки по любому количеству столбцов, которое нам нужно.
Примечание . Полную документацию по функции pandas sort_values() можно найти здесь .
Дополнительные ресурсы
В следующих руководствах объясняется, как выполнять другие распространенные операции в pandas:
Панды: как сортировать по дате
Pandas: как сортировать столбцы по имени
Pandas: как сортировать по индексу и столбцу