📅  最后修改于: 2023-12-03 15:18:15.409000             🧑  作者: Mango
Pandas 是一个流行的 Python 数据分析和处理库,提供了丰富的数据结构和函数。其中,最常用的数据结构是数据框,也称为 DataFrame。Pandas 数据框具有便捷的操作和处理方法,如筛选,转换和聚合等。本文将介绍如何使用 Pandas 聚合数据框。
Pandas 提供了多种聚合函数,如最大值、最小值、平均值、中位数、描述性统计等。下面是一些常用的聚合函数:
Pandas 聚合数据框的方法与聚合序列基本一致,不同的是需要指定数据框的轴。默认情况下,DataFrame.aggregate() 函数在列上执行聚合操作,如果需要在行上聚合,需要指定 axis=1。
例如,假设我们有以下数据框:
import pandas as pd
data = {'name': ['Alice', 'Bob', 'Charlie', 'David'],
'age': [25, 30, 35, 40],
'score_1': [90, 80, 70, 60],
'score_2': [95, 85, 75, 65]}
df = pd.DataFrame(data)
我们可以通过如下方式计算 score_1 和 score_2 的总和:
df[['score_1', 'score_2']].sum()
如果需要计算每个人 score_1 和 score_2 的总和,则可以如下操作:
df[['score_1', 'score_2']].sum(axis=1)
我们也可以通过 DataFrame.aggregate() 函数进行聚合操作,例如计算 score_1 和 score_2 的平均值和最大值:
df[['score_1', 'score_2']].aggregate([np.mean, np.max])
其中,np.mean 是平均值函数,np.max 是最大值函数。
Pandas 聚合数据框的另一个常用方式是按照某个列进行分组,然后对每个组进行聚合操作。例如,我们可以按照 age 列进行分组,然后计算 score_1 和 score_2 的平均值和最大值:
df.groupby('age')[['score_1', 'score_2']].aggregate([np.mean, np.max])
此外,我们还可以使用自定义的聚合函数,例如计算某列的标准差:
def calculate_std(column):
return column.std()
df[['score_1', 'score_2']].aggregate([np.mean, calculate_std])
Pandas 聚合数据框是数据处理和分析中的重要步骤,可以帮助我们快速计算和理解数据。本文介绍了 Pandas 聚合数据框常用的聚合函数和分组聚合方法,希望能对大家的数据分析和处理工作有所帮助。