如何计算 pandas dataframe 的汇总统计信息
您可以使用以下方法来计算 pandas DataFrame 中变量的汇总统计信息:
方法 1:计算所有数值变量的汇总统计量
df. describe ()
方法2:计算所有字符串变量的汇总统计量
df. describe (include=' object ')
方法 3:计算按变量分组的汇总统计量
df. groupby (' group_column '). mean () df. groupby (' group_column '). median () df. groupby (' group_column '). max () ...
以下示例展示了如何在实践中使用以下 pandas DataFrame 的每种方法:
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 :标准差
- min:最小值
- 25% : 第 25 个百分位数的值
- 50% :第 50 个百分位数的值(也是中位数)
- 75% : 第 75 个百分位数的值
- max :最大值
示例 2:计算所有字符串变量的汇总统计数据
以下代码显示了如何计算 DataFrame 中每个字符串变量的汇总统计信息:
df. describe (include=' object ') team count 9 single 2 top B freq 5
我们可以在 DataFrame 中看到字符串变量的以下汇总统计信息:
- count :非零值的数量
- unique :唯一值的数量
- 顶部:最常见的值
- 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 任务: