【Pandas】pandas Series agg

发布于:2025-02-10 ⋅ 阅读:(33) ⋅ 点赞:(0)

Pandas2.2 Series

Function application, GroupBy & window

方法 描述
Series.apply() 用于将一个函数应用到 Series 的每个元素或整个 Series
Series.agg() 用于对 Series 数据进行聚合操作

pandas.Series.agg

pandas.Series.agg(或 pandas.Series.aggregate)是 Pandas 库中 Series 对象的一个方法,用于对 Series 数据进行聚合操作。它可以应用一个或多个聚合函数,并返回聚合后的结果。agg 方法提供了极大的灵活性,可以应用于各种数据汇总和统计任务。

方法签名
Series.agg(func, axis=0, *args, **kwargs)
  • func: 要应用的聚合函数。可以是单个函数、函数列表、字典或字符串表示的函数名。
    • 单个函数:如 sum, mean 等。
    • 函数列表:如 [sum, mean]
    • 字典:键为新的列名,值为要应用的函数。
    • 字符串:如 'sum',表示使用 Pandas 内置的聚合函数。
  • axis: 指定轴,默认为 0,表示沿索引方向进行聚合。
  • *args: 传递给 func 的位置参数。
  • **kwargs: 传递给 func 的关键字参数。
主要特点
  • 多种输入形式:支持单个函数、函数列表、字典和字符串等多种输入形式。
  • 灵活的数据处理:可以同时应用多个聚合函数,生成多列结果。
  • 内置函数支持:可以直接使用 Pandas 提供的内置聚合函数名称作为字符串。
  • 自定义函数支持:可以传递自定义函数进行复杂的聚合操作。
示例及结果
示例1:使用单个聚合函数
import pandas as pd

# 创建一个 Series
s = pd.Series([1, 2, 3, 4, 5])

# 使用 agg 方法应用 sum 函数
result = s.agg('sum')

print("使用单个聚合函数 sum 结果:")
print(result)
输出结果:
使用单个聚合函数 sum 结果:
15

在这个例子中,sum 函数被应用到 Series 上,返回的结果是所有元素的总和。

示例2:使用多个聚合函数
import pandas as pd

# 创建一个 Series
s = pd.Series([1, 2, 3, 4, 5])

# 使用 agg 方法应用多个聚合函数
result = s.agg(['sum', 'mean', 'max'])

print("使用多个聚合函数结果:")
print(result)
输出结果:
使用多个聚合函数结果:
sum     15.0
mean     3.0
max      5.0
dtype: float64

在这个例子中,summeanmax 函数被应用到 Series 上,返回的结果是一个包含多个聚合结果的 Series

示例3:使用字典指定新列名
import pandas as pd

# 创建一个 Series
s = pd.Series([1, 2, 3, 4, 5])

# 使用 agg 方法应用多个聚合函数并指定新列名
result = s.agg({'total': 'sum', 'average': 'mean', 'maximum': 'max'})

print("使用字典指定新列名结果:")
print(result)
输出结果:
使用字典指定新列名结果:
total      15.0
average     3.0
maximum     5.0
dtype: float64

在这个例子中,通过字典指定了每个聚合函数对应的新列名,返回的结果是一个包含多个聚合结果的 Series,并且列名已更改。

示例4:使用自定义函数
import pandas as pd

# 创建一个 Series
s = pd.Series([1, 2, 3, 4, 5])

# 定义一个自定义聚合函数
def custom_agg(x):
    return x.max() - x.min()

# 使用 agg 方法应用自定义聚合函数
result = s.agg(custom_agg)

print("使用自定义函数 custom_agg 结果:")
print(result)
输出结果:
使用自定义函数 custom_agg 结果:
4

在这个例子中,custom_agg 自定义函数被应用到 Series 上,返回的结果是最大值与最小值之差。

总结

pandas.Series.agg 方法在数据分析和处理中非常有用,特别是在需要对 Series 进行多种聚合操作时。它支持多种输入形式、传递额外参数以及处理不同类型的数据,使得数据汇总和统计更加灵活和高效。通过这些示例,可以看到 agg() 方法在不同场景下的应用及其强大功能。


网站公告

今日签到

点亮在社区的每一天
去签到