Pandas: как сортировать результаты value_counts()


Вы можете использовать функцию value_counts() в pandas для подсчета вхождений значений в заданном столбце DataFrame.

Вы можете использовать один из следующих методов для сортировки результатов функции value_counts() :

Способ 1. Сортировка учетных записей в порядке убывания (по умолчанию).

 df. my_column . value_counts ()

Способ 2. Отсортируйте аккаунты по возрастанию.

 df. my_column . value_counts (). sort_values ()

Способ 3. Сортировка счетчиков в том порядке, в котором они появляются в DataFrame.

 df. my_column . value_counts ()[df. my_column . single ()]

В следующих примерах показано, как использовать каждый метод на практике со следующим DataFrame pandas:

 import pandas as pd

#createDataFrame
df = pd. DataFrame ({' team ': ['A', 'A', 'B', 'B', 'B', 'B', 'B', 'C'],
                   ' points ': [15, 12, 18, 20, 22, 28, 35, 40]})

#view DataFrame
print (df)

  team points
0 to 15
1 to 12
2 B 18
3 B 20
4 B 22
5 B 28
6 B 35
7 C 40

Пример 1. Сортировка учетных записей в порядке убывания.

Следующий код показывает, как подсчитать количество вхождений каждого уникального значения в столбце команды и отсортировать числа в порядке убывания:

 #count occurrences of each value in team column and sort in descending order
df. team . value_counts ()

B5
At 2
C 1
Name: team, dtype: int64

Обратите внимание, что по умолчанию счетчики сортируются по убыванию.

Пример 2. Сортировка аккаунтов по возрастанию.

Следующий код показывает, как подсчитать количество вхождений каждого уникального значения в столбце команды и отсортировать числа в порядке возрастания:

 #count occurrences of each value in team column and sort in ascending order
df. team . value_counts (). sort_values ()

C 1
At 2
B5
Name: team, dtype: int64

Обратите внимание, что счета теперь сортируются по возрастанию, т.е. от меньшего к большему.

Пример 3. Сортировка учетных записей в том порядке, в котором они появляются в DataFrame.

Следующий код показывает, как подсчитать количество вхождений каждого уникального значения в столбце команды и отсортировать числа в том порядке, в котором уникальные значения появляются в DataFrame:

 #count occurrences of each value in team column and sort in order they appear
df. team . value_counts ()[df. team . single ()]

At 2
B5
C 1
Name: team, dtype: int64

Обратите внимание, что счетчики теперь сортируются на основе порядка появления уникальных значений в DataFrame.

Например, в столбце команды сначала появляется значение «А», затем «Б», затем «С».

Итак, это порядок, в котором счетчики появляются в выходных данных.

Дополнительные ресурсы

В следующих руководствах объясняется, как выполнять другие распространенные задачи в pandas:

Pandas: как построить стоимостные счета
Pandas: как использовать GroupBy и подсчет значений
Pandas: как представить value_counts в процентах

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *