📜  pandas 数据框聚合 - Python (1)

📅  最后修改于: 2023-12-03 14:45:04.259000             🧑  作者: Mango

Pandas 数据框聚合 - Python

简介

在数据分析中,聚合是非常重要的一个操作,特别是在统计学中。Pandas 是 Python 中一个非常强大的数据分析库,提供了丰富的聚合函数。本文将从以下几个方面介绍 Pandas 数据框聚合的使用方法:

  1. 分组聚合
  2. 链式聚合
  3. 组合聚合
分组聚合

分组聚合是基于指定数据框中某些列的值,将数据分组,然后对分组后的每一组进行聚合计算。常见的聚合函数有均值、总和、最大值、最小值等。

例如,下面的数据包含人名、性别和年龄三个字段:

import pandas as pd

data = {'Name': ['Tom', 'Jack', 'Steve', 'Ricky', 'David'],
        'Gender': ['M', 'M', 'M', 'M', 'M'],
        'Age': [25, 18, 22, 20, 23]}

df = pd.DataFrame(data)
print(df)

输出结果:

    Name Gender  Age
0    Tom      M   25
1   Jack      M   18
2  Steve      M   22
3  Ricky      M   20
4  David      M   23

我们可以根据性别将数据分组,并计算每组的平均年龄:

avg_age = df.groupby(['Gender']).mean()
print(avg_age)

输出结果:

         Age
Gender      
M       21.6
链式聚合

链式聚合是指将多个聚合函数串联起来,对数据进行连续的聚合操作。Pandas 提供了 agg() 函数来实现链式聚合,例如:

age_stats = df.groupby(['Gender']).agg(['mean', 'max'])
print(age_stats)

输出结果:

        Age    
       mean max
Gender         
M       21.6  25
组合聚合

组合聚合是指将原始数据框中的多个字段聚合成一个新的字段,例如:

df['Age_stats'] = df.groupby(['Gender']).transform('mean')
print(df)

输出结果:

    Name Gender  Age  Age_stats
0    Tom      M   25       21.6
1   Jack      M   18       21.6
2  Steve      M   22       21.6
3  Ricky      M   20       21.6
4  David      M   23       21.6
总结

Pandas 提供了丰富的聚合函数和灵活的聚合方式,可以实现多种分析需求。在实际应用中,需要根据数据特点选择合适的聚合方式,提高数据分析的效率和准确性。