Pandas: як створити зведену таблицю з кількістю значень
Ви можете використовувати будь-який із наведених нижче методів, щоб створити зведену таблицю в pandas, яка відображає кількість значень у певних стовпцях:
Спосіб 1: зведена таблиця з числами
p.d. pivot_table (df, values=' col1 ', index=' col2 ', columns=' col3 ', aggfunc=' count ')
Спосіб 2: зведена таблиця з унікальними номерами
p.d. pivot_table (df, values=' col1 ', index=' col2 ', columns=' col3 ', aggfunc=pd. Series . nunique )
У наведених нижче прикладах показано, як використовувати кожен метод із такими pandas DataFrame:
import pandas as pd #createDataFrame df = pd. DataFrame ({' team ': ['A', 'A', 'A', 'A', 'B', 'B', 'B', 'B'], ' position ': ['G', 'G', 'F', 'C', 'G', 'F', 'F', 'F'], ' points ': [4, 4, 6, 8, 9, 5, 5, 12]}) #view DataFrame df team position points 0 A G 4 1 A G 4 2 A F 6 3 A C 8 4 B G 9 5 B F 5 6 B F 5 7 B F 12
Спосіб 1: Створення зведеної таблиці Pandas із підрахунками
Наступний код показує, як створити зведену таблицю в pandas, яка відображає загальну кількість значень «точок» для кожної «команди» та «позиції» в DataFrame:
#create pivot table
df_pivot = pd. pivot_table (df, values=' points ', index=' team ', columns=' position ',
aggfunc=' count ')
#view pivot table
df_pivot
position C F G
team
A 1.0 1.0 2.0
B NaN 3.0 1.0
З результату ми бачимо:
- У колонці «очки» для команди A на позиції C є 1 значення.
- У колонці «очки» для команди A на позиції F є 1 значення.
- У колонці «очки» для команди А в позиції G є 2 значення.
І так далі.
Спосіб 2: Створення зведеної таблиці Pandas з унікальними підрахунками
Наступний код показує, як створити зведену таблицю в pandas, яка відображає унікальну загальну кількість значень «точок» для кожної «команди» та «позиції» у DataFrame:
#create pivot table
df_pivot = pd. pivot_table (df, values=' points ', index=' team ', columns=' position ',
aggfunc=pd. Series . nunique )
#view pivot table
df_pivot
position C F G
team
A 1.0 1.0 1.0
B NaN 2.0 1.0
З результату ми бачимо:
- Є 1 унікальне значення в колонці «очки» для команди A на позиції C.
- Є 1 унікальне значення в колонці «очки» для команди A на позиції F.
- Є 1 унікальне значення в колонці «очки» для команди A на позиції G.
І так далі.
Примітка . Ви можете знайти повну документацію щодо функції pandas pivot_table() тут .
Додаткові ресурси
У наступних посібниках пояснюється, як виконувати інші типові операції в pandas:
Pandas: Як змінити форму DataFrame з довгого на широкий
Pandas: Як змінити форму DataFrame із широкого на довгий
Pandas: як групувати та агрегувати в кількох стовпцях