Python Pandas Series.agg()
Python是一种进行数据分析的伟大语言,主要是因为以数据为中心的Python包的奇妙生态系统。Pandas就是这些包中的一个,它使导入和分析数据变得更加容易。
Pandas Series.agg()用于传递一个函数或函数列表,以应用于一个系列,甚至是系列的每个元素。如果是函数列表,agg()方法会返回多个结果。
语法: Series.agg(func, axis=0)
参数:
- func:函数,要在系列中调用的函数列表或函数名称的字符串。
- axis:0或’索引’用于行间操作,1或’列’用于列间操作。
返回类型。返回类型取决于作为参数传递的函数的返回类型。
示例 #1:
在这个例子中,传递了一个lambda函数,它只是在series的每个值上加2。由于该函数将应用于系列的每个值,所以返回类型也是系列。通过传递使用Numpy随机方法生成的数组,产生一个10个元素的随机数列。
# importing pandas module
import pandas as pd
# importing numpy module
import numpy as np
# creating random arr of 10 elements
arr=np.random.randn(10)
# creating series from array
series=pd.Series(arr)
# calling .agg() method
result=series.agg(lambda num : num + 2)
# display
print('Array before operation: \n', series,
'\n\nArray after operation: \n',result)
输出:
如输出中所示,该函数被应用于每个值,并在系列的每个值上加了2。
例子 #2: 传递函数的列表
在这个例子中,一些Python的默认函数的列表被传递,多个结果被agg()方法返回到多个变量。
# importing pandas module
import pandas as pd
# importing numpy module
import numpy as np
# creating random arr of 10 elements
arr=np.random.randn(10)
# creating series from array
series=pd.Series(arr)
# creating list of function names
func_list=[min, max, sorted]
# calling .agg() method
# passing list of functions
result1, result2, result3= series.agg(func_list)
# display
print('Series before operation: \n', series)
print('\nMin = {}\n\nMax = {},\
\n\nSorted Series:\n{}'.format(result1,result2,result3))
输出:
如输出中所示,多个结果被返回。最小值、最大值和排序数组分别返回到不同的变量 result1, result2, result3。