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 ()]
Наступні приклади показують, як використовувати кожен метод на практиці з такими pandas DataFrame:
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 у відсотках