Pandas: як використовувати describe() за групою


Ви можете використовувати функцію describe() для створення описової статистики для змінних у pandas DataFrame.

Ви можете використовувати такий базовий синтаксис, щоб використовувати функцію describe() із функцією groupby() у pandas:

 df. groupby (' group_var ')[' values_var ']. describe ()

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

Приклад: використовуйте describe() за допомогою Group у Pandas

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

 import pandas as pd

#createDataFrame
df = pd. DataFrame ({' team ': ['A', 'A', 'A', 'A', 'B', 'B', 'B', 'B'],
                   ' points ': [8, 12, 14, 14, 15, 22, 27, 24],
                   ' assists ':[2, 2, 3, 5, 7, 6, 8, 12]})

#view DataFrame
print (df)

  team points assists
0 to 8 2
1 to 12 2
2 to 14 3
3 to 14 5
4 B 15 7
5 B 22 6
6 B 27 8
7 B 24 12

Ми можемо використовувати функцію describe() із функцією groupby() , щоб підсумувати значення в стовпці очок для кожної команди :

 #summarize points by team
df. groupby (' team ')[' points ']. describe ()

count mean std min 25% 50% 75% max
team								
A 4.0 12.0 2.828427 8.0 11.00 13.0 14.00 14.0
B 4.0 22.0 5.099020 15.0 20.25 23.0 24.75 27.0

З результату ми можемо побачити наступні значення для змінної очок для кожної команди:

  • кількість (кількість спостережень)
  • середній (середнє значення балу)
  • std (стандартне відхилення точкових значень)
  • min (мінімальне значення балу)
  • 25 % (25 процентиль балів)
  • 50 % (50-й процентиль (тобто медіана) балів)
  • 75 % (75 процентиль балів)
  • max (максимальне значення балів)

Якщо ви хочете, щоб результати відображалися у форматі DataFrame, ви можете використати аргумент reset_index() :

 #summarize points by team
df. groupby (' team ')[' points ']. describe (). reset_index ()

        team count mean std min 25% 50% 75% max
0 A 4.0 12.0 2.828427 8.0 11.00 13.0 14.00 14.0
1 B 4.0 22.0 5.099020 15.0 20.25 23.0 24.75 27.0

Змінна team тепер є стовпцем у DataFrame, а значення індексу дорівнюють 0 і 1.

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

У наступних посібниках пояснюється, як виконувати інші типові операції в pandas:

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

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

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