dataframe聚合
时间: 2023-07-06 20:04:27 浏览: 86
DataFrame聚合指的是将一个DataFrame中的数据按照一定的规则进行分组,并对每个分组中的数据进行统计分析。常见的聚合函数包括求和、计数、平均值、中位数、最大值、最小值等等。
Pandas库中提供了多种聚合函数,其中最常用的是`groupby()`函数,它可以根据指定的列名或条件将数据分组,并对每个组中的数据进行聚合操作。例如,下面的代码将一个DataFrame按照`name`列进行分组,并计算每个组中`score`列的平均值:
```python
import pandas as pd
df = pd.DataFrame({'name': ['Alice', 'Bob', 'Charlie', 'Alice', 'Bob'],
'score': [80, 70, 90, 85, 75]})
result = df.groupby('name').mean()
print(result)
```
输出结果为:
```
score
name
Alice 82.5
Bob 72.5
Charlie 90.0
```
除了`mean()`函数,还可以使用其他聚合函数,例如`sum()`、`count()`、`median()`、`max()`、`min()`等等。可以在`groupby()`函数后面直接调用这些函数进行聚合操作。
另外,还可以使用`agg()`函数对每个分组进行不同的聚合操作,例如下面的代码将`score`列按照`name`列进行分组,分别计算每个组中`score`列的和、平均值和中位数:
```python
import pandas as pd
df = pd.DataFrame({'name': ['Alice', 'Bob', 'Charlie', 'Alice', 'Bob'],
'score': [80, 70, 90, 85, 75]})
result = df.groupby('name').agg({'score': ['sum', 'mean', 'median']})
print(result)
```
输出结果为:
```
score
sum mean median
name
Alice 165 82.5 82.5
Bob 145 72.5 72.5
Charlie 90 90.0 90.0
```
可以看到,`agg()`函数可以对每个分组进行不同的聚合操作,并将结果以多级索引的形式返回。
阅读全文