Как рассчитать сводную статистику для dataframe pandas
Вы можете использовать следующие методы для расчета сводной статистики для переменных в DataFrame pandas:
Метод 1: рассчитать сводную статистику для всех числовых переменных.
df. describe ()
Способ 2. Рассчитать сводную статистику для всех строковых переменных.
df. describe (include=' object ')
Способ 3. Рассчитать сводную статистику, сгруппированную по переменной.
df. groupby (' group_column '). mean () df. groupby (' group_column '). median () df. groupby (' group_column '). max () ...
В следующих примерах показано, как использовать каждый метод на практике со следующим DataFrame pandas:
import pandas as pd import numpy as np #createDataFrame df = pd. DataFrame ({' team ': ['A', 'A', 'A', 'A', 'B', 'B', 'B', 'B', 'B'], ' points ': [18, 22, 19, 14, 14, 11, 20, 28, 30], ' assists ': [5, np.nan, 7, 9, 12, 9, 9, 4, 5], ' rebounds ': [11, 8, 10, 6, 6, 5, 9, np.nan, 6]}) #view DataFrame print (df) team points assists rebounds 0 to 18 5.0 11.0 1 to 22 NaN 8.0 2 A 19 7.0 10.0 3 A 14 9.0 6.0 4 B 14 12.0 6.0 5 B 11 9.0 5.0 6 B 20 9.0 9.0 7 B 28 4.0 NaN 8 B 30 5.0 6.0
Пример 1. Вычисление сводной статистики для всех числовых переменных
Следующий код показывает, как вычислить сводную статистику для каждой числовой переменной в DataFrame:
df. describe ()
points assists rebounds
count 9.000000 8.000000 8.000000
mean 19.555556 7.500000 7.625000
std 6.366143 2.725541 2.199838
min 11.000000 4.000000 5.000000
25% 14,000000 5,000000 6,000000
50% 19,000000 8,000000 7,000000
75% 22.000000 9.000000 9.250000
max 30.000000 12.000000 11.000000
Мы можем увидеть следующую сводную статистику для каждой из трех числовых переменных:
- count: количество ненулевых значений
- среднее : Среднее значение
- std : стандартное отклонение
- мин: минимальное значение
- 25% : значение 25-го процентиля.
- 50% : значение 50-го процентиля (также медиана).
- 75% : значение 75-го процентиля.
- max : Максимальное значение
Пример 2. Вычисление сводной статистики для всех строковых переменных
Следующий код показывает, как вычислить сводную статистику для каждой строковой переменной в DataFrame:
df. describe (include=' object ') team count 9 single 2 top B freq 5
Мы можем увидеть следующую сводную статистику для строковой переменной в нашем DataFrame:
- count : количество ненулевых значений.
- уникальный : количество уникальных значений.
- вверху: наиболее часто встречающееся значение
- freq : количество значений, появляющихся чаще всего
Пример 3. Расчет сводной статистики, сгруппированной по переменной.
Следующий код показывает, как вычислить среднее значение всех числовых переменных, сгруппированных по командной переменной:
df. groupby (' team '). mean () points assists rebounds team A 18.25 7.0 8.75 B 20.60 7.8 6.50
На выходе отображается среднее значение переменных очков , передач и подборов , сгруппированных по командной переменной.
Обратите внимание, что мы можем использовать аналогичный синтаксис для расчета другой сводной статистики, например медианы:
df. groupby (' team '). median () points assists rebounds team A 18.5 7.0 9.0 B 20.0 9.0 6.0
В выходных данных отображается медианное значение переменных очков , передач и подборов , сгруппированных по командной переменной.
Примечание . Полную документацию функции описания в pandas вы можете найти здесь .
Дополнительные ресурсы
В следующих руководствах объясняется, как выполнять другие распространенные задачи panda:
Как подсчитать групповые наблюдения у панд
Как найти максимальное значение для группы в Pandas
Как идентифицировать выбросы в пандах