Pandas: как построить график количества значений (с примером)


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

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

Способ 1: отобразить количество значений в порядке убывания

 df. my_column . value_counts (). plot (kind=' bar ')

Способ 2: отобразить количество значений в порядке возрастания

 df. my_column . value_counts (). sort_values (). plot (kind=' bar ')

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

 df. my_column . value_counts ()[df. my_column . unique ()]. plot (kind=' bar ')

В следующих примерах показано, как использовать каждый метод на практике со следующим 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

#calculate occurrences of each value in 'team' column
df. team . value_counts ()

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

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

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

 #plot value counts of team in descending order
df. team . value_counts (). plot (kind=' bar ') 

По оси X отображается название команды, а по оси Y отображается частота появления каждой команды.

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

Примечание . Если вместо этого вы хотите создать горизонтальную гистограмму, просто замените bar на barh в аргументе вида .

Пример 2: Постройте количество значений в порядке возрастания

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

 #plot value counts of team in descending order
df. team . value_counts (). sort_values (). plot (kind=' bar ')

Обратите внимание, что столбцы теперь отсортированы по возрастанию.

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

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

 #plot value counts of team in order they appear in DataFrame
df. team . value_counts ()[df. team . single ()]. plot (kind=' bar ')

Бары теперь сортируются в соответствии с порядком их появления в DataFrame.

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

Вот в каком порядке располагаются столбцы на гистограмме.

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

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

Pandas: как добавлять заголовки к графикам
Pandas: как создавать подписи к сюжету
Pandas: как создать гистограмму из GroupBy

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

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