pandas中聚合函数agg的具体用法
本文详细介绍pandas中DataFrame.agg()聚合函数的使用方法。通过对比numpy聚合函数,解析func参数的多种格式(函数、列表、字典),并演示如何在指定轴上执行单个或不同列的多重聚合操作,包括处理NaN填充的逻辑。
pandas agg函数概述
近期接触到pandas库中的聚合函数agg,该功能在日常数据处理中虽不常使用,但掌握其用法能显著提升效率。为此,本文对agg函数的具体应用进行梳理与总结,旨在帮助读者深入理解并熟练运用这一实用工具。
DataFrame.agg(func, axis=0, *args, **kwargs)
agg函数参数与基本用法
func参数支持多种输入形式:可以是单个函数对象、函数名称字符串、包含多个函数的列表,或是指定列名与对应函数名的字典结构。
该函数的核心作用是在指定的轴(默认为列轴,也可设置为行轴)上执行一个或多个聚合操作。

需要注意的是,agg作为pandas的聚合函数,其操作始终作用于指定的轴,这与numpy中的聚合函数行为有所不同,用户需明确区分两者的适用场景。
常见的numpy聚合函数包括:np.sum()用于求和;np.prod()计算所有元素乘积;np.mean()计算平均值;np.std()计算标准差;np.var()计算方差;np.median()求中位数;np.power()执行幂运算;np.sqrt()开方;np.min()和np.max()分别获取最小值和最大值;np.argmin()和np.argmax()返回最小值和最大值的索引;np.inf表示无穷大;np.exp(10)计算以e为底的指数;np.log(10)计算对数。
agg函数实战示例
以下示例将展示agg函数的具体应用方式。
首先定义一个包含数值的列表数据。
import pandasas pd
df=pd.DataFrame([[1,2,3,4],
[11,22,33,44],
[111,222,333,444],
[1111,2222,3333,4444]
],
columns=['col1','col2','col3','col4'],)#列名
print(df)
接下来演示如何在行维度上对这些数据应用聚合函数。
df_arows=df.agg(['max','min','mean'])列标签为col1、col2、col3、col4。
max值为1111.0、2222.0、3333.0、4444.0。
min值为1.0、2.0、3.0、4.0。
mean值为308.5、617.0、925.5、1234.0。

按列指定不同聚合函数
若需对每列应用不同的聚合函数,可采用字典格式指定。
df_columns=df.agg({'col1':['sum','min'],'col2':['max','min'],'col3':['sum','min']})结果包含列标签col1、col2、col3。
max操作中,col1和col3因未指定max函数而显示为NaN,col2结果为2222.0。
min操作中,col1为1.0,col2为2.0,col3为3.0。
sum操作中,col1为1234.0,col2因未指定sum函数显示为NaN,col3为3702.0。

注意:当某一列未指定特定的聚合函数时,对应结果将使用NaN进行填充。
综上所述。
以上就是关于pandas中聚合函数agg具体用法的详细介绍,更多相关pandas聚合函数agg内容可搜索本站往期文章或继续浏览后续相关文章,希望大家以后多多支持本站!
本站声明
本文内容仅供参考,不代表本站观点。转载或引用请注明出处。如发现内容问题,请通过联系我们页面反馈。













