Pandas: як створити гістограму для візуалізації 10 найпопулярніших значень


Ви можете використовувати наступний базовий синтаксис, щоб створити гістограму в pandas, яка включає лише 10 найбільш частих значень у певному стовпці:

 import pandas as pd
import matplotlib. pyplot as plt

#find values with top 10 occurrences in 'my_column'
top_10 = (df[' my_column ']. value_counts ()). iloc [:10]

#create bar chart to visualize top 10 values
top_10. plot (kind='bar')

У наступному прикладі показано, як використовувати цей синтаксис на практиці.

Приклад: створіть гістограму в Pandas, щоб візуалізувати 10 найпопулярніших значень

Припустімо, що у нас є такий фрейм даних pandas, який містить інформацію про назву команди та очки, набрані 500 різними баскетболістами:

 import pandas as pd
import numpy as np
from string import ascii_uppercase
import random
from random import choice

#make this example reproducible
random. seeds (1)
n.p. random . seeds (1)

#createDataFrame
df = pd. DataFrame ({' team ': [choice(ascii_uppercase) for _ in range(500)],
                   ' points ': np. random . uniform (0, 20, 500)})

#view first five rows of DataFrame
print ( df.head ())

  team points
0 E 8.340440
1 S 14.406490
2 Z 0.002287
3 Y 6.046651
4 C 2.935118

Ми можемо використовувати наступний синтаксис, щоб створити гістограму, яка відображає 10 найбільш частих значень у стовпці команди :

 import matplotlib. pyplot as plt

#find teams with top 10 occurrences
top_10_teams = (df[' team ']. value_counts ()).[:10]

#create bar chart of top 10 teams
top_10_teams. plot (kind=' bar ') 

Стовпчаста діаграма містить лише назви 10 найбільш часто зустрічаються команд.

На осі X відображається назва команди, а на осі Y – частота.

Зверніть увагу, що ми також можемо налаштувати сюжет, щоб зробити його більш естетичним:

 import matplotlib. pyplot as plt

#find teams with top 10 occurrences
top_10_teams = (df[' team ']. value_counts ()).[:10]

#create bar chart of top 10 teams
top_10_teams. plot (kind=' bar ', edgecolor=' black ', rot=0)

#add axis labels
plt. xlabel (' Team ')
plt. ylabel (' Frequency ')

Зауважте, що аргумент edgecolor додав чорну рамку навколо кожної смужки, а аргумент rot повернув мітки осі x на 90 градусів, щоб їх було легше читати.

Додаткові ресурси

У наступних посібниках пояснюється, як виконувати інші типові завдання в pandas:

Pandas: Як створити стовпчасту діаграму з накопиченням
Pandas: як анотувати смужки на діаграмі
Pandas: як нанести кілька стовпців на гістограму

Додати коментар

Ваша e-mail адреса не оприлюднюватиметься. Обов’язкові поля позначені *