如何在Pandas中按组计算观察值

  • Post category:Python

在Pandas中按组计算观察值,通常可以通过分组(groupby)操作和统计聚合函数(agg)实现。实现步骤如下:

1.导入Pandas库并读入数据

import pandas as pd

# 读取数据
df = pd.read_csv('dataset.csv')
  1. 对数据进行分组操作

使用groupby函数对数据进行分组,可以按照某一列或几列对数据进行分组。比如,下面的例子我们通过年龄这一列对数据进行分组。

# 按年龄分组
groups = df.groupby('age')
  1. 对分组后的数据进行统计计算

使用agg函数对分组后的数据进行统计计算。agg函数可以接受多个统计聚合函数,我们可以计算每组数据的平均数、中位数、最小值和最大值,并将计算结果保存为一个新的DataFrame数据。

# 分组计算平均数、中位数、最小值和最大值
result = groups.agg(['mean', 'median', 'min', 'max'])

# 显示结果的前5行
print(result.head())

其中结果的前5行如下:

    income                         …     credit                  
      mean median min max         …       mean median  min max
age                                …                           
18   24267  20248  158   55069    …    521.384    532  116  946
19   27027  26024  171   78416    …    515.330    506  105 1091
20   25372  24554  176   67559    …    526.262    525  123 1036
21   26512  26505  164   79659    …    492.874    488  142  999
22   26000  26361  184   72659    …    487.759    477  131 1036

[5 rows x 12 columns]

其中,分组的列名作为结果的第一级索引,而聚合函数作为结果的第二级索引,确保每个计算出的值都归属于相应的组别。

总结一下,在Pandas中按组计算观察值的步骤如下:

1.导入Pandas库并读入数据

2.对数据进行分组操作

3.对分组后的数据进行统计计算

以上是一个简单的Pandas按组计算观察值的例子,大家可以根据自己的数据和需求灵活应用。