Python 中的 agg() 函数

2024 年 8 月 29 日 | 5 分钟阅读

由于 Python 拥有庞大的数据中心包生态系统,Python 被认为是进行数据分析的优秀编程语言之一。Panda 是 Python 中提供的此类包之一,它使得导入和分析数据变得非常容易。

在本教程中,我们将讨论 Pandas Series 中提供的 agg() 函数,并将其与提供给我们的 Series 数据一起使用。

简介:Pandas agg() 函数

我们使用 Pandas 的 agg() 函数来传递一个或一组要应用于给定数据 Series 或有时甚至单独应用于数据 Series 中每个元素的函数。如果我们向 agg() 函数传递一个函数列表,它将返回多个结果。

语法

在本节中,我们将查看 agg() 方法中需要使用的语法和参数,以及函数的返回类型。

seriesGiven 是程序中提供给我们的数据 Series。

参数

我们必须在 agg() 方法中使用以下参数。

  • Function_name: 我们必须在 agg() 方法中将要应用于数据 Series 的函数、函数列表或函数名称字符串作为参数提供。
  • axis: Axis 的作用类似于为数据 Series 的行定义索引。我们可以将 axis 设置为 0 或提供 'index' 来对数据 Series 执行逐行操作。此外,我们可以在 axis 参数中提供 1 或 'column' 来对数据 Series 执行逐列操作。

返回类型

agg() 方法的返回类型不是固定的,它总是取决于我们作为参数传递给 agg() 方法的函数的返回类型。

使用 agg() 函数

到目前为止,我们已经了解了 Pandas 中提供的 agg() 函数的简介和语法。要了解和理解 agg() 方法的工作原理,我们将在下面的示例中使用此函数。

在 agg() 方法中传递单个函数

在此示例中,我们将使用 numpy 模块创建一个随机数组,然后使用 Pandas 函数将其转换为数据 Series。之后,我们将使用 agg() 函数并在其内部传递一个 lambda 函数,从而它会将 3 添加到 Series 中的每个值。由于我们将函数应用于 Series,因此通过 agg() 函数获得的返回类型也是 Series。现在,让我们通过以下示例来理解此实现。

示例 1: 查看以下 Python 程序

输出

Data series of elements before operation: 
 0    -0.510111
1    -0.732670
2    -0.451550
3    -0.435085
4     0.082848
5    -1.051242
6     0.203565
7    -1.014079
8    -0.232350
9    -0.325640
10    0.528320
11   -1.472293
12   -0.639487
13   -2.490666
14   -0.242837
15    0.854955
16    1.076247
17    1.491347
18   -1.767788
19   -0.205003
dtype: float64 

 Data series of elements after operation: 
 0     2.489889
1     2.267330
2     2.548450
3     2.564915
4     3.082848
5     1.948758
6     3.203565
7     1.985921
8     2.767650
9     2.674360
10    3.528320
11    1.527707
12    2.360513
13    0.509334
14    2.757163
15    3.854955
16    4.076247
17    4.491347
18    1.232212
19    2.794997
dtype: float64    

说明

首先,我们在程序中导入了 pandas 和 numpy 模块以使用其函数。

然后,我们创建了一个包含 20 个元素的数组,这些元素是使用 numpy 模块的 randn() 函数随机生成的。之后,我们使用 panda 模块的 series() 函数将数组转换为 Series 形式。

然后,我们在 Series 上使用了 agg() 函数,并将 lambda 函数作为参数传递给它。我们在 agg() 方法中传递了一个参数,用于将 3 添加到 Series 的每个值。最后,我们在输出中打印了数据 Series(包括执行操作之前和执行操作之后)。

正如我们在输出中看到的,在执行操作后,3 被添加到 Series 的每个值中。

在 agg() 方法中传递函数列表

在此示例中,在创建数据 Series 后,我们将把函数列表作为参数传递给 agg() 函数,而不是传递单个函数参数。当我们向 agg() 方法传递 Python 默认函数的列表作为参数时,它会将多个结果返回到多个变量中。让我们通过以下示例来理解此方法。的实现。

示例 2: 查看以下 Python 程序

输出

 Data Series before operation: 
 0     1.324659
1    -1.632943
2    -0.451046
3    -0.119475
4    -1.476469
5     1.550481
6    -0.345283
7    -0.391220
8     1.183295
9     0.945834
10    0.426908
11   -1.373141
12   -1.360714
13    1.029160
14   -0.305868
15    0.520776
16    0.519891
17    0.581810
18   -0.200537
19    2.175055
dtype: float64
Minimum value in the data series = -1.6329428122607905
Maximum value in the data series = 2.175055294872539,      
Sorted data series after operation:
[-1.6329428122607905, -1.476468968840359, -1.3731412602339488, -1.3607141137838996, -0.45104603430414114, -0.3912204479169106, -0.34528253055365704, -0.3058683242351637, -0.20053665016862435, -0.1194753076622943, 0.4269084920204909, 0.519891496565306, 0.5207757216248261, 0.5818098237803292, 0.9458337130436504, 1.02915996695176, 1.1832945335240084, 1.324659481096391, 1.5504805147479754, 2.175055294872539]

说明

创建数据 Series(与上一个示例相同)后,我们创建了一个包含多个函数名称的列表。在此示例中,我们没有给出单个函数作为参数,而是向 agg() 函数传递了多个默认函数。在将这些函数作为参数传递之后,我们在输出中打印了操作前和操作后的数据 Series。

当我们查看输出时,我们可以看到 agg() 函数返回了多个结果。这是因为我们在其中传递了多个函数作为参数。max()、min() 和 sorted() 分别返回到不同的变量中,即 seriesResult1、seriesResult2 和 seriesResult3。