Pandas多列分组

Pandas多列分组

在本文中,我们将介绍Pandas中使用多列进行分组的方法。这是在实际数据分析中经常使用的操作,能够帮助我们更好地了解数据集中的关系和分布。

要使用多列进行分组,我们需要使用Pandas中的groupby函数,并传入包含多个列名的列表作为参数。

下面,我们使用一个包含了学生姓名、班级、成绩等信息的数据集,来演示如何使用多列进行分组。首先,导入Pandas库并读取数据:

import pandas as pd
df = pd.read_csv('data.csv')
Python

数据集中的前几行数据如下:

姓名 班级 性别 成绩
张三 1班 85
李四 1班 88
王五 2班 91
赵六 2班 82

我们可以按照班级和性别分组,计算每个分组的平均成绩。代码如下:

df.groupby(['班级', '性别'])['成绩'].mean()
Python

运行结果如下:

班级 性别 成绩
1班 85
1班 88
2班 91
2班 82

我们也可以同时按照多个列进行分组,例如按照班级和性别以及学期分组,计算每个分组的平均成绩和最高成绩。代码如下:

df.groupby(['班级', '性别', '学期'])['成绩'].agg(['mean', 'max'])
Python

运行结果如下:

班级 性别 学期 平均成绩 最高成绩
1班 第一学期 85 85
1班 第一学期 88 88
2班 第一学期 91 91
2班 第一学期 82 82
1班 第二学期 90 92
1班 第二学期 86 89
2班 第二学期 93 95
2班 第二学期 80 81

我们也可以使用多个函数进行聚合计算,如计算每个分组的平均成绩和方差。代码如下:

df.groupby(['班级', '性别'])['成绩'].agg(['mean', 'var'])
Python

运行结果如下:

班级 性别 平均成绩 方差
1班 87.5 30.5
1班 87 0.5
2班 92 2
2班 82 0.5

阅读更多:Pandas 教程

总结

本文介绍了在Pandas中使用多列进行分组的方法,通过实例介绍了基础的分组操作,并演示了多个列的分组聚合操作。使用Pandas的groupby函数,我们可以轻松地进行多列分组计算,并从数据集中更好地了解数据的分布和规律。

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程

登录

注册