logo

Pandas Groupby操作的25个示例

作者:快去debug2024.01.17 20:45浏览量:6

简介:本文将通过25个示例详细介绍Pandas库中的groupby操作,包括基本用法、聚合函数、排序和过滤等。通过这些示例,读者可以深入了解groupby在数据处理和分析中的应用,并掌握其在实际问题中的运用。

在Pandas库中,groupby操作是一种强大的工具,用于对数据进行分组、聚合、排序和过滤等操作。以下是通过25个示例来介绍groupby操作的不同应用场景。

  1. 基本用法
    1. import pandas as pd
    2. # 创建一个简单的DataFrame
    3. df = pd.DataFrame({
    4. 'A': ['foo', 'bar', 'foo', 'bar', 'foo', 'bar', 'foo', 'foo'],
    5. 'B': ['one', 'one', 'two', 'three', 'two', 'two', 'one', 'three'],
    6. 'C': np.random.randn(8),
    7. 'D': np.random.randn(8)
    8. })
    9. # 使用列A进行分组
    10. grouped = df.groupby('A')
  2. 聚合函数
    1. # 使用mean函数进行聚合
    2. grouped_mean = df.groupby('A').mean()
    3. # 使用sum函数进行聚合
    4. grouped_sum = df.groupby('A').sum()
  3. 自定义聚合函数
    1. # 自定义一个聚合函数计算每组的最大值和最小值
    2. def custom_agg(x):
    3. return x.min(), x.max()
    4. grouped_custom = df.groupby('A').agg(custom_agg)
  4. 多列分组
    1. # 使用多列进行分组
    2. grouped_multi = df.groupby(['A', 'B'])
  5. 分组后排序
    1. # 按C列的平均值对分组后的数据进行排序
    2. grouped_sort = df.groupby('A').mean().sort_values('C')
  6. 分组后过滤
    1. # 过滤出A列值为foo的组
    2. filtered_group = df.groupby('A').filter(lambda x: len(x) > 0)
  7. 分组后应用函数到每组数据
    1. # 对每个组应用自定义函数,例如计算每组的平均值并取对数
    2. def custom_func(x):
    3. return np.log(x['C'].mean())
    4. grouped_apply = df.groupby('A').apply(custom_func)

相关文章推荐

发表评论