pandas agg函数的详细介绍与应用

pandas agg函数的详细介绍与应用

参考:pandas agg

Pandas 是一个强大的 Python 数据分析工具库,它提供了大量的功能来便捷地处理和分析数据。其中,agg 函数是一个非常有用的工具,它允许用户对数据进行多种聚合操作,可以极大地简化数据处理过程。本文将详细介绍 agg 函数的使用方法,并通过多个示例展示其在实际数据处理中的应用。

1. agg函数简介

在 pandas 中,aggaggregate 的缩写,意为“聚合”。该函数的主要用途是对数据集进行一系列的聚合操作,比如求和、平均、最大值、最小值等。agg 函数可以用在 DataFrameSeries 对象上,支持多种不同的输入,包括函数、函数名的字符串、函数列表或字典。

2. agg函数的基本用法

示例代码 1: 单个函数聚合

import pandas as pd
import numpy as np

# 创建一个示例 DataFrame
df = pd.DataFrame({
    'A': np.random.rand(5),
    'B': np.random.rand(5),
    'C': np.random.rand(5)
})

# 使用 agg 应用单个聚合函数
result = df.agg(np.sum)
print(result)

示例代码 2: 应用多个聚合函数

import pandas as pd
import numpy as np

df = pd.DataFrame({
    'A': np.random.rand(5),
    'B': np.random.rand(5),
    'C': np.random.rand(5)
})

# 使用 agg 应用多个聚合函数
result = df.agg([np.sum, np.mean, np.std])
print(result)

示例代码 3: 对不同列应用不同的聚合函数

import pandas as pd
import numpy as np

df = pd.DataFrame({
    'A': np.random.rand(5),
    'B': np.random.rand(5),
    'C': np.random.rand(5)
})

# 对不同列应用不同的聚合函数
result = df.agg({'A': np.sum, 'B': np.mean, 'C': np.std})
print(result)

3. 在分组数据上使用agg

agg 函数在与 groupby 结合使用时尤为强大,它可以对分组后的数据执行多种聚合操作。

示例代码 4: 分组后应用单个聚合函数

import pandas as pd
import numpy as np

df = pd.DataFrame({
    'Key': ['A', 'B', 'A', 'B', 'A'],
    'Value': np.random.rand(5),
    'Data': np.random.rand(5)
})

# 分组后应用单个聚合函数
grouped = df.groupby('Key').agg(np.sum)
print(grouped)

示例代码 5: 分组后应用多个聚合函数

import pandas as pd
import numpy as np

df = pd.DataFrame({
    'Key': ['A', 'B', 'A', 'B', 'A'],
    'Value': np.random.rand(5),
    'Data': np.random.rand(5)
})

# 分组后应用多个聚合函数
grouped = df.groupby('Key').agg([np.sum, np.mean])
print(grouped)

示例代码 6: 分组后对不同列应用不同的聚合函数

import pandas as pd
import numpy as np

df = pd.DataFrame({
    'Key': ['A', 'B', 'A', 'B', 'A'],
    'Value': np.random.rand(5),
    'Data': np.random.rand(5)
})

# 分组后对不同列应用不同的聚合函数
grouped = df.groupby('Key').agg({'Value': np.sum, 'Data': np.mean})
print(grouped)

4. 使用自定义函数进行聚合

agg 函数的一个重要特性是它可以接受自定义函数,这为数据分析提供了极大的灵活性。

示例代码 7: 使用自定义函数进行聚合

import pandas as pd
import numpy as np

df = pd.DataFrame({
    'A': np.random.rand(5),
    'B': np.random.rand(5),
    'C': np.random.rand(5)
})

# 定义一个自定义聚合函数
def my_custom_function(x):
    return np.sum(x) * 0.5

# 使用自定义函数进行聚合
result = df.agg(my_custom_function)
print(result)

Output:

pandas agg函数的详细介绍与应用

示例代码 8: 在分组数据上使用自定义函数

import pandas as pd
import numpy as np

df = pd.DataFrame({
    'Key': ['A', 'B', 'A', 'B', 'A'],
    'Value': np.random.rand(5),
    'Data': np.random.rand(5)
})

# 定义一个自定义聚合函数
def my_custom_function(x):
    return np.sum(x) * 0.5

# 使用自定义函数进行聚合
grouped = df.groupby('Key').agg(my_custom_function)
print(grouped)

5. 总结

在本文中,我们详细介绍了 pandas 的 agg 函数,展示了其在单独使用以及与 groupby 结合使用时的多种应用场景。通过这些示例,可以看到 agg 函数在数据处理中的强大功能和灵活性。无论是进行简单的聚合还是复杂的自定义聚合操作,agg 函数都能有效地帮助数据分析师简化代码,提高数据处理效率。

Camera课程

Python教程

Java教程

Web教程

数据库教程

图形图像教程

办公软件教程

Linux教程

计算机教程

大数据教程

开发工具教程